欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种实现低时延超高清直播的流媒体编解码方法和系统独创技术13221字

一种实现低时延超高清直播的流媒体编解码方法和系统

2021-03-30 17:21:40

一种实现低时延超高清直播的流媒体编解码方法和系统

  技术领域

  本发明涉及编解码技术领域,尤其涉及一种实现低时延超高清直播的流媒体编解码方法和系统。

  背景技术

  流媒体是指将一连串的媒体数据压缩后,经过网上分段发送数据,在网上即时传输影音以供观赏的一种技术与过程,此技术使得数据包得以像流水一样发送;如果不使用此技术,就必须在使用前下载整个媒体文件,流式传输可传送现场影音或预存于服务器上的影片,当观看者在收看这些影音文件时,影音数据在送达观看者的计算机后立即由特定播放软件播放

  流媒体编解码就用于流媒体数据进行编码传输解码播放,目前在对流媒体编解码多采用传统的视频编解码方式进行处理,但是进行编码处理缺少对视音频数据进行预处理措施,同时由于数据包到客户的的时间有延迟,在进行解码播放时,由于延迟和抖动影响数据包的顺序,导致流媒体数据不能连续输出,导致播放出现停顿的问题。

  发明内容

  为了实现上述目的,本发明采用了如下技术方案:一种实现低时延超高清直播的流媒体编解码方法,包括以下步骤:

  S1:流媒体文件预处理;对采集的流媒体文件进行预处理,其中流媒体文件预处理包括流媒体文件转换、流媒体文件编辑;

  S2:编码处理;对预处理后的流媒体文件进行编码,其中,编码处理由帧内预测、运动估计、运动补偿、离散余弦变换、量化、块滤波、重排序和熵编码组成;

  S3:流媒体数据传输,编码处理后的流媒体文件采用RTCP/TCP传输至流媒体客户端;

  S4:解码处理;流媒体客户端对接收的流媒体文件进行解码处理,其中,解码处理由熵解码、反量化、反变换、运动补偿、帧内预测和解块滤波组成;

  S5:解码缓冲处理,在流媒体客户端对接收的流媒体文件进行解码处理时实现解码缓冲,弥补延迟抖动影响,并对解码的数据包进行合成,保证数据包顺序正确,使得流媒体数据进行连续输出。

  作为上述技术方案的进一步描述:

  所述步骤S1流媒体文件预处理中流媒体文件转换是将各种格式的视音频媒体文件转换为MWV、RW格式的流媒体文件。

  作为上述技术方案的进一步描述:

  所述步骤S1流媒体文件预处理中流媒体文件编辑是将流媒体文件进行头尾、叠加、马赛克处理等编辑。

  作为上述技术方案的进一步描述:

  所述步骤S4解码处理具体包括以下步骤:

  S2.1:读入第一帧,将其当做I帧,进行帧内编码,然后进行离散余弦变换和量化处理,然后采用Z形扫描将二维的冗余数据转成一维数据,再进行熵编码;

  S2.2:将接下来读入的帧设定为P帧,P帧进行帧间预测,通过帧间预测消除帧与帧在时间上的冗余信息,通过运动估计和运动补偿进行,在对冗余数据块进行离散余弦变换、量化、Z形扫描和熵编码。

  作为上述技术方案的进一步描述:

  所述步骤S5解码缓冲处理具体包括以下步骤:

  S4.1:读入压缩的数据流,以一帧为单位进行熵解码,然后对解码好的数据进行反Z扫描,将一维的冗余数据复现为二维数据块,然后进行反量化和反离散余弦变换,对数据流序列中的第一帧I帧,采用帧内预测的方法对其进行解码,并作为后序帧的参考帧;

  S4.2:对P帧进行解码,进行熵解码、反Z形扫描、反量化、反离散余弦变化,然后结合参考帧对当前帧进行运动补偿,这样,就可以还原好当前帧的数据,完成后解码P帧的过程。

  作为上述技术方案的进一步描述:

  所述步骤S5解码缓冲处理还包括一下步骤:

  S5.1:数据流储存识别;采用环形链表结构对数据流进行处理,并对数据流进行自动识别是否播放;

  S5.2:数据流删除;将播放后的数据流自动进行删除清理,实现重新利用高速缓存空间来缓存后序尚未播放的内容。

  一种实现低时延超高清直播的流媒体编解码系统,包括预处理单元、编码处理单元、数据传输模块、解码处理单元和解码缓冲处理单元;

  所述预处理单元的输出端与编码处理单元输入端连接,且编码处理单元通过数据传输模块与解码处理单元通讯连接,所述解码处理单元输出端与解码缓冲处理单元输入端连接

  所述预处理单元用于对采集的采集的流媒体文件进行预处理,所述编码处理单元用于对预处理后的流媒体文件进行编码处理,所述数据传输模块用于将编码后流媒体文件传输至流媒体客户端并解码处理单元进行解码处理,所述解码缓冲处理单元用于对解码处理单元解码处理的数据包进行缓存处理。

  作为上述技术方案的进一步描述:

  所述预处理单元包括文件转换模块和文件编辑模块;

  所述文件转换模块用于将视音频媒体文件转换为流媒体的文件格式;

  所述文件编辑模块用于对文件进行头尾、叠加、马赛克编辑处理。

  作为上述技术方案的进一步描述:

  所述解码缓冲处理单元包括解码缓存器、合成模块、储存识别模块和删除模块;

  所述储存识别模块用于对解码处理单元解码处理的数据包接根据环形链表结构进行储存在解码缓存器中,并对数据包进行识别;

  所述合成模块用于根据顺序对多个数据包合成视音频对象并进行播放;

  所述删除模块用于对播放后的数据包进行自动删除。

  本发明提供了一种实现低时延超高清直播的流媒体编解码方法和系统,具备以下有益效果:

  该实现低时延超高清直播的流媒体编解码方法和系统在流媒体客户端对接收的流媒体文件进行解码处理时实现解码缓冲,弥补延迟抖动影响,并对解码的数据包进行合成,保证数据包顺序正确,使得流媒体数据进行连续输出,提高播放时的流畅性,并实现对播放后的数据流自动进行删除清理,实现重新利用高速缓存空间来缓存后序尚未播放的内容,提高系统响应的效率,同时实现对视音频数据进行预处理,将各种格式的视音频媒体文件转换为MWV、RW格式的流媒体文件,并进行头尾、叠加、马赛克处编辑处理。

  附图说明

  图1为本发明提出的一种实现低时延超高清直播的流媒体编解码系统的整体示意图;

  图2为本发明中预处理单元的示意图;

  图3为本发明中解码缓冲处理单元的示意图。

  具体实施方式

  下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。

  参照图1-3,一种实现低时延超高清直播的流媒体编解码方法,,包括以下步骤:

  S1:流媒体文件预处理;对采集的流媒体文件进行预处理,其中流媒体文件预处理包括流媒体文件转换、流媒体文件编辑;

  S2:编码处理;对预处理后的流媒体文件进行编码,其中,编码处理由帧内预测、运动估计、运动补偿、离散余弦变换、量化、块滤波、重排序和熵编码组成;

  S3:流媒体数据传输,编码处理后的流媒体文件采用RTCP/TCP传输至流媒体客户端;

  S4:解码处理;流媒体客户端对接收的流媒体文件进行解码处理,其中,解码处理由熵解码、反量化、反变换、运动补偿、帧内预测和解块滤波组成;

  S5:解码缓冲处理,在流媒体客户端对接收的流媒体文件进行解码处理时实现解码缓冲,弥补延迟抖动影响,并对解码的数据包进行合成,保证数据包顺序正确,使得流媒体数据进行连续输出。

  步骤S1流媒体文件预处理中流媒体文件转换是将各种格式的视音频媒体文件转换为MWV、RW格式的流媒体文件。

  步骤S1流媒体文件预处理中流媒体文件编辑是将流媒体文件进行头尾、叠加、马赛克处理等编辑。

  步骤S4解码处理具体包括以下步骤:

  S2.1:读入第一帧,将其当做I帧,进行帧内编码,然后进行离散余弦变换和量化处理,然后采用Z形扫描将二维的冗余数据转成一维数据,再进行熵编码;

  S2.2:将接下来读入的帧设定为P帧,P帧进行帧间预测,通过帧间预测消除帧与帧在时间上的冗余信息,通过运动估计和运动补偿进行,在对冗余数据块进行离散余弦变换、量化、Z形扫描和熵编码。

  步骤S5解码缓冲处理具体包括以下步骤:

  S4.1:读入压缩的数据流,以一帧为单位进行熵解码,然后对解码好的数据进行反Z扫描,将一维的冗余数据复现为二维数据块,然后进行反量化和反离散余弦变换,对数据流序列中的第一帧I帧,采用帧内预测的方法对其进行解码,并作为后序帧的参考帧;

  S4.2:对P帧进行解码,进行熵解码、反Z形扫描、反量化、反离散余弦变化,然后结合参考帧对当前帧进行运动补偿,这样,就可以还原好当前帧的数据,完成后解码P帧的过程。

  步骤S5解码缓冲处理还包括一下步骤:

  S5.1:数据流储存识别;采用环形链表结构对数据流进行处理,并对数据流进行自动识别是否播放;

  S5.2:数据流删除;将播放后的数据流自动进行删除清理,实现重新利用高速缓存空间来缓存后序尚未播放的内容。

  一种实现低时延超高清直播的流媒体编解码系统,包括预处理单元、编码处理单元、数据传输模块、解码处理单元和解码缓冲处理单元;

  预处理单元的输出端与编码处理单元输入端连接,且编码处理单元通过数据传输模块与解码处理单元通讯连接,解码处理单元输出端与解码缓冲处理单元输入端连接

  预处理单元用于对采集的采集的流媒体文件进行预处理,编码处理单元用于对预处理后的流媒体文件进行编码处理,数据传输模块用于将编码后流媒体文件传输至流媒体客户端并解码处理单元进行解码处理,解码缓冲处理单元用于对解码处理单元解码处理的数据包进行缓存处理。

  预处理单元包括文件转换模块和文件编辑模块;文件转换模块用于将视音频媒体文件转换为流媒体的文件格式;文件编辑模块用于对文件进行头尾、叠加、马赛克编辑处理。

  解码缓冲处理单元包括解码缓存器、合成模块、储存识别模块和删除模块;储存识别模块用于对解码处理单元解码处理的数据包接根据环形链表结构进行储存在解码缓存器中,并对数据包进行识别;合成模块用于根据顺序对多个数据包合成视音频对象并进行播放;删除模块用于对播放后的数据包进行自动删除。

  实现在流媒体客户端对接收的流媒体文件进行解码处理时实现解码缓冲,弥补延迟抖动影响,并对解码的数据包进行合成,保证数据包顺序正确,使得流媒体数据进行连续输出,提高播放时的流畅性,并实现对播放后的数据流自动进行删除清理,实现重新利用高速缓存空间来缓存后序尚未播放的内容,提高系统响应的效率,同时实现对视音频数据进行预处理,将各种格式的视音频媒体文件转换为MWV、RW格式的流媒体文件,并进行头尾、叠加、马赛克处编辑处理。

  在本说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料过着特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

  以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

《一种实现低时延超高清直播的流媒体编解码方法和系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)