[go: up one dir, main page]

CN104333818A - 一种http实时流媒体分片的拼接方法及拼接系统 - Google Patents

一种http实时流媒体分片的拼接方法及拼接系统 Download PDF

Info

Publication number
CN104333818A
CN104333818A CN201410555369.9A CN201410555369A CN104333818A CN 104333818 A CN104333818 A CN 104333818A CN 201410555369 A CN201410555369 A CN 201410555369A CN 104333818 A CN104333818 A CN 104333818A
Authority
CN
China
Prior art keywords
hls
file
media file
subindex
slicing files
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.)
Pending
Application number
CN201410555369.9A
Other languages
English (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201410555369.9A priority Critical patent/CN104333818A/zh
Publication of CN104333818A publication Critical patent/CN104333818A/zh
Priority to PCT/CN2015/082975 priority patent/WO2016058411A1/zh
Priority to US15/519,583 priority patent/US20170245022A1/en
Priority to EP15850506.5A priority patent/EP3209025A4/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • 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/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种HTTP实时流媒体分片的拼接方法及拼接系统,拼接装置对HLS子索引文件中引用的传输流(TS)分片文件的数据进行拼接,得到一个或多个媒体文件;修改装置修改所述HLS子索引文件,在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件及在媒体文件中的位置信息。本发明通过对HLS分片进行拼接并相应修改HLS子索引文件,可以使得支持HLS协议的系统能更好的实施,降低对文件系统的压力,提高系统的存储空间利用率,提高磁盘IO速度,提高CDN节点间内容分发效率。

Description

一种HTTP实时流媒体分片的拼接方法及拼接系统
技术领域
本发明涉及OTT(Over The Top)TV领域,更具体地,涉及一种HTTP实时流媒体(HLS:HTTP Live Streaming)分片的拼接方法及系统。
背景技术
OTT TV是指通过公共互联网面向联网设备(电视、PC、移动终端)传输IP视频和互联网应用融合的一种服务,是以交互式音视频服务为主体,集互联网、多媒体通讯等多种技术为一体的服务集合体,可在任何时间、向任意地点的任意终端用户提供视频、资讯、游戏等各种服务。
OTT TV与传统IPTV(Internet Protocol Television)不同的是,业务运营商不需要为OTT TV而特别建设一套专用网络,可以在无管理、无QoS(Qualityof Service)保障的公共互联网或移动网络为用户提供服务。
随着Apple公司iPhone、iPad、iPod touch等终端的迅速普及,由其带来的HTTP实时流媒体(HLS:HTTP Live Streaming)技术成为了OTT TV的主流事实标准,目前是国际标准化组织IETF(Internet Engineering Task Force)的草案,得到了众多厂商的支持。
因OTT TV是基于公共互联网或者移动网络,用户的带宽是无法被控制的,在不同的时间不同的地点、或者同一地点不同时间,用户的带宽随时变化;另外,OTT音视频节目需要传送至各种设备,机顶盒(STB:Set Top Box)、PC(Personal Computer)机、PAD/Tablet、Smartphone,这些不同的设备对OTT音视频有不同的要求,需要传送合适的分辨率、码率。而HLS的自适应码率特性和HTTP(Hyper Text Transfer Protocol)带来的广泛适用性,能够适应用户带宽波动、不均匀的情况,使用户可以得到与当前带宽相适应的码率的节目流,从而保证用户无中断的观看。
HLS技术的系统架构如附图1所示。
HLS离线编码器101将视频点播(VOD:Video on Demand)内容源编码为不同分辨率、码率的码流,并进行分片,将生成的传输流(TS:TransportStream)分片文件和index索引文件递交给媒体服务器102,HLS终端103通过互联网或移动网络进行访问,从数字权限管理(DRM:Digital RightManagement)服务器104获取密钥,从媒体服务器102获取索引文件和分片文件进行解密后播放。
其中,HLS离线编码器101推送到媒体服务器102上的文件组织结构如图2所示。
■图中从左边起第一列为HLS主索引文件201,标识一个内容可用的不同档次(Profile)(主要是分辨率、码率不同),并记录有其下不同档次的HLS子索引文件信息;
■第二列为HLS子索引文件202、203、204,说明对应每种档次的TS分片文件所处的路径以及播放顺序、媒体文件解密方法以及获取密钥的URL等;
■第三列为TS分片文件205、206、207,HLS离线编码器101将输入的VOD内容源切片为TS分片文件,分片文件内的媒体内容具有一定的播放时长,例如2~10秒;
■每种档次的多个分片文件保存在各自的文件夹下(也可以在同一个文件夹中而文件名不同)。
然而,实践中发现,在要求必须支持HLS协议的大规模容量的系统中,存在文件数量过多文件系统压力比较大、存储效率不高、磁盘IO降低、内容分发网络(CDN:Content Delivery Network)节点间内容分发效率低下等现象。经过分析,这是因为:
(1)为了便于码率在网络带宽波动时的及时快速切换,每个TS分片时长一般为2~10秒,假设固定为10秒,则对于通常1个小时长的VOD节目来说,每种档次就需要360个TS分片,如果有3种档次,则共有1080个TS分片。如果某个商用系统中有50万个VOD内容,则需要5.4亿个分片文件,对文件系统支持的最大文件数量要求比较高,而且这些文件的元信息经常要存放在内存中以便加快文件访问速度,需要消耗大量的内存空间。
(2)文件在存储设备上的存储形式一般是按块进行,文件系统分配的存储块的大小可以配置,但全局统一,但为了高清标清视频文件或大文件下载业务,存储块通常设为64MB(Mega Bytes)。假设系统中HLS最高档次的TS分片平均码率为4Mbps,则该档次的每个TS文件大小约为10s*4Mbps/8=5MB,系统为该文件分配一个存储块,但该存储块中有59MB都是被浪费了,其他档次的TS分片文件则浪费的更多。所以存储空间的有效利用率非常低下。
(3)因为文件系统中TS分片文件小而且多,在访问时磁头就需要不断的启停、寻址,磁盘IO速度相比大文件的IO速度慢很多,系统性能严重下降。
发明内容
有鉴于此,本发明提供了一种HTTP实时流媒体(HLS)分片的拼接方法,包括:
对HLS子索引文件中引用的传输流(TS)分片文件的数据进行拼接,得到一个或多个媒体文件;
修改所述HLS子索引文件,在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件及在媒体文件中的位置信息。
较佳地,
对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,得到一个或多个媒体文件,包括:
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个媒体文件;或者
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为多个媒体文件;或者
对同一HLS主索引文件下多种档次对应的多个HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个或多个媒体文件。
较佳地,
修改所述HLS子索引文件,还包括:在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件的路径。
较佳地,
对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,包括:
按照所述HLS子索引文件中记载的TS分片文件的播放顺序或者另行设定的拼接顺序,对所述HLS子索引文件中引用的TS分片文件的数据依次进行拼接。
较佳地,
对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,得到一个或多个媒体文件后,还包括:在所述媒体文件中添加用于指示媒体文件格式的信息字段。
较佳地,
所述媒体文件的名称中包括以下信息中的一种或多种:
媒体文件的类型;媒体文件包含的TS分片文件所属的档次;及媒体文件包含的TS分片文件所属的档次所对应的码率。
有鉴于此,本发明还提供了一种HTTP实时流媒体(HLS)分片的拼接系统,包括:
拼接装置,配置为对HLS子索引文件中引用的传输流(TS)分片文件的数据进行拼接,得到一个或多个媒体文件;
修改装置,配置为修改所述HLS子索引文件,在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件及在媒体文件中的位置信息。
较佳地,
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,包括:
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个媒体文件;或者
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为多个媒体文件;或者
对同一HLS主索引文件下多种档次对应的多个HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个或多个媒体文件。
较佳地,
所述修改装置修改所述HLS子索引文件,还包括:在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件的路径。
较佳地,
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,包括:
按照所述HLS子索引文件中记载的TS分片文件的播放顺序或者另行设定的拼接顺序,对所述HLS子索引文件中引用的TS分片文件的数据依次进行拼接。
较佳地,
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,得到一个或多个媒体文件后,还包括:在所述媒体文件中添加用于指示媒体文件格式的信息字段。
较佳地,
所述拼接装置拼接得到的所述媒体文件的名称中包括以下信息中的一种或多种:
媒体文件的类型;媒体文件包含的TS分片文件所属的档次;及媒体文件包含的TS分片文件所属的档次所对应的码率。
上述方案通过对HLS分片进行拼接并相应修改HLS子索引文件,可以取得以下技术效果中的至少一种:使得支持HLS协议的系统能更好的实施,降低对文件系统的压力,提高系统的存储空间利用率,提高磁盘IO速度,提高CDN节点间内容分发效率。
附图说明
图1是传统HLS技术的系统架构示意图;
图2是传统HLS文件组织结构示意图;
图3是本发明实施例HLS分片拼接方法的流程图;
图4是本发明实施例HLS分片拼接系统的模块图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
实施例一
本实施例HLS分片的拼接方法的流程如图3所示,包括:
步骤110,对HLS子索引文件中引用的传输流(TS)分片文件的数据进行拼接,得到一个或多个媒体文件;
本步骤中,对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,可以采用但不局限于以下方式:
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个媒体文件;或者
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为多个媒体文件;或者
对同一HLS主索引文件下多种档次对应的多个HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个或多个媒体文件。
拼接时需要得到的信息如每种档次的HLS子索引文件及其引用的TS分片的路径等,可以通过解析HLS主索引文件和相应HLS子索引文件得到。
本步骤中,较佳地,按照所述HLS子索引文件中记载的TS分片文件的播放顺序或者另行设定的拼接顺序,对所述HLS子索引文件中引用的TS分片文件的数据依次进行拼接。所谓另行设定的拼接顺序即不按照播放顺序进行拼接,如设定为按照先奇数分片后偶数分片的顺序拼接,有6个分片时,按照1、3、5、2、4、6的顺序拼接;又如,设定为从两头向中间的顺序拼接,有6个分片时,按照1,6,2,5,3,4的顺序拼接,等等。本发明对拼接顺序不做任何局限。
可选地,所述拼接得到的一个或多个媒体文件的名称中包括以下信息中的一种或多种:媒体文件的类型;媒体文件包含的TS分片文件所属的档次;及媒体文件包含的TS分片文件所属的档次所对应的码率。
可选地,在拼接得到的一个或多个媒体文件中添加用于指示媒体文件格式的信息字段。
步骤120,修改所述HLS子索引文件,在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件及在媒体文件中的位置信息。
本步骤中修改所述HLS子索引文件,还可包括:在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件的路径。
可选的,修改所述HLS子索引文件时,还可以修改所述HLS子索引文件的名称。此时,需要相应修改所述HLS子索引文件所属的HLS主索引文件,将所述HLS主索引文件中的HLS子索引文件的名称更新为修改后的HLS子索引文件的名称。
相应地,本实施例的HLS分片的拼接系统如图4所示,包括:
拼接装置10,配置为对HLS子索引文件中引用的传输流(TS)分片文件的数据进行拼接,得到一个或多个媒体文件;
修改装置20,配置为修改所述HLS子索引文件,在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件及在媒体文件中的位置信息。
较佳地,
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,包括:
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个媒体文件;或者
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为多个媒体文件;或者
对同一HLS主索引文件下多种档次对应的多个HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个或多个媒体文件。
较佳地,
所述修改装置修改所述HLS子索引文件,还包括:在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件的路径。
较佳地,
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,包括:
按照所述HLS子索引文件中记载的TS分片文件的播放顺序或者另行设定的拼接顺序,对所述HLS子索引文件中引用的TS分片文件的数据依次进行拼接。
较佳地,
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,得到一个或多个媒体文件后,还包括:在所述媒体文件中添加用于指示媒体文件格式的信息字段。
较佳地,
所述拼接装置拼接得到的所述媒体文件的名称中包括以下信息中的一种或多种:媒体文件的类型;媒体文件包含的TS分片文件所属的档次;及媒体文件包含的TS分片文件所属的档次所对应的码率。
较佳地,
所述修改装置修改所述HLS子索引文件,还包括:修改所述HLS子索引文件的名称;
所述修改装置还配置为修改所述HLS子索引文件所属的HLS主索引文件,将所述HLS主索引文件中的HLS子索引文件的名称更新为修改后的HLS子索引文件的名称。
上述拼接系统可以设置在任何具有逻辑运算能力的一个或多个设备(如媒体服务器)中,或者说在任何具有逻辑运算能力的一个或多个设备上来实现上述拼接方法。拼接系统拼接时使用的索引文件和分片文件可以由HLS离线编码器或其他设备推送,也可以自行下载得到。
本实施例的拼接方法和系统通过将HLS分片拼接为媒体文件,大大减少了文件的数量,降低了对文件系统的压力,如需要支持的最大文件数量减少,且减少了存储相应文件信息所需的内存空间。相应地,访问时磁头的启停、寻址操作也大大减少,可以磁盘IO速度。此外,由于媒体文件比TS分片文件更大,在分配存储块时,存储空间浪费减少。从而使得支持HLS协议的系统能更好的实施,如提高了CDN节点间内容分发效率。另外,上述拼接方法在拼接后,相应修改了HLS子索引文件,因而对HLS系统中的其他设备几乎没有影响。
下面用一个具体的应用示例来说明上述拼接方法:
假定,本示例中HLS主索引文件包括以下内容:
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=512000
01.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=768000
02.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1024000
03.m3u8
解析上述内容可以得知,该HLS内容有三种档次可用:第1种档次码率为512kbps,HLS子索引文件为01.m3u8;第2种档次码率为768kbps,HLS子索引文件为02.m3u8;第3种档次码率为1024kbps,HLS子索引文件为03.m3u8。
其中,作为一个示例,HLS子索引文件01.m3u8包括以下内容:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-KEY:METHOD=AES-128,URI="1.key"
#EXTINF:10,
01.ts
#EXT-X-KEY:METHOD=AES-128,URI=“2.key"
#EXTINF:10,
02.ts
#EXTINF:10,
03.ts
………
#EXT-X-ENDLIST
解析上述内容可以得知,该HLS子索引文件01.m3u8引用多个TS分片文件:第1个TS分片文件为01.ts、第2个TS分片文件为02.ts、第3个TS分片文件为03.ts,等等。其他内容涉及播放顺序、最大的媒体段时间长、媒体文件解密方法和获取密钥的URL等,这里不再详述。
然后。对HLS子索引文件01.m3u8中引用的TS分片文件的数据进行拼接,得到一个或多个媒体文件;
作为示例,将该HLS子索引文件01.m3u8中引用的所有TS分片文件的数据按照播放顺序依次拼接在一起,得到一个大的媒体文件zott_01_512.ts,同时记录下每个TS分片文件在拼接后的媒体文件中的位置。例如第1个TS分片在拼接后的媒体文件中的起止位置为从第0个字节到第18799个字节,第2个TS分片在拼接后的媒体文件中的起止位置为从第18800个字节到第39479个字节,第3个TS分片在拼接后的媒体文件中的起止位置为从第39480个字节到第60000个字节,以此类推。当然,在拼接时TS分片文件也不一定按播放顺序进行拼接,可以按照另行设定的拼接顺序拼接。在拼接后的媒体文件中可以增加一些自定义的信息字段来定义特定的媒体文件格式等。
虽然上述示例中,对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个媒体文件。但也可以视TS分片文件的数量和文件大小采用不同的拼接方式,如:对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为多个媒体文件;或者,对同一HLS主索引文件下多种档次对应的多个HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个或多个媒体文件。等等。
上述示例中,拼接后的媒体文件命名规则如下:
zott_${id}_${bitrate}.ts
其中:
前缀zott字段是一个固定值,代表媒体文件的类别;
${id}字段是档次编号,每种档次对应一个编号,例如01、02、03、…;
${bitrate}字段是档次对应的码率(单位:kbps);
各字段间以下划线间隔;
.ts表示文件扩展名。
对于媒体文件的名称,具体实施时可以自行定义其命名规则。
然后,修改HLS子索引文件01.m3u8,在修改后的HLS子索引文件01.m3u8中记录其引用的每一TS分片文件所在的媒体文件及在媒体文件中的位置信息。
在示例中,修改后的子索引文件01.m3u8内容为:
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-KEY:METHOD=AES-128,URI="1.key"
#EXTINF:10,
zott_01_512.ts?zbytes=0-18799
#EXT-X-KEY:METHOD=AES-128,URI=“2.key"
#EXTINF:10,
zott_01_512.ts?zbytes=18800-39479
#EXTINF:10,
zott_01_512.ts?zbytes=39480-60000
………
#EXT-X-ENDLIST
上述内容中的zott_01_512.ts是TS分片文件所在的媒体文件,zbytes字段表示TS分片文件在媒体文件中的起止字节,用于表示TS分片文件在媒体文件中的位置信息。当然也可以采用其他字段进行表示,例如from=xxx&to=yyy、或start=xxx&end=yyy等等相似表示方法。
TS分片文件所在的媒体文件的路径可以是相对路径也可以是绝对路径,如果拼接后的媒体文件存放在其他目录或其他主机上、甚至云存储的某个网络位置,则还需要记录该媒体文件的路径,例如;
http://www.sample.com/ott/zott_01_512.ts?zbytes=0-18799。
按照类似的方式,对另外二种档次的HLS子索引文件02.m3u8和HLS子索引文件03.m3u8所引用的TS分片文件进行拼接并完成对HLS子索引文件02.m3u8和HLS子索引文件03.m3u8的修改后,就完成了对整个HLS内容的拼接。拼接后,目录中的HLS文件列表示如下:
index.m3u8
01.m3u8
02.m3u8
03.m3u8
zott_0_512.ts
zott_1_768.ts
zott_2_1024.ts
上述文件列表中,包括一个主索引文件index.m3u8、三种档次的HLS子索引文件01.m3u8、02.m3u8和03.m3u8,及拼接后的3个媒体文件:zott_0_512.ts、zott_1_768.ts、zott_2_1024.ts。
另外,HLS主索引文件和HLS子索引文件的名称可以保持不变,也可以进行修改。若修改了HLS子索引文件名称,需同时修改所属的HLS主索引文件中该HLS子索引文件的名称。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种HTTP实时流媒体(HLS)分片的拼接方法,包括:
对HLS子索引文件中引用的传输流(TS)分片文件的数据进行拼接,得到一个或多个媒体文件;
修改所述HLS子索引文件,在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件及在媒体文件中的位置信息。
2.如权利要求1所述的拼接方法,其特征在于:
对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,得到一个或多个媒体文件,包括:
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个媒体文件;或者
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为多个媒体文件;或者
对同一HLS主索引文件下多种档次对应的多个HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个或多个媒体文件。
3.如权利要求1所述的拼接方法,其特征在于:
修改所述HLS子索引文件,还包括:在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件的路径。
4.如权利要求1或2或3所述的拼接方法,其特征在于:
对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,包括:
按照所述HLS子索引文件中记载的TS分片文件的播放顺序或者另行设定的拼接顺序,对所述HLS子索引文件中引用的TS分片文件的数据依次进行拼接。
5.如权利要求1所述的拼接方法,其特征在于:
对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,得到一个或多个媒体文件后,还包括:在所述媒体文件中添加用于指示媒体文件格式的信息字段。
6.如权利要求1或2或3或5所述的拼接方法,其特征在于:
所述媒体文件的名称中包括以下信息中的一种或多种:
媒体文件的类型;媒体文件包含的TS分片文件所属的档次;及媒体文件包含的TS分片文件所属的档次所对应的码率。
7.一种HTTP实时流媒体(HLS)分片的拼接系统,包括:
拼接装置,配置为对HLS子索引文件中引用的传输流(TS)分片文件的数据进行拼接,得到一个或多个媒体文件;
修改装置,配置为修改所述HLS子索引文件,在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件及在媒体文件中的位置信息。
8.如权利要求7所述的拼接系统,其特征在于:
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,包括:
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个媒体文件;或者
对同一HLS主索引文件下每种档次对应的HLS子索引文件,将其引用的所有TS分片文件的数据拼接为多个媒体文件;或者
对同一HLS主索引文件下多种档次对应的多个HLS子索引文件,将其引用的所有TS分片文件的数据拼接为一个或多个媒体文件。
9.如权利要求7所述的拼接系统,其特征在于:
所述修改装置修改所述HLS子索引文件,还包括:在修改后的HLS子索引文件中记录其引用的每一TS分片文件所在的媒体文件的路径。
10.如权利要求7或8或9所述的拼接系统,其特征在于:
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,包括:
按照所述HLS子索引文件中记载的TS分片文件的播放顺序或者另行设定的拼接顺序,对所述HLS子索引文件中引用的TS分片文件的数据依次进行拼接。
11.如权利要求7所述的拼接系统,其特征在于:
所述拼接装置对所述HLS子索引文件中引用的TS分片文件的数据进行拼接,得到一个或多个媒体文件后,还包括:在所述媒体文件中添加用于指示媒体文件格式的信息字段。
12.如权利要求7或8或9或11所述的拼接系统,其特征在于:
所述拼接装置拼接得到的所述媒体文件的名称中包括以下信息中的一种或多种:
媒体文件的类型;媒体文件包含的TS分片文件所属的档次;及媒体文件包含的TS分片文件所属的档次所对应的码率。
CN201410555369.9A 2014-10-17 2014-10-17 一种http实时流媒体分片的拼接方法及拼接系统 Pending CN104333818A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201410555369.9A CN104333818A (zh) 2014-10-17 2014-10-17 一种http实时流媒体分片的拼接方法及拼接系统
PCT/CN2015/082975 WO2016058411A1 (zh) 2014-10-17 2015-06-30 一种http实时流媒体分片的拼接方法及拼接系统
US15/519,583 US20170245022A1 (en) 2014-10-17 2015-06-30 Splicing method and splicing system for http live streaming media fragment
EP15850506.5A EP3209025A4 (en) 2014-10-17 2015-06-30 Splicing method and splicing system for http live streaming media fragmentation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410555369.9A CN104333818A (zh) 2014-10-17 2014-10-17 一种http实时流媒体分片的拼接方法及拼接系统

Publications (1)

Publication Number Publication Date
CN104333818A true CN104333818A (zh) 2015-02-04

Family

ID=52408453

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410555369.9A Pending CN104333818A (zh) 2014-10-17 2014-10-17 一种http实时流媒体分片的拼接方法及拼接系统

Country Status (4)

Country Link
US (1) US20170245022A1 (zh)
EP (1) EP3209025A4 (zh)
CN (1) CN104333818A (zh)
WO (1) WO2016058411A1 (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016058411A1 (zh) * 2014-10-17 2016-04-21 中兴通讯股份有限公司 一种http实时流媒体分片的拼接方法及拼接系统
CN105578308A (zh) * 2015-12-29 2016-05-11 武汉市烽视威科技有限公司 一种rtp组播直播与hls单播时移相结合的实现方法
CN106101866A (zh) * 2016-07-14 2016-11-09 观止云(北京)信息技术有限公司 一种hls流媒体drm的方法
WO2017020809A1 (zh) * 2015-08-03 2017-02-09 中兴通讯股份有限公司 一种视频文件存储方法及其装置
CN106899894A (zh) * 2015-12-18 2017-06-27 中国电信股份有限公司 动态优化的自适应流媒体方法、装置和服务器
CN106961635A (zh) * 2015-09-08 2017-07-18 船井电机株式会社 信息装置
CN106982395A (zh) * 2017-03-02 2017-07-25 上海云熵网络科技有限公司 基于hls的p2p直播系统及方法
CN108271085A (zh) * 2016-12-30 2018-07-10 中兴通讯股份有限公司 一种http实时流媒体hls文件的发送方法及装置
CN109302621A (zh) * 2017-07-24 2019-02-01 中兴通讯股份有限公司 一种文件聚合方法及服务器
CN109726237A (zh) * 2018-12-13 2019-05-07 浙江邦盛科技有限公司 一种针对多路实时流数据的关联补全方法
CN112671690A (zh) * 2019-10-16 2021-04-16 中国电信股份有限公司 流媒体通信方法、装置、系统和存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3419278B1 (en) * 2017-06-20 2019-09-25 Axis AB A multi-sensor video camera, and a method and processing pipeline for the same
CN107517411B (zh) * 2017-09-04 2020-08-25 海信视像科技股份有限公司 一种基于GStreamer框架的视频播放方法
CN108184139A (zh) * 2017-12-29 2018-06-19 深圳Tcl新技术有限公司 录制节目的共享方法、设备、系统及存储介质
CN110138716B (zh) 2018-02-09 2020-11-27 网宿科技股份有限公司 一种密钥的提供、视频播放方法、服务器及客户端
CN109787983A (zh) * 2019-01-24 2019-05-21 北京百度网讯科技有限公司 直播流切片方法、装置和系统
CN111866603B (zh) * 2020-07-21 2022-04-26 广州市保伦电子有限公司 一种基于srs的视频文件生产方法、后台服务器和系统
CN112104885B (zh) * 2020-09-09 2022-06-24 海看网络科技(山东)股份有限公司 一种直播中加快m3u8起始播放速度的系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102238434A (zh) * 2011-07-22 2011-11-09 中兴通讯股份有限公司 一种iptv流媒体文件虚拟分段和使用的方法及系统
CN102271163A (zh) * 2011-08-19 2011-12-07 中兴通讯股份有限公司 一种实现直播码流分发的方法和系统
US20140025710A1 (en) * 2012-07-23 2014-01-23 Espial Group Inc. Storage Optimizations for Multi-File Adaptive Bitrate Assets
CN103986976A (zh) * 2014-06-05 2014-08-13 北京赛维安讯科技发展有限公司 基于cdn网络的传输系统及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100312828A1 (en) * 2009-06-03 2010-12-09 Mobixell Networks Ltd. Server-controlled download of streaming media files
CN104333818A (zh) * 2014-10-17 2015-02-04 中兴通讯股份有限公司 一种http实时流媒体分片的拼接方法及拼接系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102238434A (zh) * 2011-07-22 2011-11-09 中兴通讯股份有限公司 一种iptv流媒体文件虚拟分段和使用的方法及系统
CN102271163A (zh) * 2011-08-19 2011-12-07 中兴通讯股份有限公司 一种实现直播码流分发的方法和系统
US20140025710A1 (en) * 2012-07-23 2014-01-23 Espial Group Inc. Storage Optimizations for Multi-File Adaptive Bitrate Assets
CN103986976A (zh) * 2014-06-05 2014-08-13 北京赛维安讯科技发展有限公司 基于cdn网络的传输系统及方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016058411A1 (zh) * 2014-10-17 2016-04-21 中兴通讯股份有限公司 一种http实时流媒体分片的拼接方法及拼接系统
WO2017020809A1 (zh) * 2015-08-03 2017-02-09 中兴通讯股份有限公司 一种视频文件存储方法及其装置
CN106412615A (zh) * 2015-08-03 2017-02-15 中兴通讯股份有限公司 一种视频文件存储方法及其装置
CN106961635A (zh) * 2015-09-08 2017-07-18 船井电机株式会社 信息装置
CN106899894A (zh) * 2015-12-18 2017-06-27 中国电信股份有限公司 动态优化的自适应流媒体方法、装置和服务器
CN106899894B (zh) * 2015-12-18 2019-06-18 中国电信股份有限公司 动态优化的自适应流媒体方法、装置和服务器
CN105578308A (zh) * 2015-12-29 2016-05-11 武汉市烽视威科技有限公司 一种rtp组播直播与hls单播时移相结合的实现方法
CN106101866A (zh) * 2016-07-14 2016-11-09 观止云(北京)信息技术有限公司 一种hls流媒体drm的方法
CN108271085A (zh) * 2016-12-30 2018-07-10 中兴通讯股份有限公司 一种http实时流媒体hls文件的发送方法及装置
CN106982395A (zh) * 2017-03-02 2017-07-25 上海云熵网络科技有限公司 基于hls的p2p直播系统及方法
CN109302621A (zh) * 2017-07-24 2019-02-01 中兴通讯股份有限公司 一种文件聚合方法及服务器
CN109726237A (zh) * 2018-12-13 2019-05-07 浙江邦盛科技有限公司 一种针对多路实时流数据的关联补全方法
CN112671690A (zh) * 2019-10-16 2021-04-16 中国电信股份有限公司 流媒体通信方法、装置、系统和存储介质
CN112671690B (zh) * 2019-10-16 2022-08-30 中国电信股份有限公司 流媒体通信方法、装置、系统和存储介质

Also Published As

Publication number Publication date
WO2016058411A1 (zh) 2016-04-21
US20170245022A1 (en) 2017-08-24
EP3209025A1 (en) 2017-08-23
EP3209025A4 (en) 2017-08-30

Similar Documents

Publication Publication Date Title
CN104333818A (zh) 一种http实时流媒体分片的拼接方法及拼接系统
Sodagar The mpeg-dash standard for multimedia streaming over the internet
US10560726B2 (en) System and method for delivery and caching of personalized media streaming content
EP3028433B1 (en) Averting ad skipping in adaptive bit rate systems
US9491499B2 (en) Dynamic stitching module and protocol for personalized and targeted content streaming
CN110099288B (zh) 发送媒体数据的方法及装置
US8751677B2 (en) System and method to support different ingest and delivery schemes for a content delivery network
US10382801B2 (en) Transmission apparatus, transmission method, reception apparatus, and reception method
CN105165015A (zh) 利用http自适应流的快速信道改变的增强播放列表定义和传递
CN115136611B (zh) 用于动态元素替换的组中元素的标识
CN103813185B (zh) 一种分段节目快速分发的方法、服务器及客户端
KR20120114016A (ko) 사용자 컨텐츠를 외부 단말기에서 네트워크 적응적으로 스트리밍하는 방법 및 장치
CN103686245A (zh) 一种基于hls协议的点播与直播切换方法和装置
CN105828096B (zh) 媒体流文件的处理方法和装置
US12075100B2 (en) Per-segment parameters for content
WO2014208377A1 (ja) コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システム
CN104410901A (zh) 一种m3u8格式直播流的播放方法及播放装置
CN105992022A (zh) 一种在线录制下载方法及系统
JP2019071680A (ja) 端末装置および受信方法
CN108271039B (zh) 一种文件发送方法及装置
CN113014930B (zh) 信息处理设备、信息处理方法和计算机可读记录介质
CA2941367A1 (en) Transmission apparatus, transmission method, reception apparatus, receiving method, and program
CN108924591B (zh) 基于多终端业务的电视频道精准分群组发布方法及其系统
EP4510543A1 (en) Systems and methods for generating differential header data
Sodagar Industry and standards

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150204

WD01 Invention patent application deemed withdrawn after publication