CN101106715B - 一种视频带宽适配方法及装置 - Google Patents
一种视频带宽适配方法及装置 Download PDFInfo
- Publication number
- CN101106715B CN101106715B CN 200710119573 CN200710119573A CN101106715B CN 101106715 B CN101106715 B CN 101106715B CN 200710119573 CN200710119573 CN 200710119573 CN 200710119573 A CN200710119573 A CN 200710119573A CN 101106715 B CN101106715 B CN 101106715B
- Authority
- CN
- China
- Prior art keywords
- video
- bit
- run length
- maximum run
- scene
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供一种视频带宽适配方法及装置,所述方法包括:在视频编码结构的不同层级上计算比特预算值;获取视频场景中比特预算值和最大游程长度之间的线性关系;获取视频场景中最大游程长度与量化参数之间的关系;根据获取的比特预算值和最大游程长度之间的线性关系以及最大游程长度与量化参数之间的关系,将视频压缩码速控制在所述比特预算值之内。用于使视频信号可通过包括因特网和无线网络的各种带宽网络进行传输,解决与网络堵塞对视频流影响以及在无线网络情况下,移动带宽的有效性和高成本的问题。
Description
技术领域
本发明关于视频传输技术,特别是关于能够对视频数据进行适配并使之与带宽或数字存储空间相适应的技术,具体的讲是一种视频带宽适配方法及装置。
背景技术
现有技术中的解决视频通过堵塞的网络链的方法是,从视频流中随机丢弃部分视频信号以应付带宽的不足。由于信息的丢失,这种方法导致接收端图像质量显著降低。
在无线或移动网络中,应用目前的视频编码技术,视频码流不可能通过带宽狭窄的网络链。为保证视频的传送质量,就需对网络带宽作相应的要求。然而,移动带宽是很昂贵的,在传输视频流所必需的较长时间里,不能只将频带分配给一个用户使用。
克服上述缺陷的一个方法是,将输入的压缩视频流完全在像素域还原,然后重新编码还原后的视频信号,以适应可用网络带宽。
根据上述方法,视频带宽适配器首先要将压缩的视频流解码,然后从视频流中提取MPEG信号,进而用MPEG解码器提取MPEG视频,并把压缩的MPEG视频还原到未压缩的像素域。之后,视频带宽适配器采用经量化参数计算出新的视频编码参数,MPEG编码器把像素域中还原视频重新编码成压缩视频,以适应可用网络带宽。
如图1所示,传统视频代码转换器100包括解码器110和编码器150。将先前压缩并打包的视频流输入到MPEG视频流提取器(MVSE)105,MVSE105再把提取的MPEG视频流提供给变长解码器(VLD)115。逆量化器120利用第一量化步长Q1处理VLD115的输出。逆DCT处理器125处理逆量化器120的输出,并把像素域数据提供给加法器130,加法器130根据切换器140的位置,把像素域数据与基于运动补偿器135所产生的运动补偿差分信号或无效信号相加。
把输入到图1视频带宽适配器每个宏块(MB)的代码模式(内部或中间模式)嵌入到输入预压缩比特流中,并将其提供给切换器140。把加法器30的输出提供给编码器150和解码器110的当前帧缓冲器(C_FB)145。然后,运动补偿器135使用来自当前FB145和前一帧缓冲器(P_FB)150的数据,以及来自VLD115的运动矢量数据(MV)。在编码器150中,把像素数据提供给内部/中间模式切换器155、加法器160和运动估计(ME)功能块165。切换器155选择当前像素数据、或当前像素数据与前一帧的像素数据之间的差值,以便由DCT处理器170、量化器175和变长编码器180进行处理。变长编码器180的输出是传输到解码器的比特流,包括来自运动估算器165的运动矢量数据。最后,速率调整电路Q2控制代码转换器的输出比特率。
在反馈路径中,逆量化器182和逆DCT处理器184执行处理,以还原像素域数据。然后,在加法器186中把这个数据与运动补偿数据或无效信号相加,并把求和值提供给当前帧缓冲器190。再把当前帧缓冲器190和前一帧缓冲器192的数据提供给运动估算器165和运动补偿器194。切换器196响应内部/中间模式切换控制信号,把无效信号或运动补偿器194的输出提供给加法器186。由于本方法需要对同一视频信号进行多重编码,因此又被称为“多道编码法”。
从上面所述可明显看出,这种途径需要大量的计算资源才能完全解压缩和重新压缩输入视频流。由于视频带宽适配器需要MPEG编码和解码的所有功能,所以成本极高。
现有技术中的,一种改善图1所示传统视频带宽适配器计算效率的可替代方法是,再利用已经在输入压缩视频流中完成的运动补偿。如图2所示,为省去运动补偿步骤的MPEG视频带宽适配器的例子。该方法和设备是建立在如下发现基础上的,即如果在视频带宽适配期间保持每帧的图像类型,那么,解码器解码的运动矢量可以用于编码器中的运动补偿,而不会显著损坏合成图像的主观质量,从而不再需要计算量巨大的运动补偿操作。
除了运动矢量处理外,图2所示视频带宽适配器与图1所示视频带宽适配器是相同的,因此,图2中的部件与图1进行相应地编号。如图1中所示视频带宽适配器,图2所示视频带宽适配器200包括MPEG视频提取器105、MPEG解码器210和MPEG编码器250。另一方面,与图1所示视频带宽适配器相反,视频带宽适配器200把运动矢量从VLD115直接提供给编码器250中的运动补偿器194。结果,图2中视频带宽适配器结构将生成具有新比特率的新比特流,而不必进行新的运动补偿操作。尽管提高了效率,但由于在编码和解码过程中分别涉及到的DCT和IDCT运算,计算量仍然相当大。
MPEG标准委员会还推荐了另一种行业内广泛使用的视频带宽适配器。在MPEG建议的方法中,要计算出每一帧的场景复杂性。根据场景复杂性和帧型,视频适配器分配比特预算值到帧。根据分配的比特预算,视频编码器对用来压缩视频信号的量化参数进行预测,使之不超出比特预算值。但由于很难获得编码视频信号所需比特数与所对应的量化参数之间的稳定关系,这种视频带宽适配方法缺乏准确度。
因为将用于如手机、PDA等终端电子设备上,实用的视频带宽适配方法或设备应尽可能简单。在移动网络实时视频流的情况下,视频带宽适配方法必须准确,因为移动带宽是很昂贵的资源。然而,MPEG建议的多次编码法和视频带宽适配法无法满足这些要求。在此领域,目前也无适用的方法或设备。
发明内容
本发明提供一种视频带宽适配方法及装置,用于使视频信号可通过包括因特网和无线网络的各种带宽网络进行传输,解决与网络堵塞对视频流影响以及在无线网络情况下,移动带宽的有效性和高成本的问题。本发明的技术方案为:
一种视频容量适配方法,所述方法包括:在视频编码结构的不同层级上计算比特预算值;获取视频场景中比特预算值和最大游程长度之间的线性关系;获取视频场景中最大游程长度与量化参数之间的关系;根据获取的比特预算值和最大游程长度之间的线性关系以及最大游程长度与量化参数之间的关系,将视频压缩码速控制在所述比特预算值之内。
一种视频容量适配装置,所述装置包括:比特分配单元,用于在视频编码结构的不同层级上计算并分配比特预算值;斜率获取单元,用于获取视频场景中比特预算值和最大游程长度之间的线性关系;匹配表获取单元,用于获取视频场景中最大游程长度与量化参数之间的关系;码速控制单元,用于根据获取的比特预算值和最大游程长度之间的线性关系以及最大游程长度与量化参数之间的关系,将视频压缩码速控制在所述比特预算值之内。
本发明实施例能够实现重大的效率提升,是因为它不需要对同一视频信号多次编码,也不需要对同一场景的视频信号进行场景活动计算。本发明实施例能够使码速控制的准确度显著提高,是因为表述比特预算值和量化参数之间关系的随机模型被分解为两个平稳的随机过程:(1)比特预算值和最大游程长度之间的线性关系;(2)最大游程长度与量化参数之间的平稳关系。若上述模型不能有效控制比特率,视频带宽适配器还可选取非零DCT系数,并将其设置为零作为备选解决方案。用这种方法,被压缩的视频比特率就会下降以满足比特预算的要求。因为选用非零DCT系数时,在视频码速的降低与视频质量的降低之间进行了权衡,因此,由本发明实施例引起的视频质量变化远比通过随机舍弃视频信息而造成的视频品质变化更不易觉察。
附图说明
图1是应用完整解码/编码的传统视频带宽适配器示意图;
图2是从视频带宽适配结构中去掉运动部分,使效率得到提高的现有视频带宽适配器示意图;
图3是根据本发明所提请原理构成的带宽可缩放视频带宽适配器结构示意图;
图4是图3所示视频带宽适配器工作原理的流程图;
图5根据图3和4所示原理所示的进行带宽适配之前每帧编码的样本;
图6根据发明优选实例原理所示带宽适配之后每帧编码的样本;
图7为采用本发明装置向网络发送视频数据实施例的结构框图;
图8为采用本发明装置向存储设备存储视频数据实施例的结构框图。
具体实施方式
下面结合附图说明本发明的具体实施方式。根据本发明的优选实施例,视频带宽适配器在不同级次视频编码结构的不同层上计算比特预算值,计算范围包括:帧层、切片层、宏块层和块层。比特预算值的算法基于可用网络带宽和视频编码类型(帧内型或帧间型)。在获得比特预算值后,视频带宽适配器利用两步匹配法控制视频压缩码速不要超出比特预算。视频带宽适配器的工作原理基于视频场景的两个发现:
1)视频块游程的最大长度与压缩同一视频块所用的比特数呈比例变化;
2)视频块游程的最大长度与压缩同一视频块所用量化参数之间呈静态特征。
本发明的视频带宽适配器通过自学习过程确定视频块最大游程长度与压缩同一块所用比特数之间的线性关系,这种线性关系由斜率确定。尽管很难找出视频信号编码所用字节数与其所对应的量化参数之间存在的平稳关系,视频带宽适配器可以通过两步匹配法找出给定比特预算值所对应的量化参数。在两步匹配法不起作用,并且编码压缩视频信号所用字节数超出比特预算值的情况下,本发明的视频编码适配器会通过找出非零DCT(离散余弦变换)的DCT系数,并将其设置为零,以避免视频信号码速溢出。上述提及的DCT系数的选取是在权衡了增加的最大游程长度和对人体视觉系统影响之间关系基础上确定的。
从原理上讲,本发明方法和设备所提供的视频带宽适配引擎适用于多种不同类型的网络,包括因特网和无线通讯网络,由于不需要任何专用硬件,故而易于应用于任何终端电子设备上,如手机,PDA等。此外,本发明的视频带宽适配引擎可用来控制任何基于视频块的压缩标准的视频码速,如MPEG(运动图像专家组标准的缩写),H.26x(ITU多媒体信号编解码标准),WMV(微软视频编解码格式),RM(Realnetwork视频编解码格式)等等。
本发明实施例的一种视频容量适配装置包括:比特分配单元,用于在视频编码结构的不同层级上计算并分配比特预算值;斜率获取单元,用于获取视频场景中比特预算值和最大游程长度之间的线性关系;匹配表获取单元,用于获取视频场景中最大游程长度与量化参数之间的关系;码速控制单元,用于根据获取的比特预算值和最大游程长度之间的线性关系以及最大游程长度与量化参数之间的关系,将视频压缩码速控制在所述比特预算值之内。比特数判断单元,用于判断视频块所用比特数是否超出了其指定比特预算值;离散余弦变换定位器,如果所述比特数判断单元的判断结果为是,则选取非零离散余弦变换(DCT)系数,并将所述离散余弦变换系数设置为零,以增加最大游程长度和减少视频块所需比特数,使视频块编码的字节数不超出比特预算值。
如图3所示,本发明是通过可应用于任何终端电子设备,包括视频带宽适配器300的视频带宽适配引擎实现的,其中视频带宽适配器300由带宽检测器305、码流预算器306、确定比特预算值和最大游程长度之间线性关系的斜率自学习器310、以及确定最大游程长度与量化参数之间平稳关系的匹配表自学习器320。然而,与现有的视频带宽适配方法不同的是,本发明的视频数据压缩率不是直接由量化参数控制的。而是,它将随机过程,即量化参数和编码视频信号比特数之间的关系,分解成两个静态过程:视频块最大游程长度与其编码所用比特数之间的线性关系,和视频块最大游程长度与其编码所对应的量化参数的静态关系。
为了了解本发明的视频带宽适配方法,有必要先了解一些视频压缩和MPEG编码的一些基本原理。根据MPEG标准,在编码视频流底层上的是由8*8个像素组成的块。通过离散余弦变换把像素域中的8*8个块转换到频率域,这可以有效地消除同一图像(帧内编码)内邻近的像素之间的空间相关性。另外,为了消除邻近帧中的像素之间的高相关性,MPEG把运动补偿补充到帧间编码技术中。在通过离散余弦变换消除预测余项之间相关性时,另外对DCT系数进行按频率、量化和VLC编码的次序进行锯齿扫描。在量化和VLC编码过程中实现了MPEG视频压缩。锯齿形扫描的目的是在追踪高频DCT系数前,对高能低频DCT系数进行追踪。这种锯齿形扫描用于VLC变长编码。
变长编码从沿着扫描线检测非零量化系数和两个连续非零系数之间的距离(游程)开始,用唯一的VLC码字将每个连续的“游程、幅度”对进行编码。若一对“游程、幅度”模式出现的可能性越高,那么指定给该模式的VLC码字就越短。由于“游程、长度”对中的模式数非常巨大,因此,并不是每一模式都会映射到VLC码字上。结果,在大多模式中使用定长编码技术。定长码字要比VLC码字长得多。
传统的视频带宽适配方法选取基于可用带宽或数字存储空间的量化参数;量化参数越大,量化后DCT的能量水平就越低。当选择较大量化参数时,大部分高频DCT会变为零,而低频DCT能量幅度会变得很小。因为VLC码字的设计倾向于低幅度高游程,较大量化参数产生低的压缩视频码速。然而,较大量化参数会导致主观视频严重变形。好的视频带宽适配器能够控制视频压缩率不超出比特预算值,同时主观感觉不到视频质量有明显降低。由于视频数据压缩率和量化参数之间的关系不是静态而是动态的,直接利用量化参数控制视频压缩率的方法就不准确了。
一旦指定了比特预算,压缩视频码速就可系统地控制在误差范围内,并对主观视觉影响达到最小。此后,根据检测到的场景切换情况,将斜率(图中所示确定比特预算与最大游程长度之间的关系)匹配表或解析公式(图中所示确定最大游程长度于量化参数之间关系)进行初始化。上述斜率和匹配表可通过对最大游程长度值、视频数据编码比特数和量化DCT的量化参数进行自学习得出。
根据场景切换,对视频带宽适配器300中的自学习器310和自学习器320中的变量(最大游程长度,比特数和视频数据编码的量化参数)进行初始化,并将输出(实际量化参数、视频数据编码输出的比特数和最终的最大游程长度)反馈给上述自学习机(trainer)。因为视频数据的高度相关性,自学习机在视频场景中会立即达到稳定。此后,视频带宽适配器就可用自学习机得出的斜率和匹配表有效地控制视频压缩率。
图4所示为该方法的工作流程。在图4中,TS表示视频带宽适配器,QP代表量子化参数,MB代表宏块,I-frame和P-frame分别代表帧内图和帧间图。TS一开始就被初始化。随后,计算编码当前帧的比特预算值,在找出正确的QP后,就可用它在MB水平上压缩当前帧来进行解码处理。
图5、图6所示为本发明视频带宽适配方法的样本。
图5和图6试验结果显示,本发明视频带宽适配方法在约1秒钟内就会集中进入静态阶段。比率控制方法能够将平均比特率调整为一个近似的常数,并且能非常有效地控制视频编码过程的输出比特率。
可以看出,采用两步匹配法在视频流量与视频质量之间取得折衷,本发明带宽可变视频带宽适配器所要达到的首要目标,即是在各种网络设施上应用视频传输,或者比采用两步匹配法将视频压缩到数字存储系统节省了所需要的空间。由此变换导致的视频质量下降要比随机舍弃视频信息导致的视频质量下降小得多。
由于所提请的视频带宽适配功能不需要专门的硬件设备,只通过软件就可实现(尽管本发明并不排除专门的硬件),因此该设备功能可在任何终端电子设备上轻松实现,如在手机、PDA等。此外,除MPEG系列外,如H.26x系列,WMV和RM,本发明可于任何基于像素块的视频编解码标准。
实施例1
如图7所示,在将压缩视频信号发送给网络之前,现将视频编码数据传送给本发明实施例的视频带宽适配器。如图3所示,该视频带宽适配器300包括:带宽检测器305、码流预算器306(即比特分配器)、最大游程长度计算器315、确定比特预算值和最大游程长度之间线性关系的斜率自学习器310、以及量子系数估计器、确定最大游程长度与量化参数之间平稳关系的匹配表自学习器320,场景切换判断器330。还可包括图中未示出的比特数判断单元,用于判断视频块所用比特数是否超出了其指定比特预算值;离散余弦变换定位器,如果所述比特数判断单元的判断结果为是,则选取非零离散余弦变换(DCT)系数,并将所述离散余弦变换系数设置为零,以增加最大游程长度和减少视频块所需比特数,使视频块编码的比特数不超出比特预算值。
本实施例的根据可用网络带宽对压缩的数字视频码速进行适配的方法,包括下列步骤:
a.基于可用网络带宽和编码类型(帧内型或帧间型),在帧图或宏块的层次上分配比特预算值;
b.基于帧的可用字节数,以及宏块层编码类型(帧内型或帧间型),在块的层次上分配比特预算值;
c.在视频场景中,找出视频块最大游程长度与其编码所用比特预算值之间的线性关系;
d.若场景发生切换,则对新的视频场景中视频块最大游程长度与其编码所用比特预算值之间的线性关系进行重新确定;
e.在视频场景中,通过自学习得出视频块最大游程长度与对其所对应的量化系数之间关系的匹配表;
f.若场景发生变化,则对新的视频场景中视频块最大游程长度与对其编码所需量化系数之间关系的匹配表进行重新自学习;
g.找出备选的非零DCT,并通过将其设置为零来增加视频块的最大游程长度,以避免视频块编码的字节数超出比特预算值。
所述的方法,还包括如下步骤,找出可用网络带宽,找出帧的场景活动,基于帧编码类型(帧内型或帧间型)和视频序列范围内的场景活动,在帧或宏块层次上分配比特数。
步骤b包括以下步骤:记录所剩余的比特数,找出块的场景活动,基于帧的可用比特数,宏块的编码类型(帧内型或帧间型),和块的场景活动,在块的层次上分配比特数。
步骤c执行的是一个推导过程,以找出决定视频块最大游程长度与其编码所需比特预算之间线性关系的斜率。
步骤d包括如下步骤:当场景发生切换时,检测场景变化情况,并重新计算视频块最大游程长度与对其编码所需比特预算之间的线性关系。
步骤e执行了一个自学习过程以获取匹配表,在同一视频场景中,匹配表决定视频块最大游程长度与其编码所需量化参数之间的关系。
步骤f包含如下步骤:当场景发生切换时,检测视频场景变化情况,并重新通过自学习过程得出决定视频块最大游程长度与其编码所需量化参数之间关系的匹配表。
步骤a-g可以在任何终端电子设备上,包括手机、PDA等,以软件、硬件或软件与硬件组合形式来实现。
视频带宽适配方法适用于视频编码结构任意层级,即适用于视频序列、帧图组、帧图、切片层,宏块层和块层。
本实施例根据可用网络带宽对压缩视频数据进行适配的软件,包括:
a.基于可用网络带宽和帧的编码类型(帧内型或帧间型),在帧或宏块层分配比特预算值的模块;
b.基于帧的可用比特数,以及宏块层编码类型(帧内型或帧间型),在块层上分配比特预算值的模块;
c.在视频场景中,找出视频块最大游程长度与对其编码所需比特预算值之间线性比率关系的模块;
d.当视频场景发生切换时,重新计算视频块最大游程长度与对其编码所需比特预算值之间线性比率关系的模块;
e.在同一视频场景中,通过自学习过程得出视频块最大游程长度与对其编码所需量化参数之间关系匹配表的模块;
f.当视频场景发生变化时,通过自学习过程重新得出视频块最大游程长度与对其编码所需量化参数之间关系匹配表的模块;
g.找出非零DCT,并通过将其设置为零来增大视频块最大游程长度,以避免编码视频块所用比特数超出比特预算值的模块;
所述后处理模块包括:找出可用网络带宽,找出帧的场景活动,在视频序列范围内,基于帧的编码类型(帧内型或帧间型)和场景活动,在帧层上分配比特。
所述后处理模块包括:记录所剩余的比特数,找出块的场景活动,基于当前帧可用的比特数,宏块的编码类型(帧内型或帧间型)和块的场景活动,在块层上分配比特。
提及的自学习过程模块包括:找出视频块最大游程长度与对其编码所需比特预算值之间的线性比率关系。
所述后处理模块包括:检测视频场景变化情况,当场景发生切换时,重新计算视频块最大游程长度与对其编码所需比特预算值之间的线性比率关系。
自学习过程指的是在同一视频场景中获得匹配表,匹配表反映了视频块最大游程长度与对其编码所需量化参数之间的关系。
所述后处理模块包括:检测视频块场景变化情况,当视频场景发生切换时,通过自学习过程重新得出反映视频块最大游程长度与对其编码所需量化参数之间关系的匹配表。
所述软件包可应用于任何终端电子设备,包括手机、PDA等。
所述软件包可应用于视频编码结构的任意层,包括:视频序列、帧图组、帧图、切片层,宏块层和块层。
实施例2
如图8所示,在将压缩视频信号发送给存储设备之前,现将视频编码数据传送给本发明实施例的视频带宽适配器。
本实施例的装置由以下组成:
a.比特分配器,基于可用存储空间和帧的编码类型(帧内型或帧间型),在帧或宏块层上计算比特预算值;
b.比特分配器,基于帧的可用比特数,以及宏块层编码类型(帧内型或帧间型),在块层上计算比特预算值;
c.自学习器,在同一视频场景中,自学习得出视频块最大游程长度与对其编码所用比特预算值之间线性比率关系;
d.当场景变化时,通过自学习过程重新得出新场景下视频块最大游程长度与对其编码所用比特预算值之间线性比率关系;
e.自学习器,在同一视频场景中,自学习得出反映最大视频游程长度与对其编码所用量化参数之间的关系的匹配表;
f.场景切换时,通过自学习过程重新得出新场景下反映最大视频块游程长度与对其编码所用量化参数之间关系的匹配表;
g.DCT定位器,用来找出非零DCT,并将其设置为零以增大游程的最大长度,以避免编码块所用比特数超出比特预算值。
本实施例装置发现网络带宽和帧的场景活动情况,在视频序列范围内,基于帧的编码类型(帧内型或帧间型)和场景活动,在帧或宏块层上分配比特数。
本实施例装置记录所剩余的比特数,计算块的场景活动,基于帧的可用比特数,宏块的编码类型(帧内型或帧间型)和块的场景活动,在块层上计算比特预算值。
本实施例装置可通过自学习过程计算出上述所提及线性比率。
本实施例装置可检测视频场景变化情况,当场景发生切换时,可对新的场景重新计算线性比率。
本实施例装置可通过自学习过程对匹配表进行更新。
本实施例装置当场景发生变化时,可检测到其变化,并且会对新的视频场景的匹配表进行重新自学习过程。
本实施例装置适用在任何终端设备上,包括手机、PDA等,进行视频带宽适配。
本实施例装置可应用于视频编码结构的任意层,包括:视频序列、帧图组、帧图、切片层,宏块层和块层。
可以看出,采用两步匹配法在视频流量与视频质量之间取得折衷,本发明带宽可变视频带宽适配器所要达到的首要目标,即是在各种网络设施上应用视频传输,或者比采用两步匹配法将视频压缩到数字存储系统节省了所需要的空间。由此变换导致的视频质量下降要比随机舍弃视频信息导致的视频质量下降小得多。
由于所提请的视频带宽适配功能不需要专门的硬件设备,只通过软件就可实现(尽管本发明并不排除专门的硬件),因此该设备功能可在任何终端电子设备上轻松实现,如在手机、PDA等。此外,除MPEG系列外,如H.26x系列,WMV和RM,本发明可于任何基于像素块的视频编解码标准。
前面已经十分详细地描述了本发明所提请的技术,使业内人士能够了解和使用本发明。但是,还要提请注意的是,在不偏离本发明实质的前提下,还可以对所提请的技术发明进行许多变更和改进,并且本发明不受以上说明或附图的限制,而是仅按照所附权利要求来予以限定。
Claims (16)
1.一种视频容量适配方法,其特征是,所述方法包括:
在视频编码结构的不同层级上计算比特预算值;
获取视频场景中比特预算值和最大游程长度之间的线性关系;
获取视频场景中最大游程长度与量化参数之间的关系;
根据获取的比特预算值和最大游程长度之间的线性关系以及最大游程长度与量化参数之间的关系,将视频压缩码速控制在所述比特预算值之内。
2.根据权利要求1所述的方法,其特征是,判断视频块所用字节数是否超出了其指定比特预算值,如果是则选取非零离散余弦变换(DCT)系数,并将所述离散余弦变换系数设置为零,以增加最大游程长度和减少视频块所需比特数。
3.根据权利要求1所述的方法,其特征是,所述的在视频编码结构的不同层级上计算比特预算值包括:
对视频编码数据所要适配的目标容量和编码类型进行检测;
基于可用目标容量和帧编码类型,在帧或宏块的层次上分配比特预算值;或,
基于帧的可用字节数和宏块编码类型,在块的层次上分配比特预算值。
4.根据权利要求3所述的方法,其特征是,
所述的目标容量是指:可用网络带宽或可用存储空间;
所述的编码类型是指:帧内型或帧间型。
5.根据权利要求1所述的方法,其特征是,所述的获取视频场景中比特预算值和最大游程长度之间的线性关系包括:
在视频场景中,找出视频块最大游程长度与其编码所用比特预算值之间的线性关系;如果场景发生切换,则对新的视频场景中视频块最大游程长度与其编码所用比特预算值之间的线性关系进行重新确定。
6.根据权利要求1所述的方法,其特征是,所述的获取视频场景中最大游程长度与量化参数之间的关系包括:
在视频场景中,通过自学习得出视频块最大游程长度与对其所对应的量化系数之间关系的匹配表;如果场景发生变化,则对新的视频场景中视频块最大游程长度与对其编码所需量化系数之间关系的匹配表进行重新自学习,并得出新的匹配表。
7.根据权利要求3所述的方法,对视频编码数据所要适配的目标容量和编码类型进行检测,基于可用目标容量和帧编码类型包括,找出可用网络带宽,找出帧的场景活动,基于帧的编码类型和视频序列范围内场景活动,在帧或宏块的层次上分配比特数;基于帧的可用字节数和宏块编码类型,在块的层次上分配比特预算值包括记录所剩余的比特数,找出块的场景活动,基于帧的可用比特数、宏块的编码类型和块的场景活动,在块的层次上分配比特数。
8.根据权利要求5所述的方法,其特征是,所述的在视频场景中找出视频块最大游程长度与其编码所用比特预算值之间的线性关系是指:找出决定视频块最大游程长度与其编码所需比特预算值之间线性关系的斜率。
9.根据权利要求1所述的方法,其特征是,所述方法包括以下具体步骤:
对视频编码数据进行接收;
对所述视频编码数据所要适配的目标容量进行检测,并且:基于可用目标容量和帧编码类型,在帧或宏块的层次上分配比特预算值;或,基于帧的可用比特数和宏块编码类型,在块的层次上分配比特预算值;
在视频场景中,找出视频块最大游程长度与其编码所用比特预算值之间的线性关系;如果场景发生切换,则对新的视频场景中视频块最大游程长度与其编码所用比特预算值之间的线性关系进行重新确定;
在视频场景中,通过自学习得出视频块最大游程长度与其所对应的量化系数之间关系的匹配表;如果场景发生变化,则对新的视频场景中视频块最 大游程长度与对其编码所需量化系数之间关系的匹配表进行重新自学习;
找出备选的非零离散余弦变换(DCT)的离散余弦变换系数,并通过将所述的离散余弦变换系数设置为零来增加视频块的最大游程长度,以使视频块编码的比特数不超出比特预算值;
输出适配处理后的视频编码数据。
10.一种视频容量适配装置,其特征是,所述装置包括:
比特分配单元,用于在视频编码结构的不同层级上计算并分配比特预算值;
斜率获取单元,用于获取视频场景中比特预算值和最大游程长度之间的线性关系;
匹配表获取单元,用于获取视频场景中最大游程长度与量化参数之间的关系;
码速控制单元,用于根据获取的比特预算值和最大游程长度之间的线性关系以及最大游程长度与量化参数之间的关系,将视频压缩码速控制在所述比特预算值之内。
11.根据权利要求10所述的装置,其特征是,所述的装置还包括:
比特数判断单元,用于判断视频块所用比特数是否超出了其指定比特预算值;
离散余弦变换系数定位器,如果所述比特数判断单元的判断结果为是,则选取非零离散余弦变换(DCT)系数,并将所述离散余弦变换系数设置为零,以增加最大游程长度和减少视频块所需比特数,使视频块编码的比特数不超出比特预算值。
12.根据权利要求10所述的装置,其特征是,所述的比特分配单元包括:
检测器,用于对视频编码数据所要适配的目标容量和编码类型进行检测;
比特分配器,基于可用目标容量和帧编码类型,在帧或宏块的层次上分配比特预算值;或,
比特分配器,基于帧的可用比特数和宏块编码类型,在块的层次上分配比特预算值。
13.根据权利要求12所述的装置,其特征是,
所述的目标容量是指:网络带宽或存储空间;
所述的编码类型是指:帧内型或帧间型。
14.根据权利要求10所述的装置,其特征是,所述的斜率获取单元包括:
最大游程长度计算器,用于计算视频块最大游程长度;
斜率自学习器,用于在视频场景中,找出视频块最大游程长度与其编码所用比特预算值之间的线性关系的斜率;如果场景发生切换,则对新的视频场景中视频块最大游程长度与其编码所用比特预算值之间的线性关系进行重新确定。
15.根据权利要求10所述的装置,其特征是,所述的匹配表获取单元包括:
量化系数估计器,用于获取量化系数;
匹配表自学习器,用于在视频场景中,通过自学习得出视频块最大游程长度与对其所对应的量化系数之间关系的匹配表;如果场景发生变化,则对新的视频场景中视频块最大游程长度与对其编码所需量化系数之间关系的匹配表进行重新自学习,并得出新的匹配表。
16.根据权利要求10至15之一所述的装置,其特征是,所述的装置适用于包括手机、PDA进行视频带宽适配的终端设备上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710119573 CN101106715B (zh) | 2007-07-26 | 2007-07-26 | 一种视频带宽适配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710119573 CN101106715B (zh) | 2007-07-26 | 2007-07-26 | 一种视频带宽适配方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101106715A CN101106715A (zh) | 2008-01-16 |
CN101106715B true CN101106715B (zh) | 2012-08-29 |
Family
ID=39000350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710119573 Expired - Fee Related CN101106715B (zh) | 2007-07-26 | 2007-07-26 | 一种视频带宽适配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101106715B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120009618A (ko) * | 2010-07-19 | 2012-02-02 | 에스케이 텔레콤주식회사 | 주파수변환단위 분할부호화 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치 |
CN101984661B (zh) * | 2010-11-23 | 2012-05-23 | 广东威创视讯科技股份有限公司 | 视频会议系统的信息传输方法及视频会议系统 |
US9398302B2 (en) * | 2013-03-08 | 2016-07-19 | Mediatek Inc. | Image encoding method and apparatus with rate control by selecting target bit budget from pre-defined candidate bit budgets and related image decoding method and apparatus |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6118903A (en) * | 1997-07-18 | 2000-09-12 | Nokia Mobile Phones, Ltd. | Image compression method and apparatus which satisfies a predefined bit budget |
CN1524384A (zh) * | 2001-11-22 | 2004-08-25 | ���µ�����ҵ��ʽ���� | 可变长度编码方法以及可变长度解码方法 |
CN1778117A (zh) * | 2003-04-18 | 2006-05-24 | 皇家飞利浦电子股份有限公司 | 使用参变速率失真模型对视频编码进行数率失真优化数据划分的系统和方法 |
-
2007
- 2007-07-26 CN CN 200710119573 patent/CN101106715B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6118903A (en) * | 1997-07-18 | 2000-09-12 | Nokia Mobile Phones, Ltd. | Image compression method and apparatus which satisfies a predefined bit budget |
CN1524384A (zh) * | 2001-11-22 | 2004-08-25 | ���µ�����ҵ��ʽ���� | 可变长度编码方法以及可变长度解码方法 |
CN1778117A (zh) * | 2003-04-18 | 2006-05-24 | 皇家飞利浦电子股份有限公司 | 使用参变速率失真模型对视频编码进行数率失真优化数据划分的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101106715A (zh) | 2008-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101946515B (zh) | Cabac译码器的二回合量化 | |
CN101911702B (zh) | 针对支持cabac的视频编码过程而量化视频块的系数的方法和装置 | |
KR101518358B1 (ko) | 비디오 코딩에서 프레임 복잡성, 버퍼 레벨 및 인트라 프레임들의 위치를 이용하는 버퍼 기반의 비율 제어 | |
CN102986211B (zh) | 视频编码中的速率控制 | |
EP3284257B1 (en) | Quantization parameter (qp) calculation for display stream compression (dsc) based on complexity measure | |
CN106165420B (zh) | 用于译码视频数据的方法及装置 | |
EP1359764A2 (en) | Video encoding method with fading compensation | |
JP2008035134A (ja) | 画像符号化装置 | |
EP3284253A1 (en) | Rate-constrained fallback mode for display stream compression | |
KR101166732B1 (ko) | 추정된 코딩 비용을 이용하는 비디오 코딩 모드 선택 | |
CN100579233C (zh) | 变换域中零的早期检测 | |
KR20100079037A (ko) | 비디오 영상 부호화 방법 및 장치 | |
EP3284256A1 (en) | Complex region detection for display stream compression | |
KR20040015477A (ko) | 이산코사인변환 계수를 참조하는 움직임 추정 방법 및 장치 | |
CN101106715B (zh) | 一种视频带宽适配方法及装置 | |
AU2001293994B2 (en) | Compression of motion vectors | |
KR20130032807A (ko) | 동영상 부호화 장치 및 방법 | |
KR20130023444A (ko) | 다단계 화면간 예측을 이용한 영상 부호화/복호화 장치 및 방법 | |
CN109495745B (zh) | 一种基于逆量化/逆变换的无损压缩解码方法 | |
EP3326367A1 (en) | Modification to block size for transform mode in display stream compression | |
KR102020953B1 (ko) | 카메라 영상의 복호화 정보 기반 영상 재 부호화 방법 및 이를 이용한 영상 재부호화 시스템 | |
KR100809013B1 (ko) | 복잡도 가변형 동영상 부호화 장치 및 그 방법 | |
CN100563344C (zh) | 视频压缩中自适应扫描和解压缩中自适应反扫描的方法 | |
Pandit et al. | Pruned-AZB for reduced complexity block matching in video compression | |
Maksimovic et al. | The impact of successive B frames on video using H. 264 and H. 265 compression techniques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120829 Termination date: 20160726 |