一种码率控制方法、装置、设备及可读存储介质制造方法及图纸

技术编号:38870077 阅读:13 留言:0更新日期:2023-09-22 14:07
本申请公开了一种码率控制方法、装置、设备及可读存储介质,涉及多媒体通信技术领域,以节约比特资源。该方法包括:在对屏幕内容序列进行编码时,确定目标画面组的目标滑动窗口对应的比特数;在所述目标滑动窗口内,为当前帧预分配比特数,得到预分配结果;根据所述预分配结果,预测所述当前帧编码完成之后缓存器的饱和度;若所述饱和度不满足预设条件,调整所述当前帧对应的比特数,直至所述饱和度满足所述预设条件;在所述饱和度满足所述预设条件的情况下,确定所述当前帧中的目标LCU对应的比特数。本申请实施例可以节约比特资源。本申请实施例可以节约比特资源。本申请实施例可以节约比特资源。

【技术实现步骤摘要】
一种码率控制方法、装置、设备及可读存储介质


[0001]本申请涉及多媒体通信
,尤其涉及一种码率控制方法、装置、设备及可读存储介质。

技术介绍

[0002]屏幕内容的码率控制算法目前大致分为三类,帧间码控优化、帧内码控优化、率失真优化等。
[0003]不同于自然视频序列,屏幕内容序列往往具有大幅度、高频率的场景变化特性。在场景切换发生时,由于对当前场景内的图像缺乏可参考依据,因此,编码往往采用帧内模式。但是,这种方式会消耗较多的比特资源。

技术实现思路

[0004]本申请实施例提供一种码率控制方法、装置、设备及可读存储介质,以节约比特资源。
[0005]第一方面,本申请实施例提供了一种码率控制方法,包括:
[0006]在对屏幕内容序列进行编码时,确定目标画面组的目标滑动窗口对应的比特数;
[0007]在所述目标滑动窗口内,为当前帧预分配比特数,得到预分配结果;
[0008]根据所述预分配结果,预测所述当前帧编码完成之后缓存器的饱和度;
[0009]若所述饱和度不满足预设条件,调整所述当前帧对应的比特数,直至所述饱和度满足所述预设条件;
[0010]在所述饱和度满足所述预设条件的情况下,确定所述当前帧中的目标LCU(Largest Coding Unit,最大编码单元)对应的比特数。
[0011]第二方面,本申请实施例还提供一种码率控制装置,包括:
[0012]第一确定模块,用于在对屏幕内容序列进行编码时,确定目标画面组的目标滑动窗口对应的比特数;
[0013]第一分配模块,用于在所述目标滑动窗口内,为当前帧预分配比特数,得到预分配结果;
[0014]第一预测模块,用于根据所述预分配结果,预测所述当前帧编码完成之后缓存器的饱和度;
[0015]第一处理模块,用于若所述饱和度不满足预设条件,调整所述当前帧对应的比特数,直至所述饱和度满足所述预设条件;
[0016]第二分配模块,用于在所述饱和度满足所述预设条件的情况下,确定所述当前帧中的目标最大编码单元LCU对应的比特数。
[0017]第三方面,本申请实施例还提供一种电子设备,包括:收发机、存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如上所述的方法中的步骤。
[0018]第四方面,本申请实施例还提供一种可读存储介质,所述可读存储介质上存储程序,所述程序被处理器执行时实现如上所述的方法中的步骤。
[0019]在本申请实施例中,通过对目标画面组的目标滑动窗口、目标滑动窗口内的帧以及各帧的LCU分配比特数。在确定当前帧预分配的比特数时,结合为当前帧预分配的比特数以及基于预分配结果预测的当前帧编码完成之后缓存器的饱和度,调整当前帧预分配的比特数。因此,通过这种自反馈的比特数分配方式,使得码率控制过程中,帧的自身特性与编码参数更加匹配,避免了编码过程中缓存器出现比特溢出和空间浪费,进而避免了出现码率失控的现象,节约了比特资源。
附图说明
[0020]图1是本申请实施例提供的码率控制方法的流程图;
[0021]图2(a)和图2(b)是本申请实施例提供的搜索最佳匹配块的示意图;
[0022]图3是本申请实施例提供的码率控制装置的结构图。
具体实施方式
[0023]本申请实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0024]本申请实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
[0025]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0026]参见图1,图1是本申请实施例提供的码率控制方法的流程图,如图1所示,包括以下步骤:
[0027]步骤101、在对屏幕内容序列进行编码时,确定目标画面组的目标滑动窗口对应的比特数。
[0028]其中,所述目标画面组可以是屏幕内容序列中的任一画面组,目标滑动窗口可以是目标画面组中的任一滑动窗口。
[0029]在本申请实施例中,将比特分配划分成GOP(Group of Pictures,画面组)级、帧级以及LCU级三个层级,分别对每个层级采用相应的比特分配方案,使得码率控制过程中帧的自身特性与编码参数更加匹配,尽可能兼顾视频质量与传输效率,避免出现码率失控现象。
[0030]对于GOP级,使用滑动窗口比特分配方式进行比特分配,从而将码率分配误差平均至后续帧中,避免资源浪费。
[0031]在此步骤中,获取第一参数,其中,所述第一参数包括:滑动窗口的长度,目标比特率和所述屏幕内容序列的帧率。之后,根据所述第一参数,确定目标画面组的目标滑动窗口对应的比特数。
[0032]其中,所述滑动窗口的长度为预设的滑动窗口长度和所述屏幕内容序列中当前未编码的帧数之间的最小值。屏幕内容序列中当前未编码的帧数,指的是在对当前滑动窗口
进行比特数分配时,屏幕内容序列中编码的帧数。具体的,表示为:
[0033]N
SW
=min(SW,Pic
left
)
ꢀꢀꢀ
(1)
[0034]其中,N
SW
表示在编码过程中滑动窗口的长度;SW为预设的滑动窗口长度,通常可设置为8;Pic
left
表示屏幕内容序列中当前未编码的帧数。
[0035]初始化阶段,在此步骤中,可按照如下方式下述公式,根据所述第一参数,确定目标画面组的目标滑动窗口对应的比特数:
[0036][0037]其中,T
SW
表示所述目标滑动窗口对应的比特数,N
sw
、R
tar
、F分别表示所述滑动窗口的长度、所述目标比特率和所述屏幕内容序列的帧率。
[0038]可选的,为了实现对码率的准确控制,在所述当前帧编码完成之后,还可更新所述目标滑动窗口对应的比特数。
[0039]具体的,获取更新参数,所述更新参数包括第一比特数、第二比特数、所述当前帧编码完成之后,所述屏幕内容序列未编码的帧数;其中,所述第一比特数表示所述当前帧编码完成之后,所述目标滑动窗口内剩余的比特数;所述第二比特数表示所述屏幕内容序列剩余的比特数。之后,根据所述更新参数,更新所述目标滑动窗口对应的比特数。
[0040]例如,按照如下公式,根据所述更新参数,更新所述目标滑动窗口对应的比特数:
[0041][0042]其中,T
SW1
表示所述目标滑动窗口更新后的比特数,T
SWl本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种码率控制方法,其特征在于,包括:在对屏幕内容序列进行编码时,确定目标画面组的目标滑动窗口对应的比特数;在所述目标滑动窗口内,为当前帧预分配比特数,得到预分配结果;根据所述预分配结果,预测所述当前帧编码完成之后缓存器的饱和度;若所述饱和度不满足预设条件,调整所述当前帧对应的比特数,直至所述饱和度满足所述预设条件;在所述饱和度满足所述预设条件的情况下,确定所述当前帧中的目标最大编码单元LCU对应的比特数。2.根据权利要求1所述的方法,其特征在于,所述确定目标画面组的目标滑动窗口对应的比特数,包括:获取第一参数,其中,所述第一参数包括:滑动窗口的长度,目标比特率和所述屏幕内容序列的帧率;根据所述第一参数,确定目标画面组的目标滑动窗口对应的比特数。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:在所述当前帧编码完成之后,更新所述目标滑动窗口对应的比特数。4.根据权利要求2或3所述的方法,其特征在于,所述滑动窗口的长度为预设的滑动窗口长度和所述屏幕内容序列中当前未编码的帧数之间的最小值。5.根据权利要求2或3所述的方法,其特征在于,按照下述公式,根据所述第一参数,确定目标画面组的目标滑动窗口对应的比特数:其中,T
SW
表示所述目标滑动窗口对应的比特数,N
sw
、R
tar
、F分别表示所述滑动窗口的长度、所述目标比特率和所述屏幕内容序列的帧率。6.根据权利要求3所述的方法,其特征在于,所述更新所述目标滑动窗口对应的比特数,包括:获取更新参数,所述更新参数包括第一比特数、第二比特数、所述当前帧编码完成之后,所述屏幕内容序列未编码的帧数;其中,所述第一比特数表示所述当前帧编码完成之后,所述目标滑动窗口内剩余的比特数;所述第二比特数表示所述屏幕内容序列剩余的比特数;根据所述更新参数,更新所述目标滑动窗口对应的比特数。7.根据权利要求6所述的方法,其特征在于,按照如下公式,根据所述更新参数,更新所述目标滑动窗口对应的比特数:其中,T
SW1
表示所述目标滑动窗口更新后的比特数,T
SWleft
表示所述第一比特数,R
left
表示所述第二比特数,F
left
表示所述当前帧编码完成之后,所述屏幕内容序列未编码的帧数。8.根据权利要求1所述的方法,其特征在于,在所述目标滑动窗口内,为当前帧预分配比特数,得到预分配结果,包括:
获取所述当前帧对应的复杂度;根据所述当前帧对应的复杂度、所述目标滑动窗口内所有帧对应的复杂度之和以及所述目标滑动窗口分配的比特数,为当前帧预分配比特数,得到预分配结果。9.根据权利要求8所述的方法,其特征在于,所述获取所述当前帧对应的复杂度,包括:对于所述当前帧中的每一LCU,利用模板在参考帧上搜索所述每一LCU的最佳匹配块;计算所述每一LCU与对应的最佳匹配块之间的绝对误差值和SAD;利用各所述SAD的和作为所述当前帧对应的复杂度。10.根据权利要求8所述的方法,其特征在于,按照下述公式,根据所述当前帧对应的复杂度、所述目标滑动窗口内所有帧对应的复杂度之和以及所述目标滑动窗口分配的比特数,为当前帧预分配比特数,得到预分配结果:其中,T
curPic
表示当前帧预分配的比特数,C
SW
表示所述目标滑动窗口内所有帧对应的复杂度之和,C
cur
表示所述当前帧对应的复杂度,T
SW
表示所述目标滑动窗口分配的比特数。11.根据权利要求8或9或10所述的方法,其特征在于,所述方法还包括:根据所述当前帧对应的复杂度,对所述当前帧进行分类。12.根据权利要求11所述的方法,...

【专利技术属性】
技术研发人员:刘诣荣陈望都谢于贵王一兆唐靓园
申请(专利权)人:咪咕文化科技有限公司中国移动通信集团有限公司北京邮电大学
类型:发明
国别省市:

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

1