[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN105208390B - 视频编码的码率控制方法及其系统 - Google Patents

视频编码的码率控制方法及其系统 Download PDF

Info

Publication number
CN105208390B
CN105208390B CN201410308573.0A CN201410308573A CN105208390B CN 105208390 B CN105208390 B CN 105208390B CN 201410308573 A CN201410308573 A CN 201410308573A CN 105208390 B CN105208390 B CN 105208390B
Authority
CN
China
Prior art keywords
code stream
frame
bit rate
frames
coded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410308573.0A
Other languages
English (en)
Other versions
CN105208390A (zh
Inventor
党韩兵
万建军
钱学锋
徐宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANGHAI FULHAN MICROELECTRONICS Co Ltd
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
SHANGHAI FULHAN MICROELECTRONICS Co Ltd
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANGHAI FULHAN MICROELECTRONICS Co Ltd, Hangzhou Hikvision Digital Technology Co Ltd filed Critical SHANGHAI FULHAN MICROELECTRONICS Co Ltd
Priority to CN201410308573.0A priority Critical patent/CN105208390B/zh
Publication of CN105208390A publication Critical patent/CN105208390A/zh
Application granted granted Critical
Publication of CN105208390B publication Critical patent/CN105208390B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及码率控制,公开了一种视频编码的码率控制方法及其系统。根据码流输出信息预测信道带宽以相应地调整编码码率,使得在信道带宽受限且易变的场景下也能较好地对输出延迟进行控制,满足低延迟应用场景需求。本发明包括步骤:预测当前信道带宽;依据当前信道带宽预测值分配目标码率;根据分配的目标码率,以往已编码帧的码流大小和编码图像复杂度计算得到相应的量化参数;根据量化参数对待编码图像进行编码处理,输出编码码流,并输出当前已编码帧的码流大小和编码图像复杂度;码流输出缓冲区根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息进行输出延时控制。

Description

视频编码的码率控制方法及其系统
技术领域
本发明涉及码率控制,特别涉及视频编码的码率控制方法及其系统。
背景技术
本发明涉及码率控制,特别涉及视频编码的码率控制方法及其系统。目前安防监控对网络摄像机的需求日渐增强,网络摄像机是传统摄像机与网络技术相结合的新一代产品,主要涉及的技术包含图像处理技术、视频编码技术和网络技术。与传统的模拟摄像机相比网络摄像机主要的弊病之一是系统延迟较大。
码率控制是视频编码的核心技术之一,也是延迟控制的主要手段之一,现有的码率控制方法,例如,MPEG-2标准的测试模型5(“Test Model 5”,简称“TM5”),H.263标准的测试模型8(“Test Model Near 8”,简称“TMN8”),MPEG-4标准的验证模型8(“VerificationModel Version 8”,简称“VM8”),H.264标准的码率控制模型(JVT-G012),都能对编码器的输出码率较好地进行控制。但是,现有的码率控制方法的不足之处在于:
1、I帧量化参数简单的采用事先定好的值,未考虑场景的相关性,码率可控性差,在带宽受限制的环境下输出延迟不可控。
2、码率控制体系对于信道带宽变化的适应性差,在信道带宽受限且易变的应用场景下,编码的输出延迟无法保障。
3、码流输出缓冲和码率控制的关联度弱,码率控制方法未充分利用码流缓冲的和信道带宽的信息控制输出延迟,对环境的变化反映迟钝。
4、未考将帧率变换纳入码率控制体系,简单的采用溢出丢帧策略,因此帧率变换的效果较差。
总之,现有的码率控制方法基于理想信道模型建立,在信道受限且易变的场景下对输出延迟的控制较差,难以满足低延迟应用场景的需求。
现有的码率控制装置,如图1所示,包括虚拟缓冲管理单元103、目标码率运算单元102、量化参数运算单元104和图像编码单元101。现有的码率控制方法基于理想的信道模型建立,在信道带宽充足的情况下效果尚可,在带宽受限且易变的环境下效果较差,尤其是输出延迟得不到保障,不能满足低延迟的应用场景的需求。
发明内容
本发明的目的在于提供一种视频编码的码率控制方法及其系统,根据码流输出信息预测信道带宽以相应地调整编码码率,使得在信道带宽受限且易变的场景下也能较好地对输出延迟进行控制,能够满足低延迟应用场景的需求。
为解决上述技术问题,本发明的实施方式公开了一种视频编码的码率控制方法,包括以下步骤:
根据码流输出缓冲区以往的码流输出信息预测当前信道带宽;
依据当前信道带宽预测值为待编码图像分配目标码率;
根据分配的目标码率,以往已编码帧的码流大小和编码图像复杂度计算得到相应的量化参数,编码图像复杂度包括MAD值,MAD值为输入图像和预测图像的平均绝对差值;
根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度;
码流输出缓冲区接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息。
本发明的实施方式还公开了一种视频编码的码率控制系统,包括:
信道带宽预测模块,用于根据码流输出缓冲区以往的码流输出信息预测当前信道带宽;
目标码率分配模块,用于依据当前信道带宽预测值为待编码图像分配目标码率;
量化参数计算模块,用于根据分配的目标码率,以往已编码帧的码流大小和编码图像复杂度计算得到相应的量化参数,编码图像复杂度包括MAD值,所述MAD值为输入图像和预测图像的平均绝对差值;
图像编码模块,用于根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度值;
输出延时控制模块,用于在码流输出缓冲区接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息。
本发明实施方式与现有技术相比,主要区别及其效果在于:
根据码流输出信息预测信道带宽以相应地调整编码码率,使得在信道带宽受限且易变的场景下也能较好地对输出延迟进行控制,能够满足低延迟应用场景的需求。
根据码流输出信息预测信道带宽以相应地调整编码码率,使得在信道带宽受限且易变的场景下也能较好地对输出延迟进行控制,能够满足低延迟应用场景的需求。
进一步地,码流输出缓冲延迟控制方法综合分析信道带宽、码流输出缓冲状态和目标码流,提供一种延迟控制决策,有效地降低输出延迟过大的风险。
进一步地,根据信道带宽的预测值动态地调整虚拟缓冲区容量,用调整后的虚拟缓冲区满度来指导目标码率的分配,保证了码率的波动相对于信道带宽波动的比例维持不变,有利于控制输出延迟。
进一步地,根据信道带宽的状况和编码图像失真量,自适应的调节编码帧率,能够优化编码图像的质量。
进一步地,根据已编码的I帧和P帧的码流大小和量化参数计算I帧和P帧的复杂度,能够保证I帧码率分配可控制。
附图说明
图1是现有技术中的码率控制装置示意图;
图2是本发明第一实施方式中一种视频编码的码率控制方法的流程示意图;
图3是本发明第二实施方式中一种视频编码的码率控制方法中输出延迟控制方法的流程示意图;
图4是本发明第六实施方式中一种视频编码的码率控制系统的结构示意图;
图5是本发明第十实施方式中一种视频编码的码率控制系统的结构示意图。
具体实施方式
在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
本发明第一实施方式涉及一种视频编码的码率控制方法,图2是该视频编码的码率控制方法的流程示意图。
具体地说,该视频编码的码率控制方法包括以下步骤:
在步骤201中,根据码流输出缓冲区以往的码流输出信息预测当前信道带宽。
其中,码流输出缓冲区的码流输出信息包括输出的码流的比特数和物理码流缓冲区非空的时间。
此后进入步骤202,依据当前信道带宽预测值为待编码图像分配目标码率。
此后进入步骤203,根据分配的目标码率,以往已编码帧的码流大小和编码图像复杂度计算得到相应的量化参数,编码图像复杂度包括MAD值。
此外,可以理解,MAD值为输入图像和预测图像的平均绝对差值。
在本发明的其他实施方式中,也可以采用其他反映编码图像复杂度的统计值来计算量化参数,例如SSD(差值的平方和),SATD(哈达玛变换绝对和)等,能反映输入图像和预测图像差异大小的统计方法均可,而不局限于MAD值。其中,编码图像复杂度表示编码输入图像和预测图像差异大小(即编码前图像和预测图像的差异)。
此后进入步骤204,根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度。
此后进入步骤205,码流输出缓冲区接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息。
其中,码流输出缓冲区的码流驻留信息包括编码帧码流大小和编码帧帧率。
根据码流输出信息预测信道带宽以相应地调整编码码率,使得在信道带宽受限且易变的场景下也能较好地对输出延迟进行控制,能够满足低延迟应用场景的需求。
本发明第二实施方式涉及一种视频编码的码率控制方法,第二实施方式在第一实施方式的基础上进行了改进,主要改进之处在于:码流输出缓冲延迟控制方法综合分析信道带宽、码流输出缓冲状态和目标码流,提供一种延迟控制决策,有效地降低输出延迟过大的风险。
具体地说,首先,在根据码流输出缓冲区以往的码流输出信息预测当前信道带宽的步骤201中,采用线性预测方法预测当前信道带宽,该方法包括以下子步骤:
计算第n帧的时间段内的信道输出带宽C[n],C[n]由下式确定:
其中output_bits[n]为第n帧实际输出码流的比特数,valid_time[n]为第n帧物理码流缓冲区非空的时间;
利用前向m+1帧的信道带宽预测第n+1帧的信道速率Cp[n+1]:
Cp[n+1]=a1·(m+1)+a2
其中,m为偶数,a1和a2为预测模型的模型参数,分别由下式确定:
在本发明的其他实施方式中,也可以使用滑动窗口平均、IIR迭代计算等常用的信道带宽预测方法,并不局限于线性预测法预测信道带宽。
其次,优选地,在码流输出缓冲区接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息的步骤205中,即码流输出缓冲延迟控制包括以下子步骤:
根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算码流输出缓冲区中各已驻留编码帧的输出延迟;
依次判断码流输出缓冲区中已驻留编码帧的输出延迟是否满足延迟溢出条件;
若满足延迟溢出条件,则在所有满足延迟溢出条件的已驻留编码帧中,将序号最小的帧标记为最早延迟帧。若都不满足延迟溢出条件,则结束此流程;
计算码流输出缓冲区中从最早延迟帧往前所有已驻留编码帧重启I帧的时间;
依次判断已驻留编码帧重启I帧的时间是否满足I帧的重启条件;
若满足重启条件,则在所有满足I帧的重启条件的已驻留编码帧中,将序号最大的帧标记为最迟重启帧。若都不满足重启条件,则结束此流程;
执行输出延迟控制操作,将码流输出缓冲区中从最迟重启帧开始的码流丢弃。
优选地,在步骤205中,还包括子步骤:将当前帧强制为I帧,输出I帧强制信号;
相应地,在依据当前信道带宽预测值为待编码图像分配目标码率的步骤202中,目标码率被设置为将当前帧强制为I帧时的预分配目标码率;
相应地,在根据分配的目标码率,以往已编码帧的编码图像复杂度和码流大小计算得到相应的量化参数的步骤203中,I帧强制信号和分配的目标码率,编码图像复杂度,码流大小一起用于量化参数的计算。
优选地,根据分配的目标码率,以往已编码帧的编码图像复杂度和码流大小计算得到相应的量化参数的步骤203包括以下子步骤:
判断I帧强制信号是否为真;
如果I帧强制信号为真,则将所保存的上一个I帧的量化参数作为当前量化参数;
否则根据各已编码帧的编码图像复杂度和码流大小所对应的量化参数建立率失真模型和编码图像复杂度预测模型并获取模型参数,根据模型参数和目标码率计算得到量化参数。
码流输出缓冲延迟控制方法是当输出信道带宽变化时,避免码流输出缓冲已驻留的码流对输出延迟造成过大影响的一种方法。作为本发明的优选实施例,本发明提供的输出延迟控制方法,如图3所示,共分为七个步骤:
步骤301:输出缓冲已驻留编码帧的输出延迟计算。这里假定码流输出缓冲中有m帧驻留,各帧的序号依次为n-m+1到n,其中第n帧为最近编码帧,各编码帧的码流的大小记为:A[i],其中i∈[n-m+1,n],各编码帧对应的帧率记为:Fr[i],其中i∈[n-m+1,n]。
输出缓冲驻留的各编码帧输出延迟的计算方法如下:
其中,j为各帧的序号,取值范围为i∈[n-m+1,n],Dout[j]为各帧的输出延迟,该延迟细分为两部分:第一部分是编码的码流在缓冲区已驻留时间第二部分是预计输出时间取决于当前信道预测带宽以及前向累积的码流数目。
步骤302:输出缓冲中延迟溢出判断。延迟溢出判断的条件如下式:
Dout[j]>TDelay·γ1
其中,TDelay为目标延迟,γ1为大于等于1的常量(推荐值为1.25),当输出延迟大于γ1倍的目标延迟TDelay,则延迟溢出。依次对码流缓冲中驻留的编码帧做上述判断,如果无满足上述条件的驻留帧则无需进行输出缓冲延迟控制操作,否则进入步骤303。
步骤303:最早延迟溢出帧的寻找。步骤302中所有满足条件的帧中序号最小的帧即为最早延迟帧,该帧的序号记为k。
步骤304:计算k帧往前所有帧重启I帧的时间。具体的计算方法如下式:
其中,TrI[n+1]为假定第n+1帧作为I帧的预分配目标码率,DrestartI[j]即为输出缓冲中第j帧的重启时间(j∈(n-m+1,k])。
步骤305:I帧的重启条件的判断。从第k帧到第n-m+2帧依次做如下判断:
DrestartI[j]<Dout[k]·γ2
其中,γ2为小于等于1的常量(推荐为0.8),如果找不到j满足上述条件,则无需进行输出缓冲延迟控制操作,否则进入步骤306。
步骤306:最迟重启帧的寻找。步骤305中满足条件的各帧,序号最大的即为最迟重启帧,将该帧序号记为p。
步骤307:输出延迟控制操作的执行。输出延迟的操作包含两个方面,一方面将码流缓冲区中从重启帧开始的码流丢弃(也就是从p到n帧的码流),另一方面将当前帧(即第n+1帧)强制为I帧,且目标码率设置为TrI[n+1]。
本发明第三实施方式涉及一种视频编码的码率控制方法。第三实施方式在第一实施方式的基础上进行了改进,主要改进之处在于:
根据信道带宽的预测值动态地调整虚拟缓冲区容量,用调整后的虚拟缓冲区满度来指导目标码率的分配,保证了码率的波动相对于信道带宽波动的比例维持不变,有利于控制输出延迟。
具体地说,在依据当前信道带宽预测值为待编码图像分配目标码率的步骤202之前,还包括步骤:
根据信道带宽预测值和以往已编码帧的码流大小计算虚拟缓冲区的满度;
相应地,在依据当前信道带宽预测值为待编码图像分配目标码率的步骤202中,虚拟缓冲区的满度和当前信道带宽预测值一起用于目标码率的分配。
优选地,在根据信道带宽预测值和以往已编码帧的码流大小计算虚拟缓冲区的满度的步骤中,包括子步骤:
对虚拟缓冲区进行动态容量调整,动态调整下缓冲区容量为
Vsize[n+1]=Cp[n+1]·δ·TDelay·Fr[n+1];
其中,Cp[n+1]和Fr[n+1]分别为第n+1帧信道带宽预测值和帧率,δ为常量;
根据信道带宽预测值和以往已编码帧的码流大小计算得到的第n+1帧虚拟缓冲区满度为:
其中,A[i]为第i帧实际编码的码率大小,Cp[i]和Fr[i]分别为第i帧的信道带宽预测值和帧率。
本发明第四实施方式涉及一种视频编码的码率控制方法,第四实施方式在第三实施方式的基础上进行了改进,主要改进之处在于:
根据信道带宽的状况和编码图像失真量,自适应的调节编码帧率,以优化编码图像的质量。
具体地说,在根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度的步骤204中,还包括子步骤:输出编码图像失真量。
可以理解,编码图像失真量是编码后图像和编码前图像的差异。值得注意的是,编码图像失真量和上述的“编码图像复杂度”是不同的概念,编码图像复杂度是编码前图像和预测图像的差异,可以用MAD和SSD等度量。
相应地,在依据当前信道带宽预测值为待编码图像分配目标码率的步骤202之前,还包括步骤:根据编码图像失真量和信道带宽预测值计算编码帧率。
相应地,在依据当前信道带宽预测值为待编码图像分配目标码率的步骤202中,计算得到的编码帧率和当前信道带宽预测值以及虚拟缓冲区的满度一起用于目标码率的分配。
此外,在根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度的步骤204中,待编码图像是根据该编码帧率进行过图像输入处理的。
其中,优选地,在根据编码图像失真量和信道带宽预测值计算编码帧率的步骤中,包括以下子步骤:
建立利用帧率估计编码图像失真量的模型,并根据编码图像失真量评价编码图像的质量;
根据帧率评价视频流畅度;
综合考虑编码图像的质量和视频流畅度来评价视频整体质量,找到使得视频整体质量最大的帧率。
作为本发明的优选例,为计算编码帧率给出了一种视频质量评价的方法,和现有的方法相比,本发明给出的方法综合考虑了编码图像的质量和视频的流畅度,具体计算方法如下式:
Quality[n]=f(Ddist[n])·μ+g(Fr[n])
其中,Ddist[n]和Fr[n]分别为图像编码失真量和帧率,f(Ddist[n])是图像质量评价指标,g(Fr[n])是视频流畅度评价指标,μ为加权因子,Quality[n]即为视频的质量。
f(Ddist[n])的一种实施方法如下式:
其中,α1为常量(推荐为0.18)。
g(Fr[n])的一种实施方法如下式:g(Fr[n])=ln(α2·Fr[n]),
其中,α2为常量(推荐为0.25)。
本发明给出了一种利用帧率估计编码图像失真量的方法:
其中,k为模型参数,依据前向编码帧的码率和失真量计算得到。
在信道受限的情况下视频的质量的计算方法如下式:
满足最大和最小帧率的限制且使得Quality[n]最大的Fr[n],即为最优的帧率。
本发明第五实施方式涉及一种视频编码的码率控制方法。第五实施方式在第四实施方式的基础上进行了改进,主要改进之处在于:
根据已编码的I帧和P帧的码流大小和量化参数计算I帧和P帧的复杂度,能够保证I帧码率分配可控制。
具体地说,在依据当前信道带宽预测值为待编码图像分配目标码率的步骤202之前,还包括步骤:
根据以往已编码帧的码流大小和相应的量化参数计算复杂度因子。
相应地,在依据当前信道带宽预测值为待编码图像分配目标码率的步骤202中,计算得到的复杂度因子和当前信道带宽预测值,编码帧率,以及虚拟缓冲区的满度一起用于目标码率的分配。
对于I帧,所述复杂度因子为αI=W·Fgop/(Fgop+W-1),
对于P帧,所述复杂度因子为αP=Fgop/(Fgop+W-1);
其中Fgop为图像组大小,Fgop等于1时默认为全I帧;
W为I帧复杂度WI和P帧复杂度WP的比例,
其中,L是用户指定的大于1的参数,用于控制I帧码率的最大值;
CLIP函数定义为:
假定第n帧为I帧,则I帧复杂度WI为:WI=A[n]·Q[n];
其中,A[n]和Q[n]分别为实际码率和实际的平均量化值;
P帧复杂度WP为:
如果Fgop等于1,则Wp=WI
如果Fgop大于1,则
其中,m=Min(Fgop-1,4),即取Fgop-1和4的较小值。
此外,可以理解,这里,L是用户指定参数(大于1)用于控制I帧码率的最大值,从而避免I帧而引入过大延迟。
优选地,在依据当前信道带宽预测值为待编码图像分配目标码率的步骤202中,根据当前信道带宽预测值,编码帧率,虚拟缓冲区的满度和复杂度因子为待编码图像分配目标码率,I帧和P帧的码率分配分别为:
TrI[n]=Gf[n]·(αI·Cp[n]+D[n]),
TrP[n]=Gf[n]·(αP·Cp[n]+D[n]);
其中,Gf[n]为虚拟缓冲调节增益值,αI和αP分别为I帧和P帧的复杂度因子,Cp[n]为信道带宽预测值,D[n]为码率分配误差调节值;
Gf[n]为虚拟缓冲调节增益值,
Bf[n]为第n帧虚拟缓冲的满度,β为大于等于1的强度调节因子;
D[n]是目标码率分配和实际码率分配误差调节值,D[n]由下式确定:
其中,第n帧引入的误差d[n]为:
其中,Tr[n]为目标码率,A[n]为实际编码码率,Cp[n]为信道带宽预测值,C[n]为信道带宽实际值,Fr[n]为帧率。
此外,可以理解,Bf[n]为第n帧虚拟缓冲的满度,β为大于等于1的强度调节因子(推荐值为1.5),β越大Gf[n]随Bf[n]的变化越迅速,反之,越迟缓,当满度小于0.5时Gf[n]大于1,更趋向分配更多的码率,满度大于0.5时Gf[n]小于1,更趋向分配较少的码率,当满度为0.5时Gf[n]的值恒等于1,因此采用Gf[n]调整参数的目的是使虚拟缓冲的满度趋向于0.5,也就是将虚拟缓冲中的码流满度维持在一半的水平。
D[n]是目标码率分配和实际码率分配误差的补偿量,使目标码率的分配更合理,减少信道速率预测、码率分配误差的影响,并将这些影响由平均到后续的M帧中(M为用户指定参数)。
本发明的各方法实施方式均可以以软件、硬件、固件等方式实现。不管本发明是以软件、硬件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(Programmable ArrayLogic,简称“PAL”)、随机存取存储器(Random Access Memory,简称“RAM”)、可编程只读存储器(Programmable Read Only Memory,简称“PROM”)、只读存储器(Read-Only Memory,简称“ROM”)、电可擦除可编程只读存储器(ElectrIcally Erasable Programmable ROM,简称“EEPROM”)、磁盘、光盘、数字通用光盘(Digital Versatile Disc,简称“DVD”)等等。
本发明第六实施方式涉及一种视频编码的码率控制系统,图4是该视频编码的码率控制系统的结构示意图。
具体地说,该视频编码的码率控制系统包括:
信道带宽预测模块,用于根据码流输出缓冲区以往的码流输出信息预测当前信道带宽;
目标码率分配模块,用于依据当前信道带宽预测值为待编码图像分配目标码率;
量化参数计算模块,用于根据分配的目标码率,以往已编码帧的码流大小和编码图像复杂度计算得到相应的量化参数,编码图像复杂度包括MAD值,所述MAD值为输入图像和预测图像的平均绝对差值;
图像编码模块,用于根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度值;
输出延时控制模块,用于在接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息。
根据码流输出信息预测信道带宽以相应地调整编码码率,使得在信道带宽受限且易变的场景下也能较好地对输出延迟进行控制,能够满足低延迟应用场景的需求。
第一实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
本发明第七实施方式涉及一种视频编码的码率控制系统,第七实施方式在第六实施方式的基础上进行了改进,主要改进之处在于:该视频编码的码率控制系统码流输出缓冲延迟控制方法综合分析信道带宽、码流输出缓冲状态和目标码流,提供一种延迟控制决策,有效地降低输出延迟过大的风险。
具体地说,输出延时控制模块包括以下子模块:
输出延时计算子模块,用于根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算码流输出缓冲区中各已驻留编码帧的输出延迟;
延迟溢出判断子模块,用于依次判断码流输出缓冲区中已驻留编码帧的输出延迟是否满足延迟溢出条件;
延迟溢出处理子模块,用于若满足延迟溢出条件,则在所有满足延迟溢出条件的已驻留编码帧中,将序号最小的帧标记为最早延迟帧。若都不满足延迟溢出条件,则结束此流程;
I帧重启时间判断子模块,用于计算码流输出缓冲区中从最早延迟帧往前所有已驻留编码帧重启I帧的时间。并依次判断已驻留编码帧重启I帧的时间是否满足I帧的重启条件;
I帧重启时间处理子模块,用于若满足重启条件,则在所有满足I帧的重启条件的已驻留编码帧中,将序号最大的帧标记为最迟重启帧;若都不满足重启条件,则结束此流程;
输出延迟执行子模块,用于执行输出延迟控制操作,将码流输出缓冲区中从最迟重启帧开始的码流丢弃。
优选地,输出延时控制模块还包括I帧强制子模块,用于将当前帧强制为I帧,输出I帧强制信号;
相应地,在目标码率分配模块中,目标码率被设置为将当前帧强制为I帧时的预分配目标码率;
相应地,在量化参数计算模块中,I帧强制信号和分配的目标码率,编码图像复杂度,码流大小一起用于量化参数的计算。
第二实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
本发明第八实施方式涉及一种视频编码的码率控制系统。第八实施方式在第七实施方式的基础上进行了改进,主要改进之处在于:该视频编码的码率控制系统根据信道带宽的预测值动态地调整虚拟缓冲区容量,用调整后的虚拟缓冲区满度来指导目标码率的分配,保证了码率的波动相对于信道带宽波动的比例维持不变,有利于控制输出延迟。
具体地说,该码率控制系统还包括虚拟缓冲管理模块,用于根据信道带宽预测值和以往已编码帧的码流大小计算虚拟缓冲区的满度。
相应地,在目标码率分配模块中,虚拟缓冲区的满度和当前信道带宽预测值一起用于目标码率的分配。
第三实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第三实施方式互相配合实施。第三实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第三实施方式中。
本发明第九实施方式涉及一种视频编码的码率控制系统。第九实施方式在第八实施方式的基础上进行了改进,主要改进之处在于:该视频编码的码率控制系统根据信道带宽的状况和编码图像失真量,自适应的调节编码帧率,能够优化编码图像的质量。
具体地说,在图像编码模块中,还包括编码图像失真计算子模块,用于输出编码图像失真量。
相应地,码率控制系统还包括编码帧率计算模块,用于根据编码图像失真量和信道带宽预测值计算编码帧率。
相应地,在目标码率分配模块中,计算得到的编码帧率和当前信道带宽预测值以及虚拟缓冲区的满度一起用于目标码率的分配。
此外,在图像编码模块中,输入的待编码图像是根据该编码帧率进行过图像输入处理的。
第四实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第四实施方式互相配合实施。第四实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第四实施方式中。
本发明第十实施方式涉及一种视频编码的码率控制系统。第十实施方式在第九实施方式的基础上进行了改进,主要改进之处在于:该视频编码的码率控制系统根据已编码的I帧和P帧的码流大小和量化参数计算I帧和P帧的复杂度,能够保证I帧码率分配可控制。
具体地说,该码率控制系统还包括:复杂度因子运算模块,用于根据以往已编码帧的码流大小和相应的量化参数计算复杂度因子。
相应地,在目标码率分配模块中,计算得到的复杂度因子和当前信道带宽预测值,编码帧率,以及虚拟缓冲区的满度一起用于目标码率的分配。
作为本发明的优选例,码率控制装置如图5所示,包含图像输入处理单元、图像编码单元、码流输出缓冲管理单元、信道带宽预测运算单元、虚拟缓冲管理单元、目标码流控制单元、编码帧率运算单元、量化参数运算单元和复杂度因子运算单元。
单元501:图像输入处理单元,用于对输入图像进行处理。该单元根据编码帧率的要求为图像编码单元提供待编码图像。
单元502:图像编码单元,用于对待编码图像进行编码处理。该单元根据量化参数运算单元输出的量化参数对输入图像进行编码处理,输出编码的码流、码流大小、MAD值(平均绝对差值)和编码图像失真量。其中码流送给码流输出缓冲管理单元做进一步处理,码流大小分别送给复杂度因子运算单元、量化参数运算单元和虚拟缓冲管理单元做进一步处理,MAD值送给量化参数运算单元做进一步处理,编码图像失真量送给编码帧率运算单元做进一步处理。
单元503:码流输出缓冲管理单元(即输出延时控制模块),用于码流的存储、输出管理以及延迟管理。该单元从图像编码单元接收编码的码流,并对其进行存储与输出的管理,码流的输出信息(包括输出的码流的比特数和物理码流缓冲区非空的时间)将送给信道带宽预测运算单元做信道带宽的预测运算;该单元从信道带宽预测运算单元获取信道带宽预测值,根据缓冲区码流驻留信息计算输出延迟,并按照输出延迟的约束对码流的进行丢弃处理,同时输出I帧强制信号给量化参数运算单元做进一步处理。
单元504:信道带宽预测运算单元,该单元根据以往的信道输出的信息预测信道带宽。带宽预测值的计算需用到过去N帧(例如16帧)各帧时间段内物理码流缓冲区码流输出的数目和物理缓冲的有效时间,物理缓冲的有效时间是指物理缓冲非空的时间。信道带宽预测值将分别送给虚拟缓冲管理单元、目标码率运算单元、编码帧率调节单元和码流输出缓冲管理单元做进一步的处理。
单元505:虚拟缓冲管理单元,用于计算缓冲区的满度。虚拟缓冲的满度将送给目标码率运算单元做进一步的处理。
单元506:目标码率分配单元,该单元根据信道带宽预测值、帧率、复杂度因子和虚拟缓冲的满度为待编码帧分配目标码率,目标码率将送给量化预测单元做进一步处理。
单元507:编码帧率运算单元,根据信道带宽和编码图像的失真量调节帧率,使得编码视频的质量最优。
单元508:量化参数运算单元,用于计算编码帧的量化参数。该单元从图像编码单元获取已编码帧的MAD值(输入图像和预测图像的平均绝对差值)和码流大小,再按照对应的量化参数建立R-D模型(率失真模型)和MAD预测模型,其中MAD预测模型用于预测当前帧的MAD值,然后根据模型参数和目标码率计算得到量化参数,并将该量化参数送给图像编码单元。
单元509:复杂度因子运算单元。
复杂度因子依赖I帧和P帧的复杂度WI和WP,WI和WP的值按每个GOP(GrouP ofPIcture)更新一次。假定第n帧为I帧,则I帧复杂度WI的计算过程如下:
WI=A[n]·Q[n]
这里,A[n]和Q[n]分别为实际码率和实际的平均量化值。WP的计算过程如下:
如果Fgop等于1,则Wp=WI
如果Fgop大于1,则:
其中,m=Min(Fgop-1,4),即取Fgop-1和4的较小值,Fgop为GOP大小,Fgop等于1时默认为全I帧;
I帧P帧复杂度的比例W,具体计算过程如下:
这里,L是用户指定参数(大于1)用于控制I帧码率的最大值,从而避免I帧而引入过大延迟。
CLIP计算公式如下:
对于I帧复杂度因子,计算如下:
αI=W·Fgop/(Fgop+W-1),
对于P帧复杂度因子计算如下:
αP=Fgop/(Fgop+W-1)。
第五实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第五实施方式互相配合实施。第五实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第五实施方式中。
本发明的实施例给出了一种视频编码的码率控制方法和装置,可解决现有技术在信道带宽受限且易变的环境下输出延迟和视频质量较差的问题。
本发明的码率控制方法针对低延迟应用增了如下方法:
1.信道带宽预测方法,该方法依据码流输出缓冲的输出信息对信道带宽进行预测。
2.自适应虚拟缓冲容量的调整方法,该方法根据信道带宽的预测值动态的调整虚拟缓冲区容量,保证码率的波动相对于信道带宽波动的比例维持不变,有利于控制输出延迟。
3.自适应帧率变换方法,该方法根据信道带宽的状况、已编码图像的质量已经用户指定的目标质量,自适应的调节编码帧率,从而在编码的质量和输出延迟上取得最优的结果。
4.改进的视频质量评价方法,该方法综合考虑视频的流畅度和编码图像质量。
5.输出缓冲延迟控制方法,该方法综合分析信道带宽、码流输出缓冲状态和目标码率提供一种延迟控制决策,有效的降低输出延迟过大的风险。
6.复杂度因子运算方法,该方法根据已编码的I帧和P帧的码流大小和量化参数计算I帧和P帧的复杂度,保证I帧码率分配可控制。
需要说明的是,本发明各设备实施方式中提到的各单元都是逻辑单元,在物理上,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现,这些逻辑单元本身的物理实现方式并不是最重要的,这些逻辑单元所实现的功能的组合才是解决本发明所提出的技术问题的关键。此外,为了突出本发明的创新部分,本发明上述各设备实施方式并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,这并不表明上述设备实施方式并不存在其它的单元。
需要说明的是,在本专利的权利要求和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (16)

1.一种视频编码的码率控制方法,其特征在于,包括以下步骤:
根据码流输出缓冲区以往的码流输出信息预测当前信道带宽;
根据所述信道带宽预测值和以往已编码帧的码流大小计算虚拟缓冲区的满度;
依据当前信道带宽预测值为待编码图像分配目标码率,其中,所述虚拟缓冲区的满度和当前信道带宽预测值一起用于所述目标码率的分配;
根据分配的目标码率,以往已编码帧的码流大小和编码图像复杂度计算得到相应的量化参数,所述编码图像复杂度包括MAD值,所述MAD值为输入图像和预测图像的平均绝对差值;
根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度;
码流输出缓冲区接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据所述输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息。
2.根据权利要求1所述的视频编码的码率控制方法,其特征在于,在所述根据码流输出缓冲区以往的码流输出信息预测当前信道带宽的步骤中,采用线性预测方法预测当前信道带宽,该方法包括以下子步骤:
计算第n帧的时间段内的信道输出带宽C[n],C[n]由下式确定:
其中output_bits[n]为第n帧实际输出码流的比特数,valid_time[n]为第n帧物理码流缓冲区非空的时间;
利用前向m+1帧的信道带宽预测第n+1帧的信道速率Cp[n+1]:
Cp[n+1]=a1·(m+1)+a2
其中,m为偶数,a1和a2为预测模型的模型参数,分别由下式确定:
3.根据权利要求1所述的视频编码的码率控制方法,其特征在于,在所述码流输出缓冲区接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据所述输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息的步骤中,包括以下子步骤:
根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算码流输出缓冲区中各已驻留编码帧的输出延迟;
依次判断码流输出缓冲区中已驻留编码帧的输出延迟是否满足延迟溢出条件;
若满足延迟溢出条件,则在所有满足延迟溢出条件的已驻留编码帧中,将序号最小的帧标记为最早延迟帧;若都不满足延迟溢出条件,则结束此流程;
计算码流输出缓冲区中从最早延迟帧往前所有已驻留编码帧重启I帧的时间;
依次判断所述已驻留编码帧重启I帧的时间是否满足I帧的重启条件;
若满足重启条件,则在所有满足I帧的重启条件的已驻留编码帧中,将序号最大的帧标记为最迟重启帧;若都不满足重启条件,则结束此流程;
执行输出延迟控制操作,将码流输出缓冲区中从最迟重启帧开始的码流丢弃。
4.根据权利要求3所述的视频编码的码率控制方法,其特征在于,在所述码流输出缓冲区接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据所述输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息的步骤中,还包括子步骤:将当前帧强制为I帧,输出I帧强制信号;
在所述依据当前信道带宽预测值为待编码图像分配目标码率的步骤中,所述目标码率被设置为将当前帧强制为I帧时的预分配目标码率;
在所述根据分配的目标码率,以往已编码帧的编码图像复杂度和码流大小计算得到相应的量化参数的步骤中,所述I帧强制信号和所述分配的目标码率,编码图像复杂度,码流大小一起用于所述量化参数的计算。
5.根据权利要求4所述的视频编码的码率控制方法,其特征在于,所述根据分配的目标码率,以往已编码帧的编码图像复杂度和码流大小计算得到相应的量化参数的步骤包括以下子步骤:
判断I帧强制信号是否为真;
如果I帧强制信号为真,则将所保存的上一个I帧的量化参数作为当前量化参数;
否则根据各已编码帧的编码图像复杂度和码流大小所对应的量化参数建立率失真模型和编码图像复杂度预测模型并获取模型参数,根据模型参数和目标码率计算得到量化参数。
6.根据权利要求1所述的视频编码的码率控制方法,其特征在于,在所述根据信道带宽预测值和以往已编码帧的码流大小计算虚拟缓冲区的满度的步骤中,包括子步骤:
对所述虚拟缓冲区进行动态容量调整,动态调整下缓冲区容量为
Vsize[n+1]=Cp[n+1]·δ·TDelay·Fr[n+1]
其中,Cp[n+1]和Fr[n+1]分别为第n+1帧信道带宽预测值和帧率,δ为常量,TDelay为目标延迟;
根据信道带宽预测值和以往已编码帧的码流大小计算得到的第n+1帧虚拟缓冲区满度为:
其中,A[i]为第i帧实际编码的码率大小,Cp[i]和Fr[i]分别为第i帧的信道带宽预测值和帧率。
7.根据权利要求1所述的视频编码的码率控制方法,其特征在于,在所述根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度的步骤中,还包括子步骤:输出编码图像失真量;
在所述依据当前信道带宽预测值为待编码图像分配目标码率的步骤之前,还包括步骤:根据所述编码图像失真量和信道带宽预测值计算编码帧率;
在所述依据当前信道带宽预测值为待编码图像分配目标码率的步骤中,所述计算得到的编码帧率和当前信道带宽预测值以及虚拟缓冲区的满度一起用于所述目标码率的分配;
在所述根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度的步骤中,所述待编码图像是根据该编码帧率进行过图像输入处理的。
8.根据权利要求7所述的视频编码的码率控制方法,其特征在于,在所述根据所述编码图像失真量和信道带宽预测值计算编码帧率的步骤中,包括以下子步骤:
建立利用帧率估计编码图像失真量的模型,并根据编码图像失真量评价编码图像的质量;
根据帧率评价视频流畅度;
综合考虑所述编码图像的质量和所述视频流畅度来评价视频整体质量,找到使得视频整体质量最大的帧率。
9.根据权利要求7所述的视频编码的码率控制方法,其特征在于,在所述依据当前信道带宽预测值为待编码图像分配目标码率的步骤之前,还包括步骤:
根据以往已编码帧的码流大小和相应的量化参数计算复杂度因子;
在所述依据当前信道带宽预测值为待编码图像分配目标码率的步骤中,所述计算得到的复杂度因子和所述当前信道带宽预测值,编码帧率,以及虚拟缓冲区的满度一起用于所述目标码率的分配。
10.根据权利要求9所述的视频编码的码率控制方法,其特征在于,对于I帧,所述复杂度因子为αI=W·Fgop/(Fgop+W-1);
对于P帧,所述复杂度因子为αP=Fgop/(Fgop+W-1);
其中Fgop为图像组大小,Fgop等于1时默认为全I帧;
W为I帧复杂度WI和P帧复杂度WP的比例,
其中,L是用户指定的大于1的参数,用于控制I帧码率的最大值;
CLIP函数定义为:
假定第n帧为I帧,则I帧复杂度WI为:WI=A[n]·Q[n];
其中,A[n]和Q[n]分别为实际码率和实际的平均量化值;
P帧复杂度WP为:
如果Fgop等于1,则Wp=WI
如果Fgop大于1,则
其中m=Min(Fgop-1,4)。
11.根据权利要求9所述的视频编码的码率控制方法,其特征在于,在所述依据当前信道带宽预测值为待编码图像分配目标码率的步骤中,根据所述当前信道带宽预测值,编码帧率,虚拟缓冲区的满度和所述复杂度因子为所述待编码图像分配目标码率,I帧和P帧的码率分配分别为:
TrI[n]=Gf[n]·(αI·Cp[n]+D[n]),
TrP[n]=Gf[n]·(αP·Cp[n]+D[n]);
其中,Gf[n]为虚拟缓冲调节增益值,αI和αP分别为I帧和P帧的复杂度因子,Cp[n]为信道带宽预测值,D[n]为码率分配误差调节值;
Gf[n]为虚拟缓冲调节增益值,
Bf[n]为第n帧虚拟缓冲的满度,β为大于等于1的强度调节因子;
D[n]是目标码率分配和实际码率分配误差调节值,D[n]由下式确定:
其中,第n帧引入的误差d[n]为:
其中,Tr[n]为目标码率,A[n]为实际编码码率,Cp[n]为信道带宽预测值,C[n]为信道带宽实际值,Fr[n]为帧率。
12.一种视频编码的码率控制系统,其特征在于,包括:
信道带宽预测模块,用于根据码流输出缓冲区以往的码流输出信息预测当前信道带宽;
虚拟缓冲管理模块,用于根据信道带宽预测值和以往已编码帧的码流大小计算虚拟缓冲区的满度;目标码率分配模块,用于依据所述虚拟缓冲区的满度和当前信道带宽预测值一起为待编码图像分配目标码率;
量化参数计算模块,用于根据分配的目标码率,以往已编码帧的码流大小和编码图像复杂度计算得到相应的量化参数,所述编码图像复杂度包括MAD值,所述MAD值为输入图像和预测图像的平均绝对差值;
图像编码模块,用于根据量化参数对待编码图像进行编码处理,向码流输出缓冲区输出编码的码流,并输出当前已编码帧的码流大小和编码图像复杂度值;
输出延时控制模块,用于在码流输出缓冲区接收编码的码流后,根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算输出延时,并根据所述输出延时对码流进行丢弃处理和输出处理,为下一次预测信道带宽提供码流输出信息。
13.根据权利要求12所述的视频编码的码率控制系统,其特征在于,所述输出延时控制模块包括以下子模块:
输出延时计算子模块,用于根据当前信道带宽预测值以及码流输出缓冲区的码流驻留信息计算码流输出缓冲区中各已驻留编码帧的输出延迟;
延迟溢出判断子模块,用于依次判断码流输出缓冲区中已驻留编码帧的输出延迟是否满足延迟溢出条件;
延迟溢出处理子模块,用于若满足延迟溢出条件,则在所有满足延迟溢出条件的已驻留编码帧中,将序号最小的帧标记为最早延迟帧;若都不满足延迟溢出条件,则结束此流程;
I帧重启时间判断子模块,用于计算码流输出缓冲区中从最早延迟帧往前所有已驻留编码帧重启I帧的时间;并依次判断所述已驻留编码帧重启I帧的时间是否满足I帧的重启条件;
I帧重启时间处理子模块,用于若满足重启条件,则在所有满足I帧的重启条件的已驻留编码帧中,将序号最大的帧标记为最迟重启帧;若都不满足重启条件,则结束此流程;
输出延迟执行子模块,用于执行输出延迟控制操作,将码流输出缓冲区中从最迟重启帧开始的码流丢弃。
14.根据权利要求12所述的视频编码的码率控制系统,其特征在于,所述输出延时控制模块包括I帧强制子模块,用于将当前帧强制为I帧,输出I帧强制信号;
在所述目标码率分配模块中,所述目标码率被设置为将当前帧强制为I帧时的预分配目标码率;
在所述量化参数计算模块中,所述I帧强制信号和所述分配的目标码率,编码图像复杂度,码流大小一起用于所述量化参数的计算。
15.根据权利要求12所述的视频编码的码率控制系统,其特征在于,在所述图像编码模块中,还包括编码图像失真计算子模块,用于输出编码图像失真量;
所述码率控制系统还包括编码帧率计算模块,用于根据所述编码图像失真量和信道带宽预测值计算编码帧率;
在所述目标码率分配模块中,所述计算得到的编码帧率和当前信道带宽预测值以及虚拟缓冲区的满度一起用于所述目标码率的分配;
在所述图像编码模块中,所述输入的待编码图像是根据该编码帧率进行过图像输入处理的。
16.根据权利要求15所述的视频编码的码率控制系统,其特征在于,还包括:
复杂度因子运算模块,用于根据以往已编码帧的码流大小和相应的量化参数计算复杂度因子;
在所述目标码率分配模块中,所述计算得到的复杂度因子和所述当前信道带宽预测值,编码帧率,以及虚拟缓冲区的满度一起用于所述目标码率的分配。
CN201410308573.0A 2014-06-30 2014-06-30 视频编码的码率控制方法及其系统 Active CN105208390B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410308573.0A CN105208390B (zh) 2014-06-30 2014-06-30 视频编码的码率控制方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410308573.0A CN105208390B (zh) 2014-06-30 2014-06-30 视频编码的码率控制方法及其系统

Publications (2)

Publication Number Publication Date
CN105208390A CN105208390A (zh) 2015-12-30
CN105208390B true CN105208390B (zh) 2018-07-20

Family

ID=54955778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410308573.0A Active CN105208390B (zh) 2014-06-30 2014-06-30 视频编码的码率控制方法及其系统

Country Status (1)

Country Link
CN (1) CN105208390B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018132964A1 (zh) 2017-01-18 2018-07-26 深圳市大疆创新科技有限公司 传输编码数据的方法、装置、计算机系统和移动设备
CN107087169B (zh) * 2017-03-22 2019-11-12 建荣半导体(深圳)有限公司 一种压缩方法、uvc视频设备及电子设备
CN106937112B (zh) * 2017-03-31 2019-09-24 西安电子科技大学 基于h.264视频压缩标准的码率控制方法
CN107205150B (zh) * 2017-07-14 2019-05-24 西安万像电子科技有限公司 编码方法及装置
CN109076194B (zh) * 2017-11-21 2021-04-16 深圳市大疆创新科技有限公司 一种视频处理方法、设备、飞行器、系统及存储介质
CN108012163B (zh) * 2017-12-19 2020-08-18 希诺麦田技术(深圳)有限公司 视频编码的码率控制方法及装置
WO2019127136A1 (zh) * 2017-12-27 2019-07-04 深圳市大疆创新科技有限公司 码率控制的方法与编码装置
CN108924611B (zh) * 2018-06-27 2020-11-27 曜科智能科技(上海)有限公司 Abr编码码率控制优化方法、电子设备及存储介质
CN110945870A (zh) * 2018-08-01 2020-03-31 深圳市大疆创新科技有限公司 视频处理设备和方法
CN110832868A (zh) 2018-08-31 2020-02-21 深圳市大疆创新科技有限公司 编码方法、解码方法、编码设备和解码设备
CN111193927B (zh) * 2018-11-14 2022-09-23 腾讯科技(深圳)有限公司 编码数据处理方法、装置、计算机设备和存储介质
EP3687176A1 (en) 2019-01-22 2020-07-29 InterDigital CE Patent Holdings A client and a method for managing, at the client, a streaming session of a multimedia content
CN110351595B (zh) * 2019-07-17 2023-08-18 北京百度网讯科技有限公司 一种缓冲处理方法、装置、设备和计算机存储介质
CN110650370B (zh) * 2019-10-18 2021-09-24 北京达佳互联信息技术有限公司 一种视频编码参数确定方法、装置、电子设备及存储介质
CN110996125B (zh) * 2019-11-18 2021-08-17 腾讯科技(深圳)有限公司 一种视频流的生成方法、装置、电子设备及存储介质
CN115348450A (zh) * 2019-12-31 2022-11-15 上海海思技术有限公司 编码方法及编码器
CN113395244B (zh) * 2020-03-13 2023-03-24 杭州海康威视数字技术股份有限公司 码流控制方法、装置及设备、存储介质
CN111953978B (zh) * 2020-07-07 2024-10-22 西安万像电子科技有限公司 帧率控制方法、装置及存储介质
CN111770335B (zh) * 2020-07-08 2024-04-02 西安万像电子科技有限公司 数据编码方法及装置
CN112291563A (zh) * 2020-10-22 2021-01-29 咪咕视讯科技有限公司 一种视频编码方法、设备及计算机可读存储介质
CN112437321B (zh) * 2020-11-11 2022-04-19 天津大学 一种基于直播流媒体的自适应码率计算方法
CN114900692A (zh) * 2022-04-28 2022-08-12 有半岛(北京)信息科技有限公司 视频流帧率调整方法及其装置、设备、介质、产品
CN115103190A (zh) * 2022-06-14 2022-09-23 晶晨芯半导体(成都)有限公司 编码器码率控制方法及模块、芯片、电子设备和存储介质
CN118632000A (zh) * 2023-03-07 2024-09-10 华为技术有限公司 一种图像编解码方法、装置及系统
CN117939134B (zh) * 2024-03-22 2024-05-31 鹰驾科技(深圳)有限公司 一种无线视频通信方法及系统
CN118449863A (zh) * 2024-07-08 2024-08-06 海马云(天津)信息技术有限公司 动态的带宽资源管理方法与装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1685734A (zh) * 2002-09-05 2005-10-19 新加坡科技研究局 控制视频序列速率的方法和装置及视频编码装置
CN101420601A (zh) * 2008-06-06 2009-04-29 浙江大学 视频编码中码率控制的方法及装置
CN101743753A (zh) * 2007-06-19 2010-06-16 万特里克斯公司 利用视频编码中的帧复杂性、缓冲水平和内部帧位置的基于缓冲的速率控制

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1685734A (zh) * 2002-09-05 2005-10-19 新加坡科技研究局 控制视频序列速率的方法和装置及视频编码装置
CN101743753A (zh) * 2007-06-19 2010-06-16 万特里克斯公司 利用视频编码中的帧复杂性、缓冲水平和内部帧位置的基于缓冲的速率控制
CN101420601A (zh) * 2008-06-06 2009-04-29 浙江大学 视频编码中码率控制的方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Adaptive Basic Unit Layer Rate Control for JVT;Zhengguo Li, Feng Pan, Keng Pang;《Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG(ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6)》;20050117;全文 *
一种针对AVS实时编码的VBR码率控制方法;郑从卓等;《一种针对AVS实时编码的VBR码率控制方法》;20090313;全文 *
视频编码中质量、复杂度和码率控制;陈国斌;《中国博士学位论文全文数据库》;20040915(第3期);全文 *
视频通信中码率控制算法研究;兰天;《中国博士学位论文全文数据库》;20111115(第11期);第3.2、3.3节 *

Also Published As

Publication number Publication date
CN105208390A (zh) 2015-12-30

Similar Documents

Publication Publication Date Title
CN105208390B (zh) 视频编码的码率控制方法及其系统
CN101389026B (zh) 图像编码设备和图像编码方法
CN100401782C (zh) 控制视频序列速率的方法和装置及视频编码装置
CN101518088B (zh) 针对有效速率控制和增强视频编码质量的ρ域帧级比特分配的方法
CN101461248B (zh) 自适应地确定用于视频图像编码的比特预算的方法和设备
CN101855910B (zh) 视频压缩和传送技术
US6910079B2 (en) Multi-threshold smoothing
CN101971635B (zh) 针对视频编码中的速率控制精度的方法及装置
CN102238433A (zh) 控制数字内容的自适应流传输
CN101395671A (zh) 用于提供内容自适应码率控制的视频编码系统和方法
CA2284810A1 (en) Joint rate control for stereoscopic video coding
CN101069432B (zh) 用于视频编码器速率控制的量化参数的确定方法和设备
Ye et al. Power control for wireless VBR video streaming: From optimization to reinforcement learning
US7480332B2 (en) Bit rate control method and apparatus for MPEG-4 video coding
CA3182110A1 (en) Reinforcement learning based rate control
CN115701709A (zh) 视频编码方法、装置、计算机可读介质及电子设备
CN103517080A (zh) 实时视频流编码器和实时视频流编码方法
CN110113602A (zh) 一种h.264码率控制跳帧优化方法
US20070104271A1 (en) Moving picture encoding system
CN106231305A (zh) 基于梯度的全i帧视频码率控制方法及控制系统
CN1266335A (zh) 用在多路复用系统中调节比特率的装置和方法
US10616585B2 (en) Encoding data arrays
Chi et al. Region-of-interest video coding based on rate and distortion variations for H. 263+
WO2008079353A1 (en) Scaling the complexity of video encoding
CN117956160A (zh) 码率控制方法、码率控制装置以及计算机存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant