Nothing Special   »   [go: up one dir, main page]

CN106790005A - Realize the live system and methods of low delay HLS - Google Patents

Realize the live system and methods of low delay HLS Download PDF

Info

Publication number
CN106790005A
CN106790005A CN201611143468.1A CN201611143468A CN106790005A CN 106790005 A CN106790005 A CN 106790005A CN 201611143468 A CN201611143468 A CN 201611143468A CN 106790005 A CN106790005 A CN 106790005A
Authority
CN
China
Prior art keywords
live
file
media slicing
hls
media
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201611143468.1A
Other languages
Chinese (zh)
Other versions
CN106790005B (en
Inventor
邹世明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WUHAN FONSVIEW TECHNOLOGY Co Ltd
Original Assignee
WUHAN FONSVIEW TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by WUHAN FONSVIEW TECHNOLOGY Co Ltd filed Critical WUHAN FONSVIEW TECHNOLOGY Co Ltd
Priority to CN201611143468.1A priority Critical patent/CN106790005B/en
Publication of CN106790005A publication Critical patent/CN106790005A/en
Application granted granted Critical
Publication of CN106790005B publication Critical patent/CN106790005B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The invention discloses a kind of system and method for realizing that low delay HLS is live, it is related to field of Internet multimedia.The system includes head end encoder, server and client side, and head end encoder is used to provide the original live source of dynamic renewal;Server is used for head-end encoder and obtains original live source, and dynamic updates index file and dynamically generates some media slicing files in real time, and the index file after renewal and at least three media slicing files since live point forward are output as HLS unicast live sources;Index file and media slicing file are sent in real time, are sent by the way of chunked codings away from a nearest media slicing file of live point;Client is used to parse the index file and media slicing file for receiving, and selects the optional position of one of media slicing file to commence play out.The present invention can overcome the disadvantages that the time delay defect high of traditional HLS live broadcast systems, and time delay is reduced to greatest extent, make HLS live closer to live point.

Description

Realize the live system and methods of low delay HLS
Technical field
The present invention relates to field of Internet multimedia, and in particular to a kind of system and method for realizing that low delay HLS is live.
Background technology
HLS (Http Live Streaming) agreement has many advantages such as simple, self adaptation, is that whole world use is most wide General the Internet transport protocol, HLS direct seeding techniques are even more the every field for being widely used in mobile Internet Streaming Media.But it is relative In common live streaming media agreement, such as RTMP agreements, RTSP agreements, MMS etc., traditional HLS protocol live broadcast system It is not real real time flow medium live broadcast system.In traditional HLS live broadcast systems, server will get from head end encoder Media information cutting be several short and media slicing files of continuous ts forms, constantly update corresponding m3u8 forms Then newest multiple media slicing files are continuously sent to client by index file and newest media slicing file End, these media slicing files of client downloads simultaneously play media data.This technical characterstic of HLS, determines its delay Typically can more than a media slicing file duration, therefore, HLS live time delay can be higher than always that common live streaming media is assisted View.
The content of the invention
The invention aims to overcome the shortcomings of that traditional HLS protocol live broadcast system has time delay high, there is provided Yi Zhongshi Existing low delay HLS live system and method, the system and method can make up the time delay defect high of traditional HLS live broadcast systems, Time delay is reduced to greatest extent, makes HLS live closer to live point.
The present invention provides a kind of system for realizing that low delay HLS is live, and the system includes head end encoder, server and visitor Family end,
The head end encoder is used for:The original live source that dynamic updates is provided;
The server is used for:Head-end encoder obtains original live source, is dynamically updated in real time according to original live source Index file simultaneously dynamically generates some media slicing files, by the index file after renewal and since live point forward at least Three media slicing files are output as HLS unicast live sources;Index file and at least three media point after updating are sent in real time Piece file, is sent away from a nearest media slicing file of live point by the way of block transmission coding;
The client is used for:Index file and media slicing file that parsing is received, and select as needed wherein The optional position of one media slicing file commences play out.
On the basis of above-mentioned technical proposal, the original live source is UDP UDP multicast live sources;Institute Stating server includes the first conversion network element, and the first conversion network element is used for:
Head-end encoder obtains UDP multicast live sources, and dynamically index file is updated simultaneously in real time according to UDP multicasts live source The some media slicing files of dynamic generation, by the index file after renewal and at least three media minute since live point forward Piece file is output as HLS unicast live sources;When client request plays live, opened by the index file after renewal and from live point At least three media slicing files for beginning forward are sent to client in real time, at least three media minute since live point forward In piece file, sent by the way of block transmission coding away from a nearest media slicing file of live point.
On the basis of above-mentioned technical proposal, the original live source is HLS unicast live sources;The server includes the One storage network element, the first storage network element is used for:
Head-end encoder obtains HLS unicast live sources, and dynamically index file is updated simultaneously in real time according to HLS unicasts live source The some media slicing files of dynamic generation, by the index file after renewal and at least three media minute since live point forward Piece file is recorded and is stored as local index file and local media slicing files, by local index file and local media Slicing files are output as local HLS unicasts live source, and the total number of the local media slicing files >=described is opened from live point The total number of at least three media slicing files for beginning forward;When client request plays live, by local index file and originally Ground media slicing file is sent to client in real time, in local media slicing files, a nearest media slicing away from live point File is sent by the way of block transmission coding.
On the basis of above-mentioned technical proposal, the original live source is UDP multicast live sources;The server includes the Two conversion network elements and the second storage network element, wherein,
The second conversion network element is used for:Head-end encoder obtains UDP multicast live sources, according to UDP multicast live sources Dynamic updates index file and dynamically generates some media slicing files in real time, is opened by the index file after renewal and from live point At least three media slicing files for beginning forward are output as HLS unicast live sources;The second storage network element request records live When, the index file after renewal and at least three media slicing files since live point forward are sent to the second storage net Unit, is sent away from a nearest media slicing file of live point by the way of block transmission coding;
The second storage network element is used for:Record live to the second conversion network element request, the second conversion network element is sent Index file and media slicing file are recorded and are stored as local index file and local media slicing files, described local The total number of the total number of media slicing file >=at least three media slicing files since live point forward;To this Ground index file and local media slicing files are sent to client in real time, nearest away from live point in local media slicing files A media slicing file using block transmission coding by the way of send.
On the basis of above-mentioned technical proposal, a media slicing file nearest away from live point is generated One media slicing file, in addition to away from a nearest media slicing file of live point, remaining media slicing that server sends File is the media slicing file for having generated;The server is additionally operable to:The media slicing file for having generated is adopted The mode encoded with non-block transmission sends.
The present invention provides a kind of method for realizing that low delay HLS is live for being applied to said system, comprises the following steps:
The head end encoder provides the original live source that dynamic updates;
The server head-end encoder obtains original live source, and index text is dynamically updated in real time according to original live source Part simultaneously dynamically generates some media slicing files, by the index file after renewal and at least three matchmakers since live point forward Body slicing files are output as HLS unicast live sources;Index file and at least three media slicing files after updating are sent in real time, Sent by the way of block transmission coding away from a nearest media slicing file of live point;
Index file and media slicing file that the client parsing is received, and one of matchmaker is selected as needed The optional position of body slicing files commences play out.
On the basis of above-mentioned technical proposal, the original live source is UDP UDP multicast live sources;Institute State server and send the index file after updating and at least three media slicings since live point forward in real time to client File, since at least three media slicing files live point forward, a nearest media slicing file away from live point Sent by the way of block transmission coding.
On the basis of above-mentioned technical proposal, the original live source is HLS unicast live sources;The server head-end Encoder obtains HLS unicast live sources, dynamically updates index file in real time according to HLS unicasts live source and dynamically generates some matchmakers Body slicing files, the index file after renewal and at least three media slicing files since live point forward are recorded And local index file and local media slicing files are stored as, local index file and local media slicing files are output as Local HLS unicast live sources, the total number of the local media slicing files >=described since live point forward at least three The total number of individual media slicing file;Send local index file and local media slicing files, local matchmaker in real time to client In body slicing files, sent by the way of block transmission coding away from a nearest media slicing file of live point.
On the basis of above-mentioned technical proposal, the original live source is UDP multicast live sources;The server includes the Two conversion network elements and the second storage network element, the second conversion network element head-end encoder obtain UDP multicast live sources, according to UDP multicasts live source dynamically updates index file and dynamically generates some media slicing files in real time, by the index text after renewal Part and at least three media slicing files since live point forward are output as HLS unicast live sources;The second storage net When unit's request records live, second changes network element by the index file after renewal and at least three matchmakers since live point forward Body slicing files are sent to the second storage network element, away from a nearest media slicing file of live point using block transmission coding Mode sends;
The second storage network element records live to the second conversion network element request, the index text that the second conversion network element is sent Part and media slicing file are recorded and are stored as local index file and local media slicing files, the local media point The total number of the total number of piece file >=at least three media slicing files since live point forward;Give client reality When send local index file and local media slicing files, in local media slicing files, a nearest matchmaker away from live point Body slicing files are sent by the way of block transmission coding.
On the basis of above-mentioned technical proposal, a media slicing file nearest away from live point is generated One media slicing file, in addition to away from a nearest media slicing file of live point, remaining media slicing that server sends File is the media slicing file for having generated;The media slicing file for having generated is using non-block transmission coding Mode sends.
Compared with prior art, advantages of the present invention is as follows:
(1) server in the present invention will be encoded away from a nearest media slicing file of live point using block transmission The mode of (Chunked transfer encoding, chunked coding) is sent to client, away from nearest one of live point Media slicing file is the media slicing file generated in server.The media slicing file that will generating carries out piecemeal The mode for transmitting coding sends, and without being to wait for just being sent after media slicing file has all been generated, can add to greatest extent Fast live newest media slicing file reaches the timeliness of client, the time delay of 2~5s of most multipotency reduction.
(2) present invention can take the media slicing file for having generated away from live point farther out non-chunked to encode Mode send, so as to reduce the coding and decoding time.The present invention can make up the time delay defect high of traditional HLS live broadcast systems, Time delay is reduced to greatest extent, makes HLS live closer to live point.
Brief description of the drawings
Fig. 1 is to realize the topology diagram of low delay HLS live broadcast systems in the embodiment of the present invention 3;
Fig. 2 is to realize the flow chart of low delay HLS live broadcasting methods in the embodiment of the present invention 3;
Fig. 3 be the embodiment of the present invention 3 in UDP multicasts switch to the live schematic diagram of HLS unicasts;
Fig. 4 is server recording and the live schematic diagrames of storage HLS in the embodiment of the present invention 3;
Fig. 5 is the live schematic diagram of client terminal playing HLS unicasts in the embodiment of the present invention 3.
Specific embodiment
Below in conjunction with the accompanying drawings and specific embodiment the present invention is described in further detail.In order to describe simplicity, this hair In bright embodiment, the index file of m3u8 forms is referred to as m3u8 files, the main m3u8 files of m3u8 forms referred to as based on M3u8 files, the subindex file of m3u8 forms is referred to as sub- m3u8 files;The media slicing file of ts forms is referred to as Ts bursts;Block transmission coding is referred to as chunked codings.Alleged live point is referred to currently in the embodiment of the present invention Time point corresponding to live picture.
Embodiment 1:
The present embodiment provides a kind of system for realizing that low delay HLS is live, the system include head end encoder, server and Client, server includes the first conversion network element;
Head end encoder is used for:The UDP UDP multicast live sources that dynamic updates are provided;
First conversion network element is used to for UDP multicast live sources to be converted to HLS unicast live sources, and detailed process is:Head-end Encoder obtains UDP multicast live sources, dynamically updates m3u8 files in real time according to UDP multicasts live source and dynamically generates some ts Burst, retains and starts at least three ts bursts forward since live point, by the m3u8 files after renewal and since live putting to At least three preceding ts bursts are output as exporting HLS unicast live sources;Client is live to the first conversion network element request HLS unicasts During source, m3u8 files and at least three ts bursts since live point forward are sent to client in real time, wherein, away from live A nearest ts burst for generating of point is sent by the way of chunked codings;Remaining generated at least two Individual ts bursts can be sent using chunked codings or non-chunked coded systems;
Client is used for:To the first conversion network element request HLS unicast live sources, parsing m3u8 files and since live point At least three ts bursts forward, and select the optional position of one of ts bursts to commence play out as needed.
The present embodiment provides a kind of method for realizing that low delay HLS is live for being applied to said system, comprises the following steps:
Head end encoder provides the UDP multicast live sources that dynamic updates, and the first conversion network element head-end encoder obtains UDP Multicast live source, dynamically updates and m3u8 files and dynamically generates some ts bursts in real time according to UDP multicasts live source, and reservation is from straight A beginning at least three ts burst forward is broadcast, by the m3u8 files after renewal and at least three ts since live point forward Burst is output as exporting HLS unicast live sources;
, to the first conversion network element request HLS unicast live sources, the first conversion network element is by m3u8 files and from live for client Point starts at least three ts bursts forward and is sent to client in real time, wherein, generated away from nearest one of live point Ts bursts are sent by the way of chunked codings;At least two ts bursts that remaining has been generated can use chunked Coding or non-chunked coded systems send;
Client parses m3u8 files and at least three ts bursts since live point forward, and selects it as needed In the optional position of a ts burst commence play out.
Embodiment 2:
The present embodiment provides second and realizes the live systems of low delay HLS, and the system includes head end encoder, server And client, server include first storage network element;
Head end encoder is used for:The HLS unicast live sources that dynamic updates are provided;
First storage network element is used for:Head-end encoder obtains HLS unicast live sources, is generated according to HLS unicasts live source M3u8 files that dynamic updates simultaneously dynamically generate some ts bursts, by the index file after renewal and since live putting forward At least three media slicing files are recorded and are stored as local m3u8 files and local ts bursts, by local m3u8 files and Local ts bursts are output as local HLS unicasts live source;Client asks local HLS unicasts live source to the first storage network element When, local m3u8 files and local ts bursts are sent to client in real time, the local ts bursts number of transmission >=from live point Start at least three ts burst numbers forward;In local ts bursts, a nearest ts burst for generating away from live point Sent by the way of chunked codings;The local ts bursts that remaining has been generated can be using chunked codings or non- Chunked coded systems send;
Client is used for:Local HLS unicasts live source is asked to the first storage network element, local m3u8 files and local are parsed Ts bursts, and select the optional position of one of ts bursts to commence play out as needed.
A kind of method for realizing that low delay HLS is live for being applied to above-mentioned second system of the present embodiment offer, including with Lower step:
Head end encoder provides the HLS unicast live sources that dynamic updates;
First storage network element head-end encoder obtains HLS unicast live sources, according to HLS unicasts live source generation dynamic more New m3u8 files simultaneously dynamically generate some ts bursts, by the index file after renewal and since live point forward at least three Individual media slicing file is recorded and is stored as local m3u8 files and local ts bursts, by local m3u8 files and local ts Burst is output as local HLS unicasts live source;When client asks local HLS unicasts live source to the first storage network element, incite somebody to action this Ground m3u8 files and local ts bursts are sent to client in real time, and the local ts bursts number of transmission >=since live point is forward At least three ts burst numbers;In local ts bursts, away from live point, a nearest ts burst for generating is used The mode of chunked codings sends;The local ts bursts that remaining has been generated can be using chunked codings or non- Chunked coded systems send;
Client parses local m3u8 files and local ts bursts, and selects any of one of ts bursts as needed Position commences play out.
Embodiment 3:
Shown in Figure 1, the present embodiment provides the third and realizes the live systems of low delay HLS, and the system includes head end Encoder, server and client side, server include the second conversion network element and the second storage network element, the second conversion network element and second Storage network element is provided with chunked encoding functions, and client possesses chunked decoding functions;
Second conversion network element is used for:Head-end encoder obtains UDP multicast live sources, real-time according to UDP multicast live sources Dynamic updates and m3u8 files and dynamically generates some ts bursts, by the m3u8 files after renewal and since live putting forward to Few three ts bursts are output as HLS unicast live sources;When second storage network element request records live, by the m3u8 files after renewal The second storage network element is sent to at least three ts bursts forward since live point, is given birth to away from nearest one of live point Into ts bursts using chunked coding by the way of send;The ts bursts that remaining has been generated can be encoded using chunked Or non-chunked coded systems send;
Second storage network element is used for:Record live to the second conversion network element request, the m3u8 that the second conversion network element is sent File and ts bursts are recorded and are stored as local m3u8 files and local ts bursts, and the total number of local ts bursts >=from straight Broadcast a total number for beginning at least three ts bursts forward;Local m3u8 files and local ts bursts are sent to client in real time End, in local ts bursts, is sent away from a nearest ts burst for generating of live point by the way of chunked codings; The local ts bursts that remaining has been generated can be sent using chunked codings or non-chunked coded systems;
Client is used for:Local HLS unicasts live source is asked to the first storage network element, local m3u8 files and local are parsed Ts bursts, and select the optional position of one of ts bursts to commence play out as needed.
Second conversion network element, the second storage network element and client include a main m3u8 file and some ts bursts;It is main When m3u8 files include multiple code checks, each main m3u8 file includes that the unification of the sub- m3u8 file equal with code check number is determined Bit identifier url, every sub- m3u8 file includes the url of multiple ts bursts.
It is shown in Figure 2, the present embodiment provide it is a kind of be applied to above-mentioned the third system realize that low delay HLS is live Method, comprises the following steps:
S1, head end encoder provide the UDP multicast live sources that dynamic updates;By taking two kinds of code checks as an example, head end encoder is carried The multicast address of the UDP multicast live sources of confession is respectively:udp://224.11.11.10:12306 and udp:// 224.11.11.11:12306;The former is the first code check multicast address, and the latter is the second code check multicast address;
S2, server include the second conversion network element and the second storage network element, and the second conversion network element head-end encoder is obtained UDP multicast live sources, m3u8 files are dynamically updated according to UDP multicasts live source and some ts bursts are dynamically generated in real time, will more M3u8 files after new and at least three ts bursts since live point forward are output as HLS unicast live sources, so as to realize Conversion of the UDP multicasts live source to HLS unicast live sources;M3u8 files after renewal include main m3u8 files and two sub- m3u8 File;
The detailed process that UDP multicast live sources are transformed into HLS unicast live sources is shown in Figure 3, server 10:00 adds Two UDP multicasts are live and receiving multicast data, generate a main m3u8 files main.m3u8 and corresponding sub- m3u8 files 1.m3u8 and 2.m3u8;Then multicast packet is cut into slices in units of 10s, the second conversion network element internal memory only retains to include works as Newest three ts bursts 1_1.ts, 1_2.ts, 1_3.ts and 2_1.ts of preceding ts bursts, wherein 2_2.ts, 2_3.ts, 1_3.ts It is the ts bursts that are currently generating with 2_3.ts, that is, a ts burst nearest apart from live point;Sub- m3u8 files In 1.m3u8 include tri- url of ts bursts of 1_1.ts, 1_2.ts, 1_3.ts, in sub- m3u8 files 2.m3u8 comprising 2_1.ts, Tri- url of ts bursts of 2_2.ts, 2_3.ts.
Server second change network element by UDP multicasts it is live be converted to HLS unicasts it is live after main m3u8 files url be http://172.16.0.129:9001/main.m3u8, corresponding two sub- m3u8 files url are respectively:http:// 172.16.0.191:9001/1.m3u8;And http://172.16.0.191:9002/2.m3u8, specific example is as follows:
Main m3u8 file examples are as follows:
GET/main.m3u8HTTP/1.1
Range:Bytes=0-
User-Agent:CDN/1.0
Via:172.16.0.161
Host:172.16.0.129:9001
Connection:close
HTTP/1.1 200OK
Content-Type:application/vnd.apple.mpegurl
Content-Length:174
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=706428
http://172.16.0.129:9001/1.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=2166662
http://172.16.0.129:9001/2.m3u8
The example of the sub- m3u8 files of entitled 1.m3u8 is as follows:
GET/1.m3u8HTTP/1.1
Range:Bytes=0-
User-Agent:CDN/1.0
Via:172.16.0.161
Host:172.16.0.129:9001
Connection:Keep-Alive
HTTP/1.1 200OK
Content-Type:application/vnd.apple.mpegurl
Content-Length:381
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:5507313
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:15Z
#EXTINF:10,
http://172.16.0.130:9001/1_5507313.ts
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:25Z
#EXTINF:10,
http://172.16.0.129:9001/1_5507314.ts
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:35Z
#EXTINF:10,
http://172.16.0.130:9001/1_5507315.ts
The example of the sub- m3u8 files of entitled 2.m3u8 is as follows:
GET/2.m3u8HTTP/1.1
Range:Bytes=0-
User-Agent:CDN/1.0
Via:172.16.0.161
Host:172.16.0.129:9001
Connection:Keep-Alive
HTTP/1.1 200OK
Content-Type:application/vnd.apple.mpegurl
Content-Length:381
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:5507315
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:25Z
#EXTINF:10,
http://172.16.0.130:9001/2_5507315.ts
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:35Z
#EXTINF:10,
http://172.16.0.129:9001/2_5507316.ts
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:45Z
#EXTINF:10,
http://172.16.0.130:9001/2_5507317.ts
When second storage network element request records live, the second conversion network element is opened by the m3u8 files after renewal and from live point At least three ts bursts for beginning forward are sent to the second storage network element, and away from live point, a nearest ts burst uses chunked The mode of coding sends;
The m3u8 files and ts bursts that S3, the second storage network element send the second conversion network element are recorded and are stored as this Ground m3u8 files and local ts bursts, at least three ts bursts of the total number of local ts bursts >=since live point forward Total number;
Shown in Figure 4, the storage network element of server second is received and stores the mistake of m3u8 files and ts bursts after conversion Cheng Wei:Second storage network element to be received and generate itself corresponding m3u8 file after the data of the second conversion network element and storage is local, Coded system according to the second conversion network element is decoded to data and is stored as local m3u8 files and local ts bursts;Locally M3u8 files include main m3u8 files and two sub- m3u8 files;
The main m3u8 files and sub- m3u8 file examples of the storage network element storage of server second are as follows:
Main m3u8 file examples are as follows:
GET/fonsview_hls/hls_001FvSeid=54e014f36b515f46&Fsv_filetype=0& Fsv_ctype=LIVES&Fsv_cid=1003
&Fsv_chan_hls_se_idx=0&Fsv_TBt=2874144&Fsv_ShiftEnable=1 &Fsv_ ShiftTsp=1&Fsv_SV_PARAM1=0&Fsv_otype=0
&Provider_id=fonsview_hls&Pcontent_id=hls_001HTTP/1.1
Host:172.16.0.161:8114
User-Agent:VLC/2.2.4LibVLC/2.2.4
Range:Bytes=0-
Connection:close
Icy-MetaData:1
HTTP/1.1 200OK
Server:FonsView SS/1.0
Date:Thu,29Sep 2016 02:07:53GMT
Content-Type:application/vnd.apple.mpegurl
Cache-Control:no-cache
Pragma:no-cache
Accept-Ranges:bytes
Content-Length:628
Content-Range:bytes 0-627/628
Connection:close
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1003, BANDWIDTH=2167715
http://172.16.0.161:8114/fonsview_hls/hls_001FvSeid= 54e014f36b515f46&Fsv_filetype=1&Fsv_ctype=LIVES
&Fsv_cid=1003&Fsv_chan_hls_se_idx=0&Fsv_rate_id=0&Fsv_SV _ PARAM1= 0&Fsv_ShiftEnable=1&Fsv_ShiftTsp=1&
Provider_id=fonsview_hls&Pcontent_id=hls_001&Fsv_otype=0
#EXT-X-STREAM-INF:PROGRAM-ID=1003, BANDWIDTH=706428
http://172.16.0.161:8114/fonsview_hls/hls_001FvSeid= 54e014f36b515f46&Fsv_filetype=1&Fsv_ctype=LIVES
&Fsv_cid=1003&Fsv_chan_hls_se_idx=0&Fsv_rate_id=1&Fsv_SV _ PARAM1= 0&Fsv_ShiftEnable=1&Fsv_ShiftTsp=1
&Provider_id=fonsview_hls&Pcontent_id=hls_001&Fsv_otype=0
The corresponding sub- m3u8 file examples comprising last three ts bursts url of wherein the first code check are as follows:
GET/fonsview_hls/hls_001FvSeid=54e014f36b515f46&Fsv_filetype=1& Fsv_ctype=LIVES&Fsv_cid=1003
&Fsv_chan_hls_se_idx=0&Fsv_rate_id=0&Fsv_SV_PARAM1=0&Fsv _ ShiftEnable=1&Fsv_ShiftTsp=1
&Provider_id=fonsview_hls&Pcontent_id=hls_001&Fsv_otype=0HTTP/1.1
Host:172.16.0.161:8114
User-Agent:VLC/2.2.4LibVLC/2.2.4
Range:Bytes=0-
Connection:close
Icy-MetaData:1
HTTP/1.1 200 OK
Server:FonsView SS/1.0
Date:Thu,29 Sep 2016 02:07:53 GMT
Content-Type:application/vnd.apple.mpegurl
Cache-Control:no-cache
Pragma:no-cache
Accept-Ranges:bytes
Content-Length:2976
Content-Range:bytes 0-2975/2976
Connection:close
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:5507304
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:15Z
#EXTINF:10,883036
http://172.16.0.161:8114/LIVES/1475114775_0010000028_0000000005.ts FvSeid=54e014f36b515f46
&Fsv_filetype=2&Provider_id=fonsview_hls&Pcontent_id=hls _ 001&Fsv_ Sd=10&Fsv_otype=0
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:25Z
#EXTINF:10,883036
http://172.16.0.161:8114/LIVES/1475114785_0010000028_0000000006.ts FvSeid=54e014f36b515f46
&Fsv_filetype=2&Provider_id=fonsview_hls&Pcontent_id=hls _ 001&Fsv_ Sd=10&Fsv_otype=0
#EXT-X-PROGRAM-DATE-TIME:2016-09-29T02:06:35Z
#EXTINF:10,881720
http://172.16.0.161:8114/LIVES/1475114795_0010000028_0000000007.ts FvSeid=54e014f36b515f46
&Fsv_filetype=2&Provider_id=fonsview_hls&Pcontent_id=hls _ 001&Fsv_ Sd=10&Fsv_otype=0
Second storage network element sends local m3u8 files and local ts bursts to client in real time, in local ts bursts, away from A nearest ts burst of live point is sent by the way of chunked codings;
S4, client parsing local m3u8 files and local ts bursts, and one of ts bursts are selected as needed Optional position commences play out, and detailed process is as follows:
As shown in figure 5, user end to server is sent out live request, the second storage network element will the current newest several ts for recording Burst is sent to client, and the number of newest several ts bursts can be 12 herein;
Second storage network element selects different coded systems to send media information to visitor according to the recording situation of current slice Family end:Ts burst 1475114785_0000000028_0000000007.ts data for recording carry out chunked volumes Code simultaneously sends data to client, and other ts bursts can be sent using chunked codings or non-chunked coded systems; Client parses local m3u8 files and local ts bursts, and the optional position of one of ts bursts is selected according to network condition Commence play out.
Those skilled in the art can carry out various modifications and variations to the embodiment of the present invention, if these modifications and change Within the scope of the claims in the present invention and its equivalent technologies, then these modifications and modification are also in protection scope of the present invention for type Within.
In the prior art that the content not described in detail in specification is known to the skilled person.

Claims (10)

1. a kind of system for realizing that low delay HLS is live, the system includes head end encoder, server and client side, its feature It is:
The head end encoder is used for:The original live source that dynamic updates is provided;
The server is used for:Head-end encoder obtains original live source, and index is dynamically updated in real time according to original live source File simultaneously dynamically generates some media slicing files, by the index file after renewal and since it is live point forward at least three Media slicing file is output as HLS unicast live sources;Index file and at least three the media slicings text after updating are sent in real time Part, is sent away from a nearest media slicing file of live point by the way of block transmission coding;
The client is used for:Index file and media slicing file that parsing is received, and one of them is selected as needed The optional position of media slicing file commences play out.
2. the live systems of low delay HLS are realized as claimed in claim 1, it is characterised in that:The original live source is use User data datagram protocol UDP multicast live sources;The server includes the first conversion network element, and the first conversion network element is used for:
Head-end encoder obtains UDP multicast live sources, dynamically updates index file in real time according to UDP multicasts live source simultaneously dynamic Some media slicing files are generated, by the index file after renewal and at least three media slicings text since live point forward Part is output as HLS unicast live sources;Client request play it is live when, by the index file after renewal and since it is live point to At least three preceding media slicing files are sent to client in real time, at least three media slicings text since live point forward In part, sent by the way of block transmission coding away from a nearest media slicing file of live point.
3. the live systems of low delay HLS are realized as claimed in claim 1, it is characterised in that:The original live source is HLS Unicast live source;The server includes the first storage network element, and the first storage network element is used for:
Head-end encoder obtains HLS unicast live sources, dynamically updates index file in real time according to HLS unicasts live source simultaneously dynamic Some media slicing files are generated, by the index file after renewal and at least three media slicings text since live point forward Part is recorded and is stored as local index file and local media slicing files, by local index file and local media burst File is output as local HLS unicasts live source, the total number of the local media slicing files >=described since live point to The total number of at least three preceding media slicing files;When client request plays live, by local index file and local matchmaker Body slicing files are sent to client in real time, in local media slicing files, a nearest media slicing file away from live point Sent by the way of block transmission coding.
4. the live systems of low delay HLS are realized as claimed in claim 1, it is characterised in that:The original live source is UDP Multicast live source;The server includes the second conversion network element and the second storage network element, wherein,
The second conversion network element is used for:Head-end encoder obtains UDP multicast live sources, real-time according to UDP multicast live sources Dynamic updates and index file and dynamically generates some media slicing files, by the index file after renewal and since live putting to At least three preceding media slicing files are output as HLS unicast live sources;When the second storage network element request records live, will Index file after renewal and at least three media slicing files since live point forward are sent to the second storage network element, away from A nearest media slicing file of live point is sent by the way of block transmission coding;
The second storage network element is used for:Record live to the second conversion network element request, the index that the second conversion network element is sent File and media slicing file are recorded and are stored as local index file and local media slicing files, the local media The total number of the total number of slicing files >=at least three media slicing files since live point forward;By local rope Quotation part and local media slicing files are sent to client in real time, in local media slicing files, away from live point it is nearest one Individual media slicing file is sent by the way of block transmission coding.
5. the live systems of low delay HLS are realized as claimed in claim 1, it is characterised in that:It is described nearest away from live point One media slicing file is the media slicing file for generating, except a media slicing file nearest away from live point Outward, remaining media slicing file that server sends is the media slicing file for having generated;The server is additionally operable to:Institute The media slicing file for having generated is stated to be sent by the way of non-block transmission coding.
6. a kind of method for realizing that low delay HLS is live for being applied to system as claimed in claim 1, it is characterised in that including Following steps:
The head end encoder provides the original live source that dynamic updates;
The server head-end encoder obtains original live source, and dynamically index file is updated simultaneously in real time according to original live source The some media slicing files of dynamic generation, by the index file after renewal and at least three media minute since live point forward Piece file is output as HLS unicast live sources;Index file and at least three media slicing files after updating are sent in real time, away from straight An a little nearest media slicing file is broadcast to be sent by the way of block transmission coding;
Index file and media slicing file that the client parsing is received, and one of media point are selected as needed The optional position of piece file commences play out.
7. the live methods of low delay HLS are realized as claimed in claim 6, it is characterised in that:The original live source is use User data datagram protocol UDP multicast live sources;The server sends the index file after updating to client and from live in real time Point starts at least three media slicing files forward, since at least three media slicing files live point forward, away from A nearest media slicing file of live point is sent by the way of block transmission coding.
8. the live methods of low delay HLS are realized as claimed in claim 6, it is characterised in that:The original live source is HLS Unicast live source;The server head-end encoder obtains HLS unicast live sources, dynamic in real time according to HLS unicasts live source Update and index file and dynamically generate some media slicing files, by the index file after renewal and since live the putting forward At least three media slicing files are recorded and are stored as local index file and local media slicing files, by local index File and local media slicing files are output as local HLS unicasts live source, and the total number of the local media slicing files >= The total number of at least three media slicing files since live point forward;Send local index text in real time to client Part and local media slicing files, in local media slicing files, the nearest media slicing file use minute away from live point The mode of block transmission coding sends.
9. the live methods of low delay HLS are realized as claimed in claim 6, it is characterised in that:The original live source is UDP Multicast live source;The server includes the second conversion network element and the second storage network element, and the second conversion network element head-end is compiled Code device obtains UDP multicast live sources, dynamically updates index file in real time according to UDP multicasts live source and dynamically generates some media Slicing files, HLS is output as by the index file after renewal and at least three media slicing files since live point forward Unicast live source;It is described second storage network element request record it is live when, second conversion network element by the index file after renewal and from At least three media slicing files that live point starts forward are sent to the second storage network element, a nearest media away from live point Slicing files are sent by the way of block transmission coding;
It is described second storage network element to second conversion network element request record it is live, by second conversion network element send index file and Media slicing file is recorded and is stored as local index file and local media slicing files, the local media burst text The total number of the total number of part >=at least three media slicing files since live point forward;Sent out in real time to client Local index file and local media slicing files are sent, in local media slicing files, a nearest media minute away from live point Piece file is sent by the way of block transmission coding.
10. the live methods of low delay HLS are realized as claimed in claim 6, it is characterised in that:It is described nearest away from live point One media slicing file is the media slicing file for generating, except a media slicing file nearest away from live point Outward, remaining media slicing file that server sends is the media slicing file for having generated;The media for having generated Slicing files are sent by the way of non-block transmission coding.
CN201611143468.1A 2016-12-13 2016-12-13 Realize the system and method for low delay HLS live streaming Active CN106790005B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611143468.1A CN106790005B (en) 2016-12-13 2016-12-13 Realize the system and method for low delay HLS live streaming

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611143468.1A CN106790005B (en) 2016-12-13 2016-12-13 Realize the system and method for low delay HLS live streaming

Publications (2)

Publication Number Publication Date
CN106790005A true CN106790005A (en) 2017-05-31
CN106790005B CN106790005B (en) 2019-09-17

Family

ID=58880579

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611143468.1A Active CN106790005B (en) 2016-12-13 2016-12-13 Realize the system and method for low delay HLS live streaming

Country Status (1)

Country Link
CN (1) CN106790005B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135400A (en) * 2017-06-12 2017-09-05 上海高顿教育培训有限公司 A kind of method for reducing network direct broadcasting delay
CN108540868A (en) * 2018-05-16 2018-09-14 北京百度网讯科技有限公司 Processing method, device, server, terminal and the storage medium of HLS live streamings
CN109151614A (en) * 2017-06-19 2019-01-04 中兴通讯股份有限公司 A kind of method and device reducing the delay of HLS live play
CN110324727A (en) * 2019-07-16 2019-10-11 浙江大华技术股份有限公司 Computer readable storage medium, server and its method for responding playing request
WO2021135053A1 (en) * 2020-01-02 2021-07-08 山东云缦智能科技有限公司 Method for realizing automatic main-standby switching of cmaf live broadcast source
US11622164B2 (en) 2019-07-12 2023-04-04 Carrier Corporation System and method for streaming video/s

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102232298A (en) * 2011-04-07 2011-11-02 华为技术有限公司 Method, device and system for transmitting and processing media content
CN102801690A (en) * 2011-05-25 2012-11-28 华为技术有限公司 Stream media processing method, distribution server, client and system
CN103686202A (en) * 2012-09-18 2014-03-26 中兴通讯股份有限公司 Real-time transcoding transmitting method and system based on HTTP (Hyper Text Transport Protocol) under DLNA (Digital Living Network Alliance)

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102232298A (en) * 2011-04-07 2011-11-02 华为技术有限公司 Method, device and system for transmitting and processing media content
CN102801690A (en) * 2011-05-25 2012-11-28 华为技术有限公司 Stream media processing method, distribution server, client and system
CN103686202A (en) * 2012-09-18 2014-03-26 中兴通讯股份有限公司 Real-time transcoding transmitting method and system based on HTTP (Hyper Text Transport Protocol) under DLNA (Digital Living Network Alliance)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135400A (en) * 2017-06-12 2017-09-05 上海高顿教育培训有限公司 A kind of method for reducing network direct broadcasting delay
CN109151614A (en) * 2017-06-19 2019-01-04 中兴通讯股份有限公司 A kind of method and device reducing the delay of HLS live play
CN108540868A (en) * 2018-05-16 2018-09-14 北京百度网讯科技有限公司 Processing method, device, server, terminal and the storage medium of HLS live streamings
CN108540868B (en) * 2018-05-16 2019-04-16 北京百度网讯科技有限公司 Processing method, device, server, terminal and the storage medium of HLS live streaming
US11622164B2 (en) 2019-07-12 2023-04-04 Carrier Corporation System and method for streaming video/s
CN110324727A (en) * 2019-07-16 2019-10-11 浙江大华技术股份有限公司 Computer readable storage medium, server and its method for responding playing request
US11849157B2 (en) 2019-07-16 2023-12-19 Zhejiang Dahua Technology Co., Ltd. Systems and methods for live streaming
WO2021135053A1 (en) * 2020-01-02 2021-07-08 山东云缦智能科技有限公司 Method for realizing automatic main-standby switching of cmaf live broadcast source

Also Published As

Publication number Publication date
CN106790005B (en) 2019-09-17

Similar Documents

Publication Publication Date Title
CN106790005B (en) Realize the system and method for low delay HLS live streaming
CN107743703B (en) Method, apparatus and computer-readable storage medium for media data transmission
EP3311586B1 (en) Signaling cached segments for broadcast
JP6612249B2 (en) Targeted ad insertion for streaming media data
EP1897326B1 (en) Transport mechanisms for dynamic rich media scenes
JP6698553B2 (en) Request for multiple chunks to a network node based on one request message
CN103518351B (en) Use the IP broadcast streaming services distribution of file delivery method
KR100809654B1 (en) Conveying parameters for broadcast/multicast sessions via a communication protocol
CN106233735B (en) Method for managing multicast video transmission
US20160337424A1 (en) Transferring media data using a websocket subprotocol
KR20160106618A (en) Content delivery
CN104737518B (en) The system and method for indicating and transmitting for data
CN107948762B (en) Live video transmission method, device and system
Walker et al. ROUTE/DASH IP streaming-based system for delivery of broadcast, broadband, and hybrid services
CN104040993A (en) Method for sending respectively receiving media stream
WO2013078620A1 (en) Method, device and system for delivering live telecast content
TW201828709A (en) Detecting and signaling new initialization segments during manifest-file-free media streaming
Kumar et al. QoE evaluation for video streaming over eMBMS
KR20160138044A (en) Targeted advertisement insertion for streaming media data
WO2016209727A1 (en) Reporting media consumption based on service area
US8811478B2 (en) Data transmission method and apparatus
WO2015109842A1 (en) Method for processing segmented programs, server and client device
US20210306703A1 (en) Determination of availability of chunks of data for network streaming media data
WO2016090912A1 (en) Method, device, terminal and system for generating and playing live video
US11582125B2 (en) Repair mechanism for adaptive bit rate multicast

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant