System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种低码率视频传输流复用及解复用方法技术_技高网

一种低码率视频传输流复用及解复用方法技术

技术编号:40753182 阅读:5 留言:0更新日期:2024-03-25 20:08
本发明专利技术公开了一种低码率视频传输流复用及解复用方法,属于音视频传输流复用技术领域。包括:接收视频数据;构建自定义码流,得到新的视频数据帧;如果当前所述新的视频数据帧是I帧,则将该所述新的视频数据帧单独按照基本码流PES格式打包复用;如果当前所述新的视频数据帧为非I帧,则根据预先构建的视频传输流复用模型,得到最优复用帧数n;将包含当前所述新的视频数据帧在内的连续n帧所述新的视频数据帧合并打包复用;重复上述步骤直至完成所有所述新的视频数据帧的打包复用,最后封装输出。本发明专利技术通过在每个视频帧前增加一个自定义码流,然后建立模型寻找最优合并帧数进行合并,减小了每帧无意义的填充数据,提高了传输效率。

【技术实现步骤摘要】

本专利技术涉及音视频传输流复用,涉及一种低码率视频传输流复用及解复用方法


技术介绍

1、mpeg-2系统是将视频、音频及其它数据基本流(es:elementary stream)组合成一个或多个用于存储或传输的数据流规范,如图1所示。es码流再经过打包后输出的是打包基本流(称为pes:packetized elementary stream)。pes的包长度可变的,视频通常是一帧(即一幅图像)一个包;音频包长度通常为一个音频帧,不超过64kb。pes再经过复用器打包,可形成两种不同的码流,即节目流(ps:program stream)和传输流(ts:transportstream)。

2、在低码率视频编码系统中,由于码率非常低,每帧的数据量很少,很多情况在100个字节以内。由于mpeg系统层规定视频把一帧(即一幅图像)封装一个包,这样视频的pes包长度也很小,往往还凑不齐一个188ts包,因此需要填充无意义的数据,满足最小ts包封装要求。由于填充无意义的数据,造成了无效视频码率开销,通常在20kbps左右,最高可达30kbps左右。对于设定码率32kbps的视频,无效码率将增加60%~90%另外开销,极大影响了传输效率。


技术实现思路

1、针对现有技术存在的问题,本专利技术提出了一个低码率视频高效传输流复用方法,在每个视频帧前增加一个自定义码流,寻找最优合并帧数,将多个视频帧打包封装成一个pes包,减小了每帧无意义的填充数据,提高了传输效率。解复用时,能够根据解析自定义码流恢复多帧pes包中每帧复用前对应的pts和dts,完成解复用。

2、为了达到上述目的,本专利技术提供了一种低码率视频传输流复用方法,包括如下步骤:

3、(1)接收视频数据;

4、(2)构建自定义码流,针对每一帧所述视频数据,其前面插入所述自定义码流,得到新的视频数据帧;

5、(3)如果当前所述新的视频数据帧是i帧,则将该所述新的视频数据帧独立与其时间信息按照基本码流pes格式打包复用,得到i帧pes包;

6、(4)如果当前所述新的视频数据帧为非i帧,则根据预先构建的视频传输流复用模型,得到用于复用的所述新的视频数据帧的最优复用帧数n;将包含当前所述新的视频数据帧在内的连续n帧所述新的视频数据帧合并,与其时间信息按照pes格式打包复用,得到非i帧pes包;

7、(5)将完成pes包打包后的第一帧所述新的视频数据帧作为新的当前所述新的视频数据帧,重复步骤(3)、(4),直至完成所有所述新的视频数据帧的打包复用,最后将各个pes包进行ts包封装输出。

8、进一步的,所述自定义码流的负载数据为:

9、ub=poc-poci+bf+1

10、其中:ub为所述自定义码流的负载数据;poci、poc分别表示i帧和当前帧的解码帧显示顺序;bf表示编码时候b帧的最大数量。

11、进一步的,所述自定义码流的负载数据占用一个字节。

12、进一步的,所述视频传输流复用模型具体为:

13、接收包括当前帧在内的n帧所述新的视频数据帧进入复用缓冲区,n>1;

14、针对所述复用缓冲区的每一帧所述新的视频数据帧,分别计算ri和di:

15、ri=(l+f1+f2…+fi)%t

16、di=((t-ri)%t)/i

17、其中:i=2~n;t表示ts包用于负载数据的字节数;l表示pes包头数据长度;fi表示第i帧所述新的视频数据帧的数据量;di表示前i帧所述新的视频数据帧按照pes格式打包复用后平均每帧的填充数据量;%是求余数运算,/是浮点数除法,min是求最小值运算;

18、针对n-1个di值,找到其最小值时对应的i值记为n,即:

19、dn=min(di)

20、则将n帧所述新的视频数据帧中的前n帧进行合并复用。

21、进一步的,所述接收包括当前帧在内的n帧所述新的视频数据具体为:

