数据编解码的方法和系统技术方案

技术编号:23102036 阅读:40 留言:0更新日期:2020-01-14 21:10
本发明专利技术公开了一种数据编解码的方法和系统。其中,该方法包括:依据参考帧对待编码帧进行编码,得到待传输码流,其中,待传输码流包括:第一图片标识,第一图片标识用于表示待编码帧;依据待传输码流中的第一图片标识码和参考帧的第二图片标识码生成码流信息;对待传输码流进行封装,并依据码流信息生成扩展头,得到待传输数据包。本发明专利技术解决了由于传输过程中丢包导致的解码过程中降低了终端视频显示帧率的技术问题。

Method and system of data encoding and decoding

【技术实现步骤摘要】
数据编解码的方法和系统
本专利技术涉及图像技术应用领域,具体而言,涉及一种数据编解码的方法和系统。
技术介绍
在实时音视频通信中,普遍采用实时传输协议标准(realtimetransportprotocal,简称RTP)传输视频流,视频压缩格式为利用到硬件特性,尤其是针对移动互联网,一般采用视频编码标准H264/AVC编码压缩:其中,H264标准中的参考帧关系通过较为复杂的逻辑来保证编解码器的一致,涉及到解码图片缓存区(decodedpicturebuffer,DPBbuffer)中参考帧的标记操作,参考帧列表重排指令,不能简单的通过解析码流获得,尤其当输入给解码器的码流不完整,很难正确解码;另外,实时通信为提高时效性,降低传输延时,一般采用用户数据报协议(UserDatagramProtocol,简称udp),而wifi,4g等移动网络非常不稳定丢包时有发生,当丢包发生时,RTP包序号将发生大概率不连续的现象,如果判断为丢包发生,在接收端侧将认为码流不完整而不接码,进而降低了视频播放帧率;如果不判断,收到多少码流就直接送给解码器,错误的码流播放会出现马赛克等很差的视频体验,甚至导致一些解码器直接崩溃退出应用;这种由于网络丢包导致的用户体验差针对多人实时视频通信场景更加严重,多人场景广泛应用选择性转发单元(SelectiveForwardingUnit,简称SFU)进行媒体包转发,当通信上行发生丢包时,SFU如果根据序列号判断为丢包不转发,那么通信中断,如果只做简单的转发,不判断当前流是否可以有效解码,则浪费了传输带宽,降低了传输效率。其中,在webrtc开源中,当接收到视频帧时,强制要求都是连续的才认为是可正确解码帧,这种强制关系导致其中有一帧丢了,则丢失帧后面的所有帧直到下一个关键帧被判断为无效帧,而实际上丢失帧后面可能会有很多可以正确解码的帧,大大降低了终端视频显示帧率;即,如果第1、17、33…帧是关键帧(间隔16帧),那么,如果第2帧丢失了,则2-16帧都被判断为无效帧,直至遇到下一个关键帧17才会被认为是可以正确解码的帧,而实际上,第2帧之后的3-16帧其实都是可以正确解码的帧。针对上述由于传输过程中丢包导致的解码过程中降低了终端视频显示帧率的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种数据编解码的方法和系统,以至少解决由于传输过程中丢包导致的解码过程中降低了终端视频显示帧率的技术问题。根据本专利技术实施例的一个方面,提供了一种数据编码的方法,包括:依据参考帧对待编码帧进行编码,得到待传输码流,其中,待传输码流包括:第一图片标识,第一图片标识用于表示待编码帧;依据待传输码流中的第一图片标识码和参考帧的第二图片标识码生成码流信息;对待传输码流进行封装,并依据码流信息生成扩展头,得到待传输数据包。可选的,依据参考帧对待编码帧进行编码,得到待传输码流包括:在以距离待编码帧最近的帧为参考帧的情况下,依据距离待编码帧最近的帧为参考帧对待编码帧进行编码,得到待传输码流。进一步地,可选的,依据距离待编码帧最近的帧为参考帧对待编码帧进行编码包括:获取待编码帧的预设数位单调递增的图片标识码,其中,图片标识码,用于标记待编码帧;依据图片标识码得到参考帧的图片标识码;依据待编码帧的图片标识码和参考帧的图片标识码对待编码帧进行编码,得到待传输码流。可选的,依据码流信息生成扩展头包括:获取码流信息中的第一图片标识码和第二图片标识码之间的参考帧图片标识关系;依据码流信息中的第一图片标识码和参考帧图片标识关系,生成扩展头。进一步地,可选的,获取码流信息中的第一图片标识码和第二图片标识码之间的参考帧图片标识关系包括:获取第一图片标识码和第二图片标识码之间的图片标识残差;将图片标识残差确定为参考帧图片标识关系。可选的,依据参考帧对待编码帧进行编码,得到待传输码流包括:在以距离待编码帧相隔预设位的帧为参考帧的情况下,依据距离待编码帧相隔预设位的帧为参考帧对待编码帧进行编码,得到待传输码流。根据本专利技术实施例的另一方面,还提供了一种数据解码的方法,包括:接收待传输数据包;解析待传输数据包,得到扩展头;依据扩展头获取参考帧,并依据参考帧进行解码,得到待显示码流。可选的,依据扩展头获取参考帧,并依据参考帧进行解码,得到待显示码流包括:获取扩展头中的参考帧;判断是否接收到所有的参考帧;在判断结果为是的情况下,依据参考帧进行解码,得到待显示码流。根据本专利技术实施例的又一方面,还提供了一种数据编码的装置,包括:编码模块,用于依据参考帧对待编码帧进行编码,得到待传输码流,其中,待传输码流包括:第一图片标识,第一图片标识用于表示待编码帧;信息生成模块,用于依据待传输码流中的第一图片标识码和参考帧的第二图片标识码生成码流信息;打包模块,用于对待传输码流进行封装,并依据码流信息生成扩展头,得到待传输数据包。根据本专利技术实施例的再一方面,还提供了一种数据解码的装置,包括:接收模块,用于接收待传输数据包;解析模块,用于解析待传输数据包,得到扩展头;解码模块,用于依据扩展头获取参考帧,并依据参考帧进行解码,得到待显示码流。根据本专利技术另一实施例的一方面,还提供了一种数据编解码的系统,包括:数据编码设备、数据解码设备和转发设备,其中,数据编码设备,用于依据参考帧对待编码帧进行编码,得到待传输码流,其中,待传输码流包括:第一图片标识,第一图片标识用于表示待编码帧;依据待传输码流中的第一图片标识码和参考帧的第二图片标识码生成码流信息;对待传输码流进行封装,并依据码流信息生成扩展头,得到待传输数据包;数据解码设备,用于接收待传输数据包;解析待传输数据包,得到扩展头;依据扩展头获取参考帧,并依据参考帧进行解码,得到待显示码流;转发设备,分别与数据编码设备和数据解码设备连接,用于当接收到序列号不连续的待传输数据包时,解析待传输数据包中的扩展头,将待传输数据包中存在有效解码帧的码流确定为能正确解码的码流,并转发码流。根据本专利技术另一实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行:依据参考帧对待编码帧进行编码,得到待传输码流,其中,待传输码流包括:第一图片标识,第一图片标识用于表示待编码帧;依据待传输码流中的第一图片标识码和参考帧的第二图片标识码生成码流信息;对待传输码流进行封装,并依据码流信息生成扩展头,得到待传输数据包。根据本专利技术另一实施例的又一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行:依据参考帧对待编码帧进行编码,得到待传输码流;依据待传输码流中的第一图片标识码和参考帧的第二图片标识码生成码流信息;对待传输码流进行封装,并依据码流信息生成扩展头,得到待传输数据包。在本专利技术实施例中,采用提取参考帧关系的方式,通过依据参考帧对待编码帧进行编码,得到待传输码流,其中,待传输码流包括:第一图片标识,第一图片标识用于表示待编码帧;依据待传输码流中的第一图本文档来自技高网
...

