音视频实时传输方法及装置、音视频实时播放方法及装置的制造方法
【专利摘要】本发明实施例提供一种音视频实时传输方法,包括:将分组的视频原始流以及分组的音频原始流复用后存储为节目切片;对节目特定信息进行加密,并存储为节目特定信息切片;传输所述节目特定信息及所述节目切片。本发明实施例还提供一种音视频实时传输方法、音视频实时播放方法及装置。本发明实施例可以减少现有技术中加密及解密的运算量。
【专利说明】
音视频实时传输方法及装置、音视频实时播放方法及装置
技术领域
[0001]本发明实施例涉及音视频技术领域,尤其涉及一种音视频实时传输方法及装置、音视频实时播放方法及装置。
【背景技术】
[0002]HLS(HTTP Live Streaming)协议是苹果公司研发出的,用在网络直播和点播场景中的扩展HTTP协议,该协议使用传输流(Transport Stream,TS)的方式封装数据。每个传输流都携带视频(Video)、音频(Aud1 )等数据信息,以及携带节目关联表(ProgramAssociat1n Table,PAT)、节目映射表(Program Map Table,PMT)等流索引信息。
[0003]HLS协议中支持对传输流的切片进行加密,现有技术中的加密方案是对每个切片都要进行加密,因此该加密方式的运算量较大,接收端在解密时运算量也会相应的增大。因而,现有技术的加密方案,如果要保证传输的质量,要么需要单独的硬件加解密器件支持,要么要求CPU有较强的处理能力。
【发明内容】
[0004]本发明实施例提供一种音视频实时传输方法及装置、音视频实时播放方法及装置,用以解决现有技术中加密及解密的运算量过大的技术问题。
[0005]本发明实施例提供一种音视频实时传输方法,包括:
[0006]将分组的视频原始流以及分组的音频原始流复用后存储为节目切片;
[0007]对节目特定信息进行加密,并存储为节目特定信息切片;
[0008]传输所述节目特定信息及所述节目切片。
[0009]进一步的,所述对节目特定信息进行加密包括对节目关联表和节目映射表加密。
[0010]进一步的,所述将分组的视频原始流以及分组的音频原始流复用后存储为节目切片的步骤之前还包括:
[0011]将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流的步骤。
[0012]进一步的,所述将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流的步骤之前还包括:
[0013]将视频数据及视频数据分别编码及形成所述视频原始流及所述音频原始流的步骤。
[0014]本发明还提供一种音视频实时播放方法,包括:
[0015]下载加密后的节目特定信息切片;
[0016]解密所述加密后的节目特定信息切片,得到解密后的节目特定信息;
[0017]下载节目切片,并根据所述解密后的节目特定信息解析所述节目切片。
[0018]进一步的,所述加密后的节目特定信息切片包括加密后的节目关联表及加密后的节目映射表。
[0019]进一步的,所述解密所述加密后的节目特定信息切片包括:解密所述加密后的节目关联表及加密后的节目映射表。
[0020]本发明提供一种音视频实时传输装置,包括:
[0021 ]加密模块,用于对节目特定信息进行加密,并存储为节目特定信息切片;
[0022]复用器,用于将分组的视频原始流以及分组的音频原始流复用后存储为节目切片;
[0023]传输模块,用于传输所述节目特定信息及所述节目切片。
[0024]进一步的,所述对节目特定信息进行加密包括对节目关联表和节目映射表加密。
[0025]进一步的,还包括视频分组器及音频分组器:
[0026]所述视频分组器,用于将视频原始流打包为分组的视频原始流;
[0027]所述音频分组器,用于将音频原始流打包为分组的音频原始流。
[0028]进一步的,还包括视频编码器和音频编码器:
[0029]所述视频编码器,用于将视频数据编码形成所述视频原始流;
[0030]所述音频编码器,用于将音频数据编码形成所述音频原始流。
[0031 ]本发明提供一种音视频实时播放装置,包括:
[0032]第一下载模块,用于下载加密后的节目特定信息切片;
[0033]解密模块,用于解密所述加密后的节目特定信息切片,得到解密后的节目特定信息;
[0034]第二下载模块,用于下载节目切片,并根据所述解密后的节目特定信息解析所述节目切片。
[0035]进一步的,所述加密后的节目特定信息切片包括加密后的节目关联表及加密后的节目映射表。
[0036]进一步的,所述解密模块还用于解密所述加密后的节目关联表及加密后的节目映射表。
[0037]本发明实施例提供的音视频实时传输方法及装置、音视频实时播放方法及装置,不需要对每个切片都进行加密及解密,可以同时减少传输端的加密运算量,及减少接收端的解密运算量。
【附图说明】
[0038]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0039]图1为现有技术中传输流的切片的格式示意图;
[0040]图2为本发明实施例一种音视频实时传输方法的节目切片的格式示意图;
[0041]图3为本发明实施例一种音视频实时传输方法的节目特定信息切片的格式示意图;
[0042]图4为本发明实施例一种音视频实时传输方法的切片的包的构成示意;
[0043]图5为本发明实施例一种音视频实时传输方法的流程图;
[0044]图6为本发明实施例一种音视频实时播放方法的流程图;
[0045]图7为本发明实施例一种音视频实时传输装置的结构示意图;
[0046]图8为本发明实施例一种音视频实时播放装置的结构示意图。
【具体实施方式】
[0047]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]为更好的说明本发明实施例的技术方案及其所产生的有益效果,本发明将首先介绍现有技术中传输流的切片的格式。
[0049]图1为现有技术中传输流的切片的格式示意图。
[0050]传输流为层次型的封装格式,需要先找到节目关联表,以获取传输流中节目映射表的数量,以此获得传输流中节目的数量,其中每一张节目映射表对应一个节目,然后再根据节目映射表获取节目的视频包标示符(Packet Identif icat1n,PID)和音频包标示符。
[0051]根据HLS协议的规定,一个长时间的节目通常被切割分成多个时长为10秒的切片。因此,现有技术中传输流的切片,为了方便用户随时接收传输流并保证切片中的音视频数据不被盗播,传输端是周期性的将节目关联表和节目映射表插入到传输流的切片中,并且对每一个切片都进行加密;从而导致现有技术中的传输流的切片包括至少两张以上加密过的节目关联表和节目映射表,接收端在接收在接收到切片后同样需要对每一个切片中的所有节目关联表及节目映射表进行解密。
[0052]例如,图1中,一个节目被切割为η个切片,用户A可以从节目关联表I处接收,用户B可以从节目关联表η处接收,以就近找到节目映射表,从而方便直播;由于传输端在传输过程中对节目关联表I至η以及节目映射表I至η均进行了加密,因此接收端在接收到加密的节目关联表I至η以及节目映射表I至η也都需要进行解密。因此,现有技术极大的增加了传输流中的冗余数据。
[0053]本发明的发明人在经过长时间研究后发现在每一个切片中,并不需要周期性的插入节目关联表和节目映射表,而仅需要把节目关联表和节目映射表单独打包并加密,就可以达到既可保持与现有技术中的传输流兼容,又同时减少传输流中的冗余数据的效果。
[0054]以下将对本发明传输流的切片的格式进行说明。
[0055]图2为本发明实施例一种音视频实时传输方法的节目切片的格式示意图。
[0056]本发明实施例中的传输流是一种基于包的流,每一组传输流被分割为若干个切片,需要说明的是图3中仅示出了一个切片的格式,其它切片的格式其实与图2中的切片格式类似。
[0057]本发明实施例中的节目切片包括包1、包2……包η-1、包η,而且每个节目切片均不包括节目关联表和节目映射表。
[0058]图3为本发明实施例一种音视频实时传输方法的节目特定信息切片的格式示意图。
[0059]本实施例中的节目特定信息切片只包括有加密后的节目关联表和节目映射表这两个节目特定信息,而不包含视频数据和音频数据。节目特定信息切片可以将其存储为文件名为init.ts的文件。
[0060]图4为本发明实施例一种音视频实时传输方法的切片的包的构成示意图。
[0061]本实施例中所示出的切片可以是节目特定信息切片也可以是节目切片,每个切片均包括包头和数据,每个包是188个字节或204个字节,其中204个字节的包是在188个字节的包之后加上了 16字节的CRC校验数据形成。
[0062]包头还可以包括扩展的自使用区,包头长度占4个字节,自使用区和包数据共占184个字节。包头包括同步字节、传输误码指示符、有效载荷单元起始指示符、传输优先、包识别符、传输加扰控制、自适应区控制和连续计数器8个部分组成。
[0063]其中,可以通过同步字节的位串的自动相关特性,检测数据流中的包限制,建立包同步;传输误码指示符,是指有不能消除的误码时,采用误码校正解码器可表示I位的误码,但无法校正该误码;有效载荷单元起始指示符,表示该包是否存在确定的起始信息;传输优先用于是给包分配优先权;包标示符值是由用户确定的,由解码器根据包标示符区别不同原始流(Elementary Stream,ES)的包,以重建原始流;传输加扰控制可用于指示包内容是否加扰;自适应区控制是用于表示有否自适应区,通常用2位来表示,比如“01”表示有有用信息,但是无自适应区,“10”表示无有用信息,且有自适应区,“11”表示有有用信息且有自适应区,“00”表示无定义;连续计数器可对包标示符传送顺序计数,根据连续计数器的读数,接收端可以判断是否有包丢失及包传送顺序错误。总而言之,包头对传输流具有同步、识别、检错及加當功能。
[0064]此外,包标示符是传输流中的唯一识别标志,包中的数据内容是由包标示符决定。如果一个传输流中的一个包的包头中的包标示符是0,那么该包的数据内容就是节目关联表,如果不是O,就是视频数据,音频数据,节目映射表,或者是其他类型数据。
[0065]图5为本发明实施例一种音视频实时传输方法的流程图。
[0066]音视频的实时传输包括对视频数据的实时传输和对音频数据的实时传输,因此需要将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流;然后将分组的视频原始流,以及分组的音频原始流复用后存储为节目切片;除此之外,本实施例还需要对节目关联表和节目映射表分别进行加密后打包,具体如下:
[0067]分组的视频原始流的打包的具体步骤如下:
[0068]SlOl:将视频数据编码形成视频原始流(Elementary Stream,ES);
[0069]视频原始流是由编码器输出的原始基础码流,只含有解码器所必需的,并与原始图像相接近的信息。编码后的视频原始流可以是MPEG-2或MPEG-4格式,还可以是H.264格式或者其他格式,本发明对此不作限定。
[°07°] S102:将视频原始流打包为分组的视频原始流(Packet Elemental Stream,PES);[0071 ]分组的视频原始流,是以分割的数据包形式存在,主要是在视频原始流上加了时间戳等对数据帧的说明信息,分组的视频原始流提供标准的包头和打包方法,并提供解码的时间标志。
[0072]分组的音频原始流的打包的具体步骤如下:
[0073]S201:将音频数据编码形成音频原始流;
[0074]数字音频信号如果不加压缩地直接进行传送,将会占用极大的带宽,因此需要采用音频压缩技术对音频数据进行处理,才能有效地传输音频数据。本步骤中的音频编码方式可以是MPEG-1音频编码,也可以是MPEG-2 AAC(Advanced Aud1 Coding)编码,本发明对此不作限定。
[0075]S202:将视频原始流打包为分组的音频原始流。
[0076]音频分组器202把音频原始流分割成段或者是打包成组,并加上相应的头文件打包形成分组的音频原始流,音频原始流的包和包之间可以是不连续的。
[0077]在打包完成分组的视频原始流、分组的音频原始流之后,进入步骤S300;
[0078]S300:将分组的视频原始流和分组的音频原始流复用后存储为节目切片。
[0079]S400为节目特定信息切片的打包,具体为:对节目特定信息进行加密,并存储为节目特定信息切片。对节目特定信息进行加密包括对节目关联表和节目映射表加密。
[0080]最后进入步骤S500:传输节目特定信息及节目切片。
[0081 ]图6为本发明实施例一种音视频实时播放方法的流程图。
[0082]S301:下载加密后的节目特定信息切片;加密后的节目特定信息切片包括加密后的节目关联表及加密后的节目映射表。
[0083]S302:解密所述加密后的节目特定信息切片,得到解密后的节目特定信息;具体而言,解密加密后的节目特定信息切片包括:解密加密后的节目关联表及加密后的节目映射表。
[0084]S303:下载节目切片,并根据所述解密后的节目特定信息解析所述节目切片。解析过程具体为:
[0085]首先,解析节目关联表,以获取节目映射表的包标示符;在本实施例中首先解析包标示符为O的节目关联表,以获取节目映射表的包标示符。
[0086]然后,根据映射表的包标示符搜索节目映射表;在本实施例中,节目映射表的数量等于节目的数量。
[0087]其次,根据节目映射表搜索视频数据的包标示符及音频数据的包标示符;在本实施例中,搜索视频数据的包标示符及音频数据的包标示符就是为了获取视频数据及音频数据。
[0088]最后,根据视频数据的包标示符及音频数据的包标示符,解析视频数据及音频数据。
[0089]上述解析过程是由接收端完成,接收端通常为消费性电子产品,可以为智能电视、机顶盒、投影仪、视频播放器、个人计算机,智能手机,平板电脑等。
[0090]图7为本发明实施例一种音视频实时传输装置的结构示意图。
[0091]本发明实施例的音视频实时传输装置10包括:视频编码器101、音频编码器201、视频分组器102、音频分组器202、复用器300、加密模块400,以及传输模块500。
[0092]由于采集到的视频数据及音频数据均为模拟数据,因此需要进行抽样、量化及压缩编码形成视频原始流及音频原始流,视频原始流及音频原始流是不分段的连续码流。
[0093]视频编码器101用于将视频数据编码形成视频原始流。在本实施例中,视频原始流包括多个访问单元,每一个访问单元是一幅图像的编码数据。本发明的视频编码方式可以采用变换编码、熵编码、运动估计和运动补偿,或者是混合编码方式进行编码,本发明对此不作限定。
[0094]音频编码器201用于将音频数据分别编码形成音频原始流。在本实施例中,数字音频信号如果不加压缩地直接进行传送,将会占用极大的带宽,因此需要采用音频压缩技术对音频数据进行处理,才能有效地传输音频数据。数字音频压缩编码在保证信号在听觉方面不产生失真的前提下,对音频数据信号进行尽可能大的压缩。数字音频压缩编码采取去除声音信号中冗余成分的方法来实现。本发明的音频编码方式可以是波形编码、参数编码,或者混合编码,本发明对此不作限定。
[0095]视频分组器102用于将视频原始流打包为分组的视频原始流。详而言之,视频分组器102把视频原始流分割成段或者是打包成组,并加上相应的头文件打包形成分组的视频原始流,视频原始流的包和包之间可以是不连续的。
[0096]音频分组器202用于将音频原始流打包为分组的音频原始流。详而言之,音频分组器202把音频原始流分割成段或者是打包成组,并加上相应的头文件打包形成分组的音频原始流,音频原始流的包和包之间可以是不连续的。
[0097]复用器300用于将分组的视频原始流以及分组的音频原始流复用后存储为节目切片,以及传输节目特定信息及节目切片。在本实施例中,复用器300在传输时将节目关联表、节目映射表、分组的视频原始流,以及分组的音频原始流打包成固定长度为188字节的切片。
[0098]加密模块400用于对节目特定信息进行加密,并存储为节目特定信息切片。本实施例中对节目特定信息进行加密,包括对节目关联表和节目映射表加密。
[0099]传输模块500用于传输节目特定信息及节目切片。
[0100]本发明实施例提供的上述音视频实时传输装置100在实际应用中可以具体应用于电子设备中,可以通过硬件处理器(hardware processor)来实现相关功能模块,该电子设备通常为各类视频服务器。
[0101]图8为本发明实施例一种音视频实时播放装置的结构示意图。
[0102]本发明实施例一种音视频实时播放装置400包括第一下载模块401、解密模块402,以及第二下载模块403。
[0103]第一下载模块401用于下载加密后的节目特定信息切片;加密后的节目特定信息切片包括加密后的节目关联表及加密后的节目映射表。
[0104]解密模块402用于解密加密后的节目特定信息切片,得到解密后的节目特定信息;由于加密后的节目特定信息切片包括加密后的节目关联表及加密后的节目映射表,因此解密模块402还用于解密加密后的节目关联表及加密后的节目映射表。
[0105]第二下载模块403用于下载节目切片,并根据解密后的节目特定信息解析节目切片。
[0106]通过本发明实施例的上述技术方案,不需要周期性的插入节目关联表和节目映射表,而仅需要把节目关联表和节目映射表单独打包并加密,就可以达到既可保持与现有技术中的传输流兼容,又同时减少传输流中的冗余数据的效果。
[0107]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0108]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0109]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种音视频实时传输方法,其特征在于,包括: 将分组的视频原始流以及分组的音频原始流复用后存储为节目切片; 对节目特定信息进行加密,并存储为节目特定信息切片; 传输所述节目特定信息及所述节目切片。2.根据权利要求1所述的方法,其特征在于, 所述对节目特定信息进行加密包括:对节目关联表和节目映射表加密。3.根据权利要求2所述的方法,其特征在于,所述将分组的视频原始流以及分组的音频原始流复用后存储为节目切片的步骤之前还包括: 将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流的步骤。4.根据权利要求3所述的方法,其特征在于,所述将视频原始流及音频原始流分别打包为分组的视频原始流和分组的音频原始流的步骤之前还包括: 将视频数据及视频数据分别编码及形成所述视频原始流及所述音频原始流的步骤。5.一种音视频实时播放方法,其特征在于,包括: 下载加密后的节目特定信息切片; 解密所述加密后的节目特定信息切片,得到解密后的节目特定信息; 下载节目切片,并根据所述解密后的节目特定信息解析所述节目切片。6.根据权利要求5所述的方法,其特征在于, 所述加密后的节目特定信息切片包括加密后的节目关联表及加密后的节目映射表。7.根据权利要求6所述的方法,其特征在于,所述解密所述加密后的节目特定信息切片包括: 解密所述加密后的节目关联表及加密后的节目映射表。8.一种音视频实时传输装置,其特征在于,包括: 加密模块,用于对节目特定信息进行加密,并存储为节目特定信息切片; 复用器,用于将分组的视频原始流以及分组的音频原始流复用后存储为节目切片; 传输模块,用于传输所述节目特定信息及所述节目切片。9.根据权利要求8所述的装置,其特征在于, 所述对节目特定信息进行加密包括:对节目关联表和节目映射表加密。10.根据权利要求9所述的装置,其特征在于,还包括视频分组器及音频分组器: 所述视频分组器,用于将视频原始流打包为分组的视频原始流; 所述音频分组器,用于将音频原始流打包为分组的音频原始流。11.根据权利要求10所述的装置,其特征在于,还包括视频编码器和音频编码器: 所述视频编码器,用于将视频数据编码形成所述视频原始流; 所述音频编码器,用于将音频数据编码形成所述音频原始流。12.一种音视频实时播放装置,其特征在于,包括: 第一下载模块,用于下载加密后的节目特定信息切片; 解密模块,用于解密所述加密后的节目特定信息切片,得到解密后的节目特定信息;第二下载模块,用于下载节目切片,并根据所述解密后的节目特定信息解析所述节目切片。13.根据权利要求12所述的装置,其特征在于, 所述加密后的节目特定信息切片包括:加密后的节目关联表及加密后的节目映射表。14.根据权利要求13所述的装置,其特征在于,所述解密模块还用于解密所述加密后的节目关联表及加密后的节目映射表。
【文档编号】H04L29/06GK105915493SQ201510886024
【公开日】2016年8月31日
【申请日】2015年12月3日
【发明人】郑吉剑
【申请人】乐视致新电子科技(天津)有限公司