22、定义所述复用缓冲区帧数为m,则n小于或者等于m;

23、若包含当前所述新的视频数据帧在内的连续m帧均为非i帧,则将此m帧所述新的视频数据帧输入所述预先构建的视频传输流复用模型的复用缓冲区,n=m;

24、若当前所述新的视频数据帧到下一个i帧之间的帧数大于1小于m,则将从当前所述新的视频数据帧开始到下一个i帧前的所述新的视频数据帧输入所述预先构建的视频传输流复用模型的复用缓冲区,n为从当前所述新的视频数据帧到下一个i帧之间的帧数;

25、若包含当前所述新的视频数帧在内的剩余帧数大于1小于m,且均为非i帧,则将剩余的所述新的视频数据输入所述预先构建的视频传输流复用模型的复用缓冲区,n为剩余的非i帧帧数;

26、若当前所述新的视频数据帧为所述新的视频数据帧的最后一帧或者其下一帧为i帧,则构造一个空帧,仅包含所述自定义码流,其ub设为一特定值,将当前所述新的视频数据帧和空帧输入所述预先构建的视频传输流复用模型的复用缓冲区,n=2。

27、进一步的,所述空帧的自定义码流的负载数据ub设置为0。

28、进一步的,所述时间信息包括显示时间标签pts和解码时间标签dts信息;

29、所述i帧pes包的时间信息中的pts和dts信息为该i帧对应的pts和dts;

30、所述非i帧pes包中时间信息中的pts和dts信息为该pes包所含多个所述新的视频数据帧中的第一帧的pts和dts信息。

31、本专利技术还提供了一种低码率视频传输流解复用方法,包括:

32、(1)接收复用后的视频pes包,每一个所述pes包中包含的每一个视频数据帧前均插有一个自定义码流;

33、(2)针对每一个所述pes包,解析其时间信息得到pts和dts,并统计其包含的所述自定义码流的个数;

34、(3)若当前所述pes包中仅包含一个所述自定义码流,则该pes包为独立的i帧数据包,得到的所述pts和dts为该i帧的pts和dts;

35、(4)若当前所述pes包中包含多于一个所述自定义码流,则该pes包为合并帧数据包,得到的所述pts和dts就是所述合并帧中第一帧的pts1和dts1,解析该pes包中每一帧所述视频数据的自定义码流的负载数据,进而得到每一帧的ptsi和dtsi,将该pes包进行解复用。

36、进一步的,所述自定义码流的负载数据为:

37、ub=poc-poci+bf+1

38、其中:ub为所述自定义码流的负载数据;poci、poc分别表示i帧和当前帧的解码帧显示顺序;bf表示编码时候b帧的最大数量。

39、进一步的,所述步骤(4)中得到每一帧的ptsi和dtsi具体为:

40、(4.1)根据所述合并帧中第一帧的pts1和dts1计算所述视频数据帧间隔时间;本文档来自技高网...

【技术保护点】

1.一种低码率视频传输流复用方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的低码率视频传输流复用方法,其特征在于,所述自定义码流的负载数据为:

3.根据权利要求2所述的低码率视频传输流复用方法,其特征在于:所述自定义码流的负载数据占用一个字节。

4.根据权利要求1所述的低码率视频传输流复用方法,其特征在于,所述视频传输流复用模型具体为:

5.根据权利要求4所述的低码率视频传输流复用方法,其特征在于,所述接收包括当前帧在内的N帧所述新的视频数据具体为:

6.根据权利要求1所述的低码率视频传输流复用方法,其特征在于:所述空帧的自定义码流的负载数据UB设置为0。

7.根据权利要求1所述的低码率视频传输流复用方法,其特征在于:所述时间信息包括显示时间标签PTS和解码时间标签DTS信息;所述I帧PES包的时间信息中的PTS和DTS信息为该I帧对应的PTS和DTS;

8.一种低码率视频传输流解复用方法,其特征在于,包括:

9.根据权利要求8所述的低码率视频传输流复用方法,其特征在于,所述自定义码流的负载数据为:

10.根据权利要求8所述的低码率视频传输流复用方法,其特征在于,所述步骤(4)中得到每一帧的PTSi和DTSi具体为:

...

【技术特征摘要】

1.一种低码率视频传输流复用方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的低码率视频传输流复用方法,其特征在于,所述自定义码流的负载数据为:

3.根据权利要求2所述的低码率视频传输流复用方法,其特征在于:所述自定义码流的负载数据占用一个字节。

4.根据权利要求1所述的低码率视频传输流复用方法,其特征在于,所述视频传输流复用模型具体为:

5.根据权利要求4所述的低码率视频传输流复用方法,其特征在于,所述接收包括当前帧在内的n帧所述新的视频数据具体为:

6.根据权利要求1所述的低码率视频传输流复用方法,...

【专利技术属性】
技术研发人员:李国平侯世维范涛王国中商习武沈怡君
申请(专利权)人:上海工程技术大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1