有实时码率控制的媒体流编码方法及其系统技术方案

技术编号:7839793 阅读:180 留言:0更新日期:2012-10-12 07:21
本发明专利技术涉及数字图像处理领域,公开了一种有实时码率控制的媒体流编码方法及其系统。可以避免编码跳帧造成的视音频数据解码播放不同步的问题。本发明专利技术中,包括以下步骤:对媒体流进行编码时,如果判定当前编码帧需要进行跳帧处理,则生成一个特殊帧作为该当前编码帧的编码结果插入到媒体流中,其中,该特殊帧中的所有宏块都按照跳过的宏块模式进行编码。

【技术实现步骤摘要】

本专利技术涉及数字图像处理领域,特别涉及一种数字图像的码率控制技术。
技术介绍
视频压缩中的码率控制,一般是通过帧级或宏块级的码率控制算法调整量化参数(quantization parameter,简称“QP”)进而控制编码码率的大小,实现编码比特数和分配的编码比特数相一致。在一些对编码器输出码率严格要求恒定的应用中,如果输入图像的场景变化剧烈或图像输入噪声突然变大,单独调整量化参数是不能及时、有效地对编码输出码率进行控制的,会造成码流缓冲区溢出或者有效数据被覆盖。一般的处理方法是编码器自适应的跳 帧,通过降低帧率来降低编码码率。但在同时进行音视频编码的产品和应用中,跳帧会造成音视频解码播放不同步的问题。专利申请号为200680013747. 4的中国专利所公布的为用于速率受控视频编码的自适应跳帧技术中,根据图像的量化参数和运动矢量信息来选择哪些编码帧可以直接跳过。目前,跳过一帧的做法就是不对这一帧编码,或者即使已进行了编码也会丢弃这一帧。本专利技术的专利技术人发现,这种以丢弃的方式进行跳帧的做法会导致视频和音频不同步。因为视频中少了一巾贞,但这一巾贞对应的音频信号还在。除了上述问题,200680013747. 4进一步的问题是,这个技术需要计算每巾贞图像全部宏块的运动矢量信息,并在多个预选帧内进行排序,选择出跳过编码的帧。这导致运算资源消耗量大,无法用于实时性要求高的设备和应用中。专利申请号为200910050424.8的中国专利所公布的一种适用于实时应用的H.264码率控制方法中,根据缓冲区的饱和度来判断当前编码帧是否进行跳帧操作。这个技术最大的问题是出于低延时和成本的考虑,编码器的码流缓冲区的大小是有严格限制的。一旦在缓冲区的饱和度较低的情况下,发生场景切换或者图像运动剧烈情况,而编码的量化参数没有及时加大,编码比特数会增加很多,把缓冲区的饱和度急剧抬升,在接下来的编码过程中,为了降低缓冲区的饱和度,会发生连续跳帧的问题。这会造成图像解码播放卡顿的问题。
技术实现思路
本专利技术的目的在于提供一种有实时码率控制的媒体流编码方法及其系统,可以避免编码跳帧造成的视音频数据解码播放不同步的问题。为解决上述技术问题,本专利技术的实施方式公开了一种有实时码率控制的媒体流编码方法,包括以下步骤对媒体流进行编码时,如果判定当前编码帧需要进行跳帧处理,则生成一个特殊帧(本专利技术中又称为S帧)作为该当前编码帧的编码结果插入到媒体流中,其中,该特殊帧中的所有宏块都按照跳过的宏块模式进行编码。本专利技术的实施方式还公开了一种有实时码率控制的媒体流编码系统,包括判断单元,用于对媒体流进行编码时判定当前编码帧是否需要进行跳帧处理;编码单元,用于判断单元判定当前编码帧需要进行跳帧处理时,生成一个特殊帧作为该当前编码帧的编码结果插入到媒体流中,其中,该特殊帧中的所有宏块都按照跳过的宏块模式进行编码。本专利技术实施方式与现有技术相比,主要区别及其效果在于跳帧处理时生成一个特殊帧作为该当前编码帧的编码结果插入到媒体流中进行编码,无需用户动态的调整编码帧率设置,没有减少实际编码帧数,可以避免编码跳帧造成 的视音频数据解码播放不同步的问题。特殊帧只需要熵编码环节进行简单操作即可,不需要其它宏块编码操作,因此计算资源消耗很少,即使编码后进行特殊帧编码操作,对设备的性能影响也很小。进一步地,控制连续特殊帧操作的数目,在不同的量化参数空间,采用不同的最大连续特殊帧数目阈值,有效解决图像解码播放的卡顿现象。进一步地,控制帧编码比特数最大使用阈值,在不同的量化参数空间,选取不同的经验系数。尽可能的在小量化参数空间不进行编码后特殊帧操作,尽可能的保留图像序列的有效信息。进一步地,若当前编码P帧采用特殊帧模式进行编码,在对实时码率控制所使用的算法的虚拟缓冲区进行更新时,不使用实际特殊帧的编码比特数,利用目标编码比特数target_frame_size进行更新,可以避免缓冲区饱和度突然降低,从而减小下一编码巾贞的量化参数。进一步地,如果当前P帧采用的是编码后特殊帧操作,则在下一编码P帧量化参数的计算在正常处理的基础上加上一个经验系数(对于札264是加5),可以解决场景切换或图像剧烈运动等情况下,量化参数选择调整不够迅速的问题。附图说明图I是本专利技术第一实施方式中一种有实时码率控制的媒体流编码方法的流程示意图;图2是本专利技术第二实施方式中一种有实时码率控制的媒体流编码方法的流程示意图;图3是本专利技术第四实施方式中一种有实时码率控制的媒体流编码系统的结构示意图。具体实施例方式在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术的实施方式作进一步地详细描述。本专利技术第一实施方式涉及一种有实时码率控制的媒体流编码方法。图I是该有实时码率控制的媒体流编码方法的流程示意图。在步骤101中,判断当前编码帧是否需要进行跳帧处理,若是,则进入步骤102 ;否则进入步骤103。在现有技术中,跳帧处理是指跳过指定的帧,直接放弃这一帧,在输出的媒体流中这一帧空缺。现有技术中已经有不少判断是否需要进行跳帧处理的判断方法,例如根据图像的量化参数和运动矢量信息来选择哪些编码帧可以直接跳过,或者根据缓冲区的饱和度来判断当前编码帧是否进行跳帧操作等等。在步骤102中,生成一个特殊帧(本申请中简称为“S帧”)作为该当前编码帧的编码结果插入到媒体流中,其中,该特殊帧中的所有宏块都按照跳过的宏块模式进行编码。此后回到步骤101,对下一帧进行判断。 跳过的宏块(skipped macroblock)是除“跳过”指示外,无其它编码数据的宏块,是一种特殊的宏块帧间编码模式,宏块的纹理信息和运动矢量信息都不进行编码操作,解码器会根据参考帧和其它周围的宏块解码信息完成跳过宏块的解码操作。在需要跳帧时,不是对当前帧不进行编码操作,而是对当前帧宏块编码类型全部按照跳过的宏块模式进行编码,这样在媒体流中没有帧的缺失,跳帧处理不会减少实际编码帧数,解码端不需要为视频帧率调整做额外的工作以解决视音频数据解码播放不同步的问题。因为全部按照跳过的宏块模式进行编码的帧结构简单,只需要很小的运算资源即可完成,完全可以满足实时码率控制的要求,特别适合运算能力不强的移动终端。在步骤103中,对当前编码帧进行正常编码,将编码结果插入到媒体流中。此后回到步骤101,对下一帧进行判断。跳帧处理时生成一个特殊帧作为该当前编码帧的编码结果插入到媒体流中进行编码,无需用户动态的调整编码帧率设置,没有减少实际编码帧数,可以避免编码跳帧造成的视音频数据解码播放不同步的问题。1080p分辨率的高清图像,H264编码一般码率最低设置为4Mbps (—秒钟编码器编码数据的比特数),25帧/秒,I帧间隔设置为25,平均一个帧的编码字节数目大概是20,00字节的样子。采用S帧模式编码,只需要32个字节即可。所以可以有效地降低编码比特数。本专利技术第二实施方式涉及一种有实时码率控制的媒体流编码方法。图2是该有实时码率控制的媒体流编码方法的流程示意图。第二实施方式本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种有实时码率控制的媒体流编码方法,其特征在于,包括以下步骤 对媒体流进行编码时,如果判定当前编码帧需要进行跳帧处理,则生成一个特殊帧作为该当前编码帧的编码结果插入到媒体流中,其中,该特殊帧中的所有宏块都按照跳过的宏块模式进行编码。2.根据权利要求I所述的有实时码率控制的媒体流编码方法,其特征在于,在所述如果判定当前编码帧需要进行跳帧处理,则生成一个特殊帧作为该当前编码帧的编码结果插入到媒体流中的步骤之前,包括以下步骤 判断当前编码帧及其最近连续帧的参数是否满足第一条件; 若满足第一条件,则判定为当前编码帧需要进行跳帧处理; 若不满足第一条件,则对当前编码帧正常编码,并判断当前正常编码帧及其最近连续帧的参数是否满足第二条件,若满足第二条件,则对当前正常编码帧,丢弃已编码的数据,并判定当前编码帧需要进行跳帧处理。3.根据权利要求2所述的有实时码率控制的媒体流编码方法,其特征在于,所述第一条件包括 当前编码帧为P帧;和 当前编码帧所使用的量化系数大于量化系数的门限;和 当前编码帧的最近连续帧所使用的量化系数均值大于量化系数的门限;和 平均的帧编码比特数大于目标编码比特数。4.根据权利要求3所述的有实时码率控制的媒体流编码方法,其特征在于,所述第一条件还包括 已连续跳过的帧数小于连续跳过的帧数阈值。5.根据权利要求2所述的有实时码率控制的媒体流编码方法,其特征在于,所述第二条件包括 当前正常编码帧的实际编码比特数大于帧编码比特数阈值;和 当前正常编码帧为P帧;和 已连续跳过的帧数小于连续跳过的帧数阈值。6.根据权利要求I至5中任意一条所述的有实时码率控制的媒体流编码方法,其特征在于,所述生成一个特殊帧作为该当前编码帧的编码结果插入到媒体流中的步骤...

【专利技术属性】
技术研发人员:梁铁俞海贾永华
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:

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

1