CN106982395B - 基于hls的p2p直播系统及方法 - Google Patents
基于hls的p2p直播系统及方法 Download PDFInfo
- Publication number
- CN106982395B CN106982395B CN201710121323.XA CN201710121323A CN106982395B CN 106982395 B CN106982395 B CN 106982395B CN 201710121323 A CN201710121323 A CN 201710121323A CN 106982395 B CN106982395 B CN 106982395B
- Authority
- CN
- China
- Prior art keywords
- hls
- chunk
- index
- live
- live broadcast
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000013467 fragmentation Methods 0.000 claims abstract description 9
- 238000006062 fragmentation reaction Methods 0.000 claims abstract description 9
- 239000012634 fragment Substances 0.000 claims abstract description 8
- 238000013507 mapping Methods 0.000 claims abstract description 7
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/21805—Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
Abstract
本发明公开了一种基于HLS的P2P直播系统及方法,基于HLS的P2P直播系统包括:HLS服务器,从HLS直播源获取多个TS文件,并建立虚拟文件与TS文件的映射关系;边缘服务器,对虚拟文件进行chunk分片,分发chunk到不同的seed节点;m3u8服务器,建立当前直播的m3u8索引,使用虚拟文件的chunk分片作为m3u8索引的单个索引值;播放端,接收播放器的直播请求,获取对应的m3u8索引并发送至播放器;播放端根据获取的m3u8索引计算chunk信息,从不同的seed节点获取chunk组成直播流。本发明将多个TS文件当作一个虚拟文件,简化P2P分片和获取。
Description
技术领域
本发明涉及一种P2P(Peer to Peer,对等网络)直播技术领域,特别是涉及一种基于HLS(HTTP Live Streaming,苹果公司实现的基于HTTP的流媒体传输协议)的P2P直播系统及方法。
背景技术
在现有技术中,目前P2P被广泛应用在文件下载、流媒体等领域,传统P2P技术应用于直播领域时,存在延时大、上传带宽利用率低等问题。为此我们在专利[1]中提出使用基于纠删码的P2P直播技术,简述如下:
边缘服务器将视频流数据切分成数据块(chunk),对每个chunk应用纠删码生成冗余的编码片段,再将编码片段分发给seed节点(种子节点),seed节点再将编码片段分发给播放端节点。播放端节点取得足够多编码片段后解码恢复原始chunk。如果某个播放端节点无法通过seed节点获得某个chunk足够多的编码片段,则向边缘服务器请求更多的编码片段,直到该chunk可以被解码。chunk被解码后,视频数据被发送给播放器以供播放。
然而上述技术不支持基于HLS的直播系统。鉴于HLS直播在互联网上的广泛应用,本专利对上述P2P直播技术进行了拓展,使之能够兼容HLS直播。
发明内容
本发明要解决的技术问题是为了让已有的P2P直播技术兼容HLS,提供一种基于HLS的P2P直播系统及方法。
本发明是通过下述技术方案来解决上述技术问题的:
本发明提供了一种基于HLS的P2P直播系统,其特点在于,包括:
HLS服务器,用于从HLS直播源获取多个TS(高清摄像机拍摄下进行的封装格式)文件,并建立一虚拟文件与所述多个TS文件之间的映射关系;
边缘服务器,用于对所述虚拟文件进行chunk(信息块)分片,并分发chunk到不同的seed节点(种子节点)上;
m3u8服务器,用于建立当前直播的m3u8索引,使用所述虚拟文件的chunk分片作为所述m3u8索引的单个索引值;
播放端,用于接收播放器的直播请求,获取对应的m3u8索引并发送至播放器;
所述播放端还用于根据获取的m3u8索引计算出chunk信息,并从不同的seed节点获取chunk组成直播流。
较佳地,所述边缘服务器还用于使用纠删码对所述chunk进行编码,并分发编码片段到所述seed节点。
较佳地,所述播放端还用于使用纠删码对从seed节点收到的编码片段进行解码并恢复chunk。
较佳地,所述边缘服务器用于使用固定的chunk大小对所述虚拟文件进行chunk分片。
本发明的目的在于还提供了一种基于HLS的P2P直播方法,其特点在于,其利用上述的基于HLS的P2P直播系统实现,所述P2P直播方法包括以下步骤:
S1、所述HLS服务器从HLS直播源获取多个TS文件,并建立一虚拟文件与所述多个TS文件之间的映射关系;
S2、所述边缘服务器对所述虚拟文件进行chunk分片,并分发chunk到不同的seed节点上;
S3、所述m3u8服务器建立当前直播的m3u8索引,使用所述虚拟文件的chunk分片作为所述m3u8索引的单个索引值;
S4、所述播放端接收播放器的直播请求,获取对应的m3u8索引并发送至播放器;
S5、所述播放端根据获取的m3u8索引计算出chunk信息,并从不同的seed节点获取chunk组成直播流。
较佳地,在步骤S2中,所述边缘服务器还用于使用纠删码对所述chunk进行编码,并分发编码片段到所述seed节点。
较佳地,在步骤S5中,所述播放端还用于使用纠删码对从seed节点收到的编码片段进行解码并恢复chunk。
较佳地,步骤S2中所述边缘服务器使用固定的chunk大小对所述虚拟文件进行chunk分片。
本发明的积极进步效果在于:本发明将多个HLS TS文件当作一个虚拟大文件,简化了P2P分片和获取,保证每个chunk全局保持一致,并使得请求的文件不因时间而发生改变;同时,本发明使用纠删码来进行P2P分发,使seed节点的上传带宽得到充分利用。
附图说明
图1为本发明的较佳实施例的基于HLS的P2P直播系统的模块示意图。
图2为本发明的较佳实施例的基于HLS的P2P直播方法的流程图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
如图1所示,本发明的基于HLS的P2P直播系统包括HLS服务器1、边缘服务器2、m3u8服务器3以及播放端4,其中,所述播放端4的数量可以为多个;
所述HLS服务器用于从HLS直播源获取多个TS文件,并建立一虚拟文件与所述多个TS文件之间的映射关系,从而将所有TS文件作为单个虚拟大文件的一个小段;
所述边缘服务器用于对所述虚拟文件进行chunk分片,并分发chunk到不同的seed节点上;其中,优选地,所述边缘服务器用于使用固定的chunk大小对所述虚拟文件进行chunk分片。其中,优选地,所述边缘服务器使用纠删码对所述chunk进行编码,并分发编码片段到不同的seed节点上。
所述m3u8服务器则用于建立当前直播的m3u8索引,使用所述虚拟文件的chunk分片作为所述m3u8索引的单个索引值,从而实现了对原有HLS协议的m3u8索引文件进行改写,使得每个m3u8索引都指向一个虚拟文件的特定一段;
所述播放端用于接收播放器的直播请求,获取对应的m3u8索引并发送至播放器;
所述播放端还用于根据获取的m3u8索引计算出chunk信息(如chunkID),并从不同的seed节点获取chunk组成直播流。
所述播放端还用于将从seed节点处获取的编码片段应用纠删解码恢复为原始chunk。
如图2所示,本发明还提供了一种基于HLS的P2P直播方法,其利用上述的基于HLS的P2P直播系统实现,所述基于HLS的P2P直播方法包括以下步骤:
步骤101、所述HLS服务器从HLS直播源获取多个TS文件,并建立一虚拟文件与所述多个TS文件之间的映射关系;
步骤102、所述边缘服务器对所述虚拟文件进行chunk分片,并分发chunk到不同的seed节点上;
步骤103、所述m3u8服务器建立当前直播的m3u8索引,使用所述虚拟文件的chunk分片作为所述m3u8索引的单个索引值;
步骤104、所述播放端接收播放器的直播请求,获取对应的m3u8索引并发送至播放器;
步骤105、所述播放端根据获取的m3u8索引计算出chunk信息,并从不同的seed节点获取chunk组成直播流。
其中,在步骤102中所述边缘服务器使用固定的chunk大小对所述虚拟文件进行chunk分片。
其中,在步骤102中所述的边缘服务器对所述chunk应用纠删编码,并分发编码片段到不同的seed节点上。
其中,在步骤105中所述的播放端还用于将从seed节点处获取的编码片段应用纠删解码恢复为原始chunk。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (8)
1.一种基于HLS的P2P直播系统,其特征在于,包括:
HLS服务器,用于从HLS直播源获取多个TS文件,并建立一虚拟文件与所述多个TS文件之间的映射关系;
边缘服务器,用于对所述虚拟文件进行chunk分片,并分发chunk到不同的seed节点上;
m3u8服务器,用于建立当前直播的m3u8索引,使用所述虚拟文件的chunk分片作为所述m3u8索引的单个索引值;
播放端,用于接收播放器的直播请求,获取对应的m3u8索引并发送至播放器;
所述播放端还用于根据获取的m3u8索引计算出chunk信息,并从不同的seed节点获取chunk组成直播流。
2.如权利要求1所述的基于HLS的P2P直播系统,其特征在于,所述边缘服务器还用于使用纠删码对所述chunk进行编码,并分发编码片段到所述seed节点。
3.如权利要求2所述的基于HLS的P2P直播系统,其特征在于,所述播放端还用于使用纠删码对从seed节点收到的编码片段进行解码并恢复chunk。
4.如权利要求1所述的基于HLS的P2P直播系统,其特征在于,所述边缘服务器用于使用固定的chunk大小对所述虚拟文件进行chunk分片。
5.一种基于HLS的P2P直播方法,其特征在于,其利用如权利要求1所述的基于HLS的P2P直播系统实现,所述P2P直播方法包括以下步骤:
S1、所述HLS服务器从HLS直播源获取多个TS文件,并建立一虚拟文件与所述多个TS文件之间的映射关系;
S2、所述边缘服务器对所述虚拟文件进行chunk分片,并分发chunk到不同的seed节点上;
S3、所述m3u8服务器建立当前直播的m3u8索引,使用所述虚拟文件的chunk分片作为所述m3u8索引的单个索引值;
S4、所述播放端接收播放器的直播请求,获取对应的m3u8索引并发送至播放器;
S5、所述播放端根据获取的m3u8索引计算出chunk信息,并从不同的seed节点获取chunk组成直播流。
6.如权利要求5所述的基于HLS的P2P直播方法,其特征在于,在步骤S2中,所述边缘服务器还用于使用纠删码对所述chunk进行编码,并分发编码片段到所述seed节点。
7.如权利要求6所述的基于HLS的P2P直播方法,其特征在于,在步骤S5中,所述播放端还用于使用纠删码对从seed节点收到的编码片段进行解码并恢复chunk。
8.如权利要求5所述的基于HLS的P2P直播方法,其特征在于,步骤S2中所述边缘服务器使用固定的chunk大小对所述虚拟文件进行chunk分片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710121323.XA CN106982395B (zh) | 2017-03-02 | 2017-03-02 | 基于hls的p2p直播系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710121323.XA CN106982395B (zh) | 2017-03-02 | 2017-03-02 | 基于hls的p2p直播系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106982395A CN106982395A (zh) | 2017-07-25 |
CN106982395B true CN106982395B (zh) | 2020-02-14 |
Family
ID=59338722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710121323.XA Expired - Fee Related CN106982395B (zh) | 2017-03-02 | 2017-03-02 | 基于hls的p2p直播系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106982395B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108650481B (zh) * | 2018-04-19 | 2021-08-10 | 北京软通智慧城市科技有限公司 | 一种视频流数据的存储方法及装置 |
CN111064969B (zh) * | 2018-10-16 | 2023-07-11 | 中兴通讯股份有限公司 | 一种流媒体数据传输方法、设备、装置和计算机存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101534204B (zh) * | 2008-03-10 | 2011-08-31 | 中国网通集团宽带业务应用国家工程实验室有限公司 | 流媒体信息分发系统和方法及客户端 |
US9106934B2 (en) * | 2013-01-29 | 2015-08-11 | Espial Group Inc. | Distribution of adaptive bit rate live streaming video via hyper-text transfer protocol |
CN104333818A (zh) * | 2014-10-17 | 2015-02-04 | 中兴通讯股份有限公司 | 一种http实时流媒体分片的拼接方法及拼接系统 |
WO2016074149A1 (en) * | 2014-11-11 | 2016-05-19 | 21 Vianet Group, Inc. | Expedited media content delivery |
-
2017
- 2017-03-02 CN CN201710121323.XA patent/CN106982395B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN106982395A (zh) | 2017-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE49290E1 (en) | Method and apparatus for streaming media content to client devices | |
CN106233735B (zh) | 管理多播视频传送的方法 | |
CN107743703B (zh) | 用于媒体数据传输的方法、设备及计算机可读存储介质 | |
US9544344B2 (en) | Method and apparatus for streaming media content to client devices | |
TWI623226B (zh) | 用於儲存媒體片段之基於目錄限制之系統及方法 | |
JP5728736B2 (ja) | コーデック適用フレーム・サイズでの音声スプリッティング | |
US20170171287A1 (en) | Requesting multiple chunks from a network node on the basis of a single request message | |
CN105282627A (zh) | 一种获取直播视频切片的方法及服务器 | |
CN102656857B (zh) | 一种启动阶段的流媒体数据获取、发送方法及装置 | |
US20170238040A1 (en) | Method, computer program product and server for streaming media content from a server to a client | |
AU2003201700A1 (en) | Targeted scalable video multicast based on client bandwidth or capability | |
CN106790005B (zh) | 实现低延时hls直播的系统及方法 | |
CN104661058A (zh) | Mp4视频点播的数据流传输方法、客户端及点播系统 | |
EP3652951A1 (en) | Fast tune-in for low latency streaming | |
WO2015192683A1 (zh) | 一种基于码流自适应技术的内容分发方法、装置及系统 | |
CN106982395B (zh) | 基于hls的p2p直播系统及方法 | |
US20170347130A1 (en) | Processing system and method for live video streaming based on network coding and content distribution network | |
RU2651241C2 (ru) | Передающее устройство, способ передачи, приемное устройство и способ приема | |
CN106385627B (zh) | 视频编码方法和装置 | |
CN107070923B (zh) | 减少编码片段重复的p2p直播系统及方法 | |
CN106254548A (zh) | 一种下载流媒体数据的方法及装置 | |
JP2007324876A (ja) | データ送信装置、データ受信装置、データ送信方法、データ受信方法、及びプログラム | |
WO2019193991A1 (ja) | 配信装置、配信方法、およびプログラム | |
CN103796035A (zh) | 一种处理分段节目的方法、服务器及客户端设备 | |
CN109286856A (zh) | 加速启播的p2p直播系统及方法 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200214 |
|
CF01 | Termination of patent right due to non-payment of annual fee |