【技术保护点】
1.一种数据编码的方法,包括:/n依据参考帧对待编码帧进行编码,得到待传输码流,其中,所述待传输码流包括:第一图片标识,所述第一图片标识用于表示所述待编码帧;/n依据所述待传输码流中的第一图片标识码和所述参考帧的第二图片标识码生成码流信息;/n对所述待传输码流进行封装,并依据所述码流信息生成扩展头,得到待传输数据包。/n

【技术特征摘要】
1.一种数据编码的方法,包括:
依据参考帧对待编码帧进行编码,得到待传输码流,其中,所述待传输码流包括:第一图片标识,所述第一图片标识用于表示所述待编码帧;
依据所述待传输码流中的第一图片标识码和所述参考帧的第二图片标识码生成码流信息;
对所述待传输码流进行封装,并依据所述码流信息生成扩展头,得到待传输数据包。


2.根据权利要求1所述的数据编码的方法,其中,所述依据参考帧对待编码帧进行编码,得到待传输码流包括:
在以距离所述待编码帧最近的帧为参考帧的情况下,依据所述距离所述待编码帧最近的帧为参考帧对所述待编码帧进行编码,得到所述待传输码流。


3.根据权利要求2所述的数据编码的方法,其中,所述依据所述距离所述待编码帧最近的帧为参考帧对所述待编码帧进行编码包括:
获取所述待编码帧的预设数位单调递增的图片标识码,其中,所述图片标识码,用于标记所述待编码帧;
依据所述图片标识码得到所述参考帧的图片标识码;
依据所述待编码帧的图片标识码和所述参考帧的图片标识码对所述待编码帧进行编码,得到所述待传输码流。


4.根据权利要求1所述的数据编码的方法,其中,所述依据所述码流信息生成扩展头包括:
获取所述码流信息中的所述第一图片标识码和所述第二图片标识码之间的参考帧图片标识关系;
依据所述码流信息中的所述第一图片标识码和所述参考帧图片标识关系,生成所述扩展头。


5.根据权利要求4所述的数据编码的方法,其中,所述获取所述码流信息中的所述第一图片标识码和所述第二图片标识码之间的参考帧图片标识关系包括:
获取所述第一图片标识码和所述第二图片标识码之间的图片标识残差;
将所述图片标识残差确定为所述参考帧图片标识关系。


6.根据权利要求1所述的数据编码的方法,其中,所述依据参考帧对待编码帧进行编码,得到待传输码流包括:
在以距离所述待编码帧相隔预设位的帧为参考帧的情况下,依据所述距离所述待编码帧相隔预设位的帧为参考帧对所述待编码帧进行编码,得到所述待传输码流。


7.一种数据解码的方法,包括:
接收待传输数据包;
解析所述待传输数据包,得到扩展头;
依据所述扩展头获取参考帧,并依据所述参考帧进行解码,得到待显示码流。


8.根据权利要求...

【专利技术属性】
技术研发人员:朱玲张俊韶俞人杰华大
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1