CN1328748A - 视频编码器速率控制的方法及设备 - Google Patents

视频编码器速率控制的方法及设备 Download PDF

Info

Publication number
CN1328748A
CN1328748A CN99813843A CN99813843A CN1328748A CN 1328748 A CN1328748 A CN 1328748A CN 99813843 A CN99813843 A CN 99813843A CN 99813843 A CN99813843 A CN 99813843A CN 1328748 A CN1328748 A CN 1328748A
Authority
CN
China
Prior art keywords
frame
image
video
quantized level
target
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.)
Pending
Application number
CN99813843A
Other languages
English (en)
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.)
Arris Technology Inc
Original Assignee
General Instrument Corp
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 General Instrument Corp filed Critical General Instrument Corp
Publication of CN1328748A publication Critical patent/CN1328748A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/142Detection of scene cut or scene change
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/177Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供了一种控制数字视频编码器的量化级的方法及设备,数字视频编码器采用多个并行压缩引擎(12)。输入图像被划分为多个图像画面(10),每个画面由一个单独的压缩引擎(12)进行压缩。在对视频帧进行编码之前,确定基准量化级。将基准量化级应用于由视频编码器处理的每个图像画面的第一个切片。驱使图像画面最后一个切片的量化级向画面第一个切片的量化级靠近。驱动步骤可利用分段线性反馈公式。基于至少一个压缩引擎的处理流水线内的多个胶片图像及非胶片图像,来调整图像组(GOP)的目标比特率。给非胶片图像提供较高的目标比特率。利用视频编码器的缓冲存储器(16)的缓冲级来控制新图像组(GOP)的开始。如果缓冲存储器没有足够的空间来容纳新图像组(GOP)的一个内编码(Ⅰ)帧,则延迟新图像组的开始。

Description

视频编码器速率控制的方法及设备
本申请要求申请日为1998年10月2日的美国临时申请No.60/102,800的优先权。
              本发明的背景
本发明涉及视频处理,特别是涉及电视编码器,例如,高清晰度数字电视(HDTV)和标准清晰度电视(SDTV)编码器内用于压缩视频的多编码引擎的数据生成速率的一种控制方法及设备。
本说明书的参考文献如下:
1. ATSC(高级电视系统委员会)A53标准,题为“ATSC数字
   电视标准”。
2. ATSC A54标准,题为“ATSC数字电视标准使用指南”。
3. ISO/IEC(国际标准化组织/国际电工委员会)13818-2“活动
   图像及相关音频:视频的通用编码”(MPEG2)。
4. ISO/IEC JTC1/SC29/WG11/MPEG93/457“MPEG2测试模式
   5”。
5.“美国高级电视大联盟编码器样机的速率控制”,Siu-Wai Wu,1994年11月提交给大联盟视频压缩专家组的论文。
速率控制是视频编码器的一项重要职责。就HDTV编码器而言,是使用多编码引擎对图像进行数据压缩处理。这些编码引擎同步处理图像,但使用一个公用的数据缓冲存储器。因此,必须仔细地控制多编码引擎的数据生成速率,以防止数据缓冲存储器出现上溢、下溢及其它问题。
过去,建议将各种速率控制算法和一个视频压缩器一起使用。例如,参看前面提到过的“MPEG2测试模式5”。就美国高级电视大联盟对HDTV编码所采用的方法而言,并行多编码引擎同步于视频切片而不是帧级(frame lever);因此,能够象仅使用一个视频压缩器那样来处理速率控制问题。在以前的技术方案中,没有一种技术方案能够较好地解决多压缩引擎的数据生成速率的控制问题,以控制并行多压缩引擎数字视频编码器的量化。
因此,有益的是:提供一种有效的速率控制算法,调节多编码引擎的数据生成速率,以优化视频质量;利用视频编码器现有的控制器微处理器来执行算法。本发明即提供了一种享有上述优点及其它优点的方法及设备。
                    本发明的概述
根据本发明,可保证多压缩引擎视频编码器的速率控制,视频编码器的多个压缩引擎对图像进行同步处理并共用一个缓冲存储器。利用非线性反馈来使图像画面(image panel)最后一个切片(slice)的量化器的量化级(quantizer scale)近似于图像画面第一个切片的量化级,以避免在图像画面的边界因量化级突变而造成可见的人工痕迹。
图像组(GOP)的目标比特率,可根据压缩引擎处理流水线内的多个胶片图像及非胶片图像(film pictures and non-film pictures)来进行调整。当视频从胶片图像转换到非胶片图像时,虽然非胶片图像的处理通常需要较高的目标比特率,但速率控制算法能够适应目标比特率的调整,反之亦然。
缓存级(buffer level)用来控制新图像组的开始。如果没有足够的空间来容纳内编码(I)帧,则延迟新图像组的开始。
更具体地讲,本发明给采用多个并行压缩引擎的数字视频编码器提供了进行量化控制的方法及设备。可为一帧图像确定目标量化级(target quantization lever)。将目标量化级应用于代表一帧图像的并由视频编码器并行处理的多个图像画面中每个图像画面的第一个切片。驱使每个图像画面最后一个切片的量化级向目标量化级靠近。
例如,可以利用分段线性反馈来驱使每个图像画面最后一个切片的量化级靠近目标量化级。分段线性反馈能够补偿在每个图像画面第一个切片和最后一个切片之间量化级的偏差。
图像组(GOP)的目标比特率,可根据至少一个压缩引擎处理流水线内的多个胶片图像及非胶片图像来进行调整。能够给非胶片图像提供较高的目标比特率。
缓存级能够用来控制新图像组的开始。如果缓存器内没有足够的空间来容纳新图像组的一个内编码(I)帧,则延迟新图像组的开始。
每个输入图像可被划分为一定数量的图像画面,每个图像画面由一个单独的压缩引擎进行压缩。这些图像画面能够在一个帧时(frame time)内被同步压缩。图像画面的压缩数据在压缩引擎上进行本地存储,在下一个帧时内顺序传输给视频编码器的视频缓冲存储器。只要缓冲存储器中至少有一个数据传输包的数据量,就以等于用户指定比特率的平均速率,从缓冲存储器中检索数据,对数据进行打包。当缓存级低于一个数据传输包的数据量时,将用空包代替视频数据包,以保持稳定的传输比特率。
给每个压缩引擎计算基准量化器的量化级。基准量化级的计算,是基于每个压缩引擎的量化器量化级值的累加(PanelSumQuant)、每个压缩引擎所产生的比特数的累加(PanelBitCount);每个压缩引擎所处理的宏块数的累加(PanelMbCount);及编码器内缓冲存储器的缓存级(VideoBufferLevel)。每个压缩引擎根据本地缓冲存储器的充满度来修改其基准量化器的量化级,以产生一个供量化使用的最终量化器的量化级值。如果最终量化器的量化级值高于预定的最高值,则压缩引擎能够启动应急模式。应急模式将把全部或部分DCT(二维离散余弦变换)系数改变为0。
本发明还提供了一种方法,用于对数据速率进行控制,在该速率下,数字视频编码器采用多个并行压缩引擎来压缩连续视频数据宏块。连续帧的帧频控制,是根据图像起始中断服务例行程序(interrupt service routine),对每个编码图像进行一次帧频控制;宏块级速率的控制,是根据速率控制中断服务例行程序,对每个编码图像进行多次宏块级速率控制。
图像起始中断服务例行程序通过处理前一个编码帧的数据,更新帧级统计变量。如果即将处理的新帧中含有内编码(I)帧,则为新的图像组(GOP)计算目标比特率。对于要进行编码的每一个帧,都要对允许产生新帧的比特数的上、下限进行计算。为每一个帧和由每个帧划分而来的多个图像画面中的每个画面,计算目标比特数。通过与被处理图像的复杂性数值成正比地分配比特数,可计算出目标比特数。帧的目标量化级被提供给多个压缩引擎中的每个压缩引擎,作为其初始基准量化器的量化级,供对帧的开始编码时使用。
在最佳实施例中,如果基准量化器的量化级过高,无法在可用上限范围内保存产生新帧所需的比特数,则压缩引擎可将视频帧宏块的一些DCT(二维离散余弦变换)系数改变为0。
速率控制中断服务例行程序提供中断,它启动帧目标量化器的量化级的变换(modulation)。目标量化器的量化级的变换可根据反馈来进行,反馈将设法把多个视频图像画面中的每个画面的实际比特数引到每个画面的对应目标比特数。
                    附图的简要说明
图1为一种可以利用本发明的HDTV编码器的示意方框图。
                    本发明的详细说明
本发明为采用多个并行压缩引擎的数字视频编码器提供了一种速率控制方法及设备。按照图1所示的最佳实施例,每帧输入图像被HDTV画面划分器划分为8个图像画面(image panel)。每个图像画面都利用一个单独的压缩器12进行压缩,例如,压缩器12为DvXpert芯片(可从C-Cube Microsystems公司购买到,公司地址:1778 McCarthy Blvd.,Milpitas,CA 95035,USA)。应当知道的是,本发明也适用于其它数量的图像画面,而且也能够在非DvXpert芯片的视频编码器上实现。
由输入图像划分而成的各个图像画面,在一个帧时内被同步压缩。图像画面的压缩数据在压缩引擎上进行本地存储,在下一个帧时内传输给主视频FIFO(先进先出)16(“视频缓存器”)。只要FIFO16中至少有一个数据传输包的数据量(184比特),就以等于用户指定比特率(bit rate)的平均速率,从FIFO中检索数据,对数据进行打包。当FIFO的缓存级低于一个数据传输包的数据量(184比特)时,将用空包代替视频数据包,以保持稳定的传输比特率,有效地降低视频比特率。如图1中所示,打包处理器18输出压缩比特流。
速率控制功能主要由主压缩控制器(MCC)14来完成。主压缩控制器从图像画面压缩器采集各种统计量(PanelSumQuant、PanelBitCount及PanelMbCount),并从视频FIFO中采集缓存级,而后,给每个图像画面的压缩器计算出一个8比特基准量化器的量化级(PanelQuant)。然后,每个压缩器根据本地活动及本地缓冲存储器的充满度来修改基准量化器的量化级,以产生一个供量化使用的最终量化器的量化级值。如果所期望的量化器的量化级高于MPEG量化表所支持的最高值,则压缩引擎能够启动应急模式,将部分DCT(二维离散余弦变换)系数改变为0。
同步中断发生器20,接收HDTV的输入信号。它在每个输入场的开始时给主压缩控制器提供一个场同步中断,并在一个场时内周期性地(例如,对于1080I模式而言,为每1.76ms一次)给主压缩控制器提供速率控制(RC)同步中断。如果画面压缩器在当前场时已准备好对一个新图像进行编码,则一个场同步中断被视为一个新图像的开始。主压缩控制器的速率控制分为两部分进行:(1)帧频控制,根据图像起始中断服务例行程序,对每个编码图像进行一次帧频控制;(2)宏块级速率控制,根据速率(RC)控制中断服务例行程序,对每个编码图像进行多次宏块级速率控制,对于1080隔行扫描模式(1080I)而言,最多进行20次(对于720逐行扫描(720P)模式而言,最多进行10次)。由于画面压缩器的编码过程仅占用场时内的部分时间,因此,平均来讲,只有大约8次RC中断被用来调整量化。
速率控制的目标是保持稳定的视频质量。速率控制算法的一个基本前提是:具体图像类型的编码复杂性,在稳定场景的帧与帧之间几乎相同,并可以用平均量化器的量化级与帧(或画面)的比特数之乘积来衡量。通常根据前一帧的复杂性来估计当前帧的复杂性,但当场景发生变化或场景从黑暗淡入(fade-in)的情况下除外,在发生这种情况时,复杂性的估计数值被复位到一些暂定的数值。
在图像起始中断时,主压缩控制器首先通过处理前一个编码帧的数据,来更新帧级统计变量。如果即将处理的新帧中含有内编码(I)帧,则给新图像组(GOP)计算目标比特率。计算图像组目标比特率的目的是:每个图像组开始时,编码器中缓冲存储器的充满度始终保持在低水平,以便缓冲存储器内有足够的空间来容纳因新I帧所产生的骤增的比特数。
对于要进行编码的每一个帧,主压缩控制器都要对允许产生新帧的比特数的上、下限进行计算。比特数的上、下限计算根据编码器缓冲存储器或解码器缓冲存储器被允许上溢或下溢的约束条件来进行。另外,主压缩控制器还为每一个帧和由每个帧划分而来的多个图像画面中的每个画面,计算目标比特数。通过与被处理图像复杂性数值成正比地分配比特数,可计算出目标比特数。而后,根据帧的目标比特率来计算出帧的目标量化器的量化级。帧的目标量化器的量化级被提供给多个压缩引擎中的每个压缩引擎,作为其初始基准量化器的量化级,供对帧开始编码时使用。
在每次速率控制同步中断时,主压缩控制器通过反馈机构来调整帧的目标量化器的量化级,反馈机构将设法把多个视频图像画面中的每个画面的实际比特数引到每个画面的对应目标比特数。如果在图像开始时,累加的比特数接近于计算的上限,则进一步提高经调整后的量化器的量化级值,以降低比特数的产生速率。然后,将最终的基准量化器的量化级值限制到适用于8比特的整数值,以传输给每个画面压缩器。
画面压缩器在收到基准量化器的量化级后,对其本地缓存级进行检验,如果需要保护缓冲存储器的话,则提高基准量化器的量化级。另外,如果基准量化器的量化级过高的话,画面压缩器还可以使一些DCT(二维离散余弦变换)系数改变为0。然后,以类似于MPEG2测试模式5中所描述的方式,进行自适应量化,并从活动图像专家组(MPEG)量化级表,查阅实际量化级。
下面是对速率控制算法运算操作的详细说明。1.变量表
名称 默认值 说明
BitRate 用户确定 基本视频比特率(比特/秒)
N 用户确定 GOP标定长度
M 用户确定 相邻I帧或P帧的时间间隙
Nb 不确定(N/A) GOP中B帧的标定数量
Np 不确定 GOP中P帧的标定数量
FrameRate 用户确定 输入视频的帧频
PanelSumQuant[0…7] 不确定 每个画面压缩器的量化级值的累加
PanelBitCount[0…7] 不确定 每个画面压缩器所产生的比特数的累加
AvgQuant 不确定 编码帧的平均量化级值
SumPanelBitCount 不确定 给帧进行编码的所有图像压缩器所产生的总比特数。就速率控制中断而言,这是至此为帧所产生的比特数。
K[I,P,B]  0.751.00.75  I帧、P帧及B帧的加权
X[I,P,B] 不确定 编码复杂性的估计
Startup[I,P,B] 不确定 编码复杂性估计的起始值
StartupQuant 不确定 近似的最小量化级值,用于起始或场景变化或淡入
HeaderBitCount 不确定 图像内的比特数和/或编码帧内的序列标头数
FrameBitCount 不确定 编码帧的总比特数
VideoBufferLevel 不确定 存储在物理视频FIFO内的比特数
EncoderBufferLevel 不确定 存储在编码器各缓冲存储器内的总比特数
BufferDelay 不确定 编码器和解码器的总缓冲延迟
TargetBufferLevel 不确定 在新GOP开始时,编码器缓冲
存储器的近似缓存级
GopDuration 不确定 当前GOP的估计持续时间
PipelineSize 不确定 在编码器当前处理流水线内的帧的数量
PipelineRepeatFields 不确定 在编码器当前处理流水线内的重复场的数量(3∶2拉开)
PictureDuration 不确定 当前帧的估计持续时间
β  0.75  GOP反馈因数
MaxJitter  0.004秒 按照MPEG标准的最大传输跳动
FrameMaxDecoder 不确定 在解码器缓冲存储器的约束下,当前帧被允许产生的最大比特数
FrameMaxEncoder 不确定 在编码器缓冲存储器的约束下,当前帧被允许产生的最大比特数
VideoFifoSize  12582912比特 编码器的物理视频FIFO的容量
FrameMaxBits 不确定 在编码器和解码器约束下,当前帧被允许产生的最大比特数
InitialFrameBits 不确定 在没有反馈的情况下,通过当前帧所产生的目标比特数
FrameTargetBits 不确定 由当前帧所产生的目标比特数
AllocationFactor[P,B] 不确定 对P帧和B帧的比特分配的比例
PictureFeedback 不确定 在帧级上,比特过剩或不足的反馈
α 不确定 图像反馈因数
AccumulationFrameTargetBits 不确定 在当前GOP开始之后,帧的目标比特数的累加
FrameMinTarget 不确定 为避免编码器视频FIFO变空而产生的最小比特数
MaxTarget[I,P,B] 不确定 FrameTargetBits的最大允许值
MinTarget[I,P,B] 不确定 FrameTaretBits的最小允许值
FrameQuant 不确定 帧的目标量化值
MinFrameQuant  2 帧的最低目标量化值
LastFrameQuant 不确定 相同图像类型的上一个编码帧的目标量化值
LastAvgQuant 不确定 相同图像类型的上一个编码帧的平均实际量化级
PartialFrameTargetBits 不确定 根据编码帧内宏块数量估算的FrameTargetBits部分
PartialFrameMaxBits 不确定 根据编码帧内宏块数量估算的FrameMaxBits部分
SumPanelMbCount 不确定 所有画面压缩器对帧编码所产生的的宏块数量
CurrentQuant 不确定 当前使用的修正的量化级值
MacroblocksPerFrame 不确定 帧的宏块数量
MaxRcQuant  144 在不启动应急模式情况下的最大量化级值
MaxQuantNonIntraDCMul 不确定 对应于量化器的量化级值112的非帧内(non intra)量化乘法表的直流分量记录(DC entry)
PanicNonIntraMul 不确定 非帧内(non intra)应急表的直
流分量记录(DC entry)
PanicThreshold1.PanicThreshold2,PanicThreshold3 对于P帧和B帧,{750000,500000,1500000};对于I帧,{1500000,1000000,3000000} 应急模式使用的FrameMaxBits的阈值
LocalBufferSize  3452160比特 画面压缩器的本地缓冲存储器的大小
LocalBufferLevel 不确定 画面压缩器的本地缓冲存储器的充满度
PanelQuant 不确定 画面压缩器所使用的实际量化器的量化级值
2.初始化
(1)根据表1和表2,将所有参数设置为默认值。
(2)只要压缩数据包的最初184比特被写入FIFO,包处理器就将数据包从视频FIFO发出。3.配置
速率控制任务接收下列配置参数:
(1)基本视频流比特率(BitRate)
(2)GOP标定长度(N)
(3)每对I/P帧之间的时间间隙(M)
(4)视频格式(1920×1080I或1440×1080I或1280×720P)。
(5)帧频(29.97Hz或30Hz或59.94Hz或60Hz)4.MCC(主压缩控制器)图像起始中断(A)根据上一个编码帧,更新复杂性估计
首先,根据从画面读取的数据,计算出帧的比特数及平均量化级。复杂性计算中所使用的比特数,仅仅是切片层的比特数。主压缩控制器给标头所产生的比特数,并不包含在内。
AvgQuant=8个画面的PanelSumQuant之和/每帧的宏块数
SumPanelBitCount=8个画面的PanelBitCount之和
这些统计量被用来计算前面的编码图像的编码复杂性,其计算式如下:
AvgQuant*SumPanelBitCount
假定对于稳定的场景,具体图像类型的编码复杂性是相对稳定的,以致于可根据相同图像类型的最近编码帧的实际编码复杂性,对即将被编码的帧进行复杂性估计。由于I帧是偶尔出现的,因此,只有最近的编码I帧被用于复杂性估计(X[I])。作为稳定性和响应速度之间的补偿,利用相同图像类型的4个最近编码帧来产生对P帧和B帧的复杂性估计。应当知道:使用的帧数越多,则复杂性估计的稳定性越高,但响应速度会相应降低;同样,使用的帧数越少,则复杂性估计的稳定性越低,但响应速度会相应提高。
速率控制算法保持一个存有4个最近编码P帧的复杂性数值的队列及一个存有4个最近编码B帧的复杂性数值的队列。计算存储在P帧(或B帧)复杂性队列内的4个复杂性数值的平均数,作为对P帧(或B帧)的复杂性估计,X[P](或X[B])。
I帧、P帧和B帧的复杂性估计数值,被用来计算即将被编码的帧的目标量化级值和目标比特数。以下是对I帧、P帧和B帧进行复杂性估计的详细说明。
由于对上一个帧的编码统计而估算出复杂性,因此,当不能从前面而得到编码复杂性时,或者从前面得到的编码复杂性不可靠时,则需要在起始时、场景变化时或淡入时进行特殊的处理。
在起始时,I帧的复杂性估计数值,还有P帧和B帧的复杂性队列,被初始化到一组默认起始复杂性数值(Startup[I/P/B])。如果被编码的当前帧,是在场景变化或从黑色淡入之后的第一个I帧或P帧,则I帧的复杂性估计数值,还有存储在P帧和B帧复杂性队列内的数值,将被默认数值有条件地取代。将I帧的复杂性数值,还有存储在P帧和B帧复杂性队列内的每个数值,与起始复杂性数值进行比较。如果所存储的复杂性数值较小,则所存储的复杂性数值将被起始复杂性数值取代。
如果相邻出现多次场景变化(例如,闪烁、特技效果或剪辑不佳),则仅在第一次场景变化时,复杂性估计数值被复位。如果这种复杂性估计数值的调整是发生在上一个P帧内,则略去复位。
默认起始复杂性估计数值是根据一个前提而计算出的适中的复杂性估计数值,这个前提是:I帧使用的比特数约为P帧的4倍,B帧使用的比特数大约比P帧少20%。I∶P∶B为4.0∶1.0∶0.8的这个比例是从实验观测中获得的,也可能是其它的数值比例。另外,起始复杂性估计数值假定了一个临时的平均量化级(StartupQuant)值,它对10Mbps~26 Mbps之间的比特率,在20~28之间线性变化。对低于10Mbps的比特率,临时的平均量化值被定为20;对高于26Mbps的比特率,临时的平均量化值被定为28。
I帧、P帧和B帧的起始复杂性估计数值的计算公式如下:
StartupX{I}=4.0*StartupQuant*N*(BitRate/FrameRate)/
(4.0+1.0*Np+0.8Nb)
StartupX{P}=1.0*StartupQuant*N*(BitRate/FrameRate)/
(4.0+1.0*Np+0.8Nb)
StartupX{B}=0.8*StartupQuant*N*(BitRate/
FrameRate)/(4.0+1.0*Np+0.8Nb)
为了加速P帧和B帧的复杂性估计数值向新场景收敛,提供了一种状态机器(state machine),在复杂性估计数值复位之后,负责P帧和B帧复杂性估计值的更新。
1.对在场景变化(或从黑色淡入)之后的起始I帧或P帧来说,在对帧进行编码之前,将复杂性估计数值设置为复比特数值。在对起始帧进行编码之后,用新的编码复杂性估计数值(AvgQuant*SumPanelBitCount)来更新复杂性估计数值。如果起始帧为I帧,则更新I帧的复杂性估计数值。如果起始帧为P帧,则用新的编码复杂性估计来取代整个P帧的复杂性队列。P帧的编码复杂性,还被用来估计B帧的编码复杂性,整个B帧的复杂性队列将用P帧的编码复杂性乘以数值0.8来取代,0.8这个数值为B帧复杂性对P帧复杂性之比。当然,也可以使用其它合理的数值。
2.由于再定序的原因,在起始I帧或P帧之后的第一组B帧可能属于老的场景。因此,如果第一组B帧内仅有一个B帧(M=2),则在对这个B帧编码之后,放弃这个编码复杂性,使B帧复杂性队列在这个B帧被编码之后仍保持为复比特数值。如果第一组B帧内的B帧多于一个(M=3),则第一个B帧的编码复杂性被用作组内下一个B帧的复杂性估计数值。因此,除了组内最后一个B帧之外,B帧复杂性队均被正常更新。在对组内最后一个B帧编码之后,B帧的复杂性队列被设置为复比特数值,从而,使可能来自老场景的统计量将不会污染新场景的复杂性估计。
3.如果起始帧为I帧,则在对起始I帧后面的第一个P帧编码之后,整个P帧复杂性队列将被新的编码复杂性所取代。B帧的复杂性队列将用P帧的编码复杂性乘以数值0.8来取代,0.8这个数值为B帧复杂性对P帧复杂性之比。如果起始帧为P帧,则在对起始P帧之后的第一个P帧编码之后,正常更新复杂性队列。
4.在对起始帧之后第二组B帧内的第一个B帧编码之后,整个B帧复杂性队列将被新的B帧编码复杂性(AvgQuant*SumPanelBitCount)取代。
5.对于此后的每个帧,正常更新复杂性队列(用新的数值来取代最老的记录)。例如,按照下面的帧序列(按照编码序列):I0,B1,B2,P3,B4,B5,P6,------,假定在I0帧出现一次场景变化,则在对I0进行编码之前,将复杂性估计数字复位。在对I0进行编码之后,I帧复杂性被更新。在对B1帧编码之后,B帧复杂性队列被设置为新的编码复杂性。这个新的复杂性估计数值用于对B2帧进行编码。在对B2帧编码之后,B帧的复杂性队列被设置为复比特数值。在对P3帧编码之后,整个P帧的复杂性队列被P3帧的编码复杂性所取代,而整个B帧的复杂性队列被P3帧的编码复杂性乘以一个数值(例如,0.8)所取代。在对B4帧编码之后,整个B帧的复杂性队列被B4帧的编码复杂性所取代。从B5帧和P6帧向前,正常更新复杂性队列。
按照下面的帧序列(按照编码序列):P0,B1,B2,P3,B4,B5,P4,------,考虑在P0帧出现从黑色淡入的情况,在对P0帧编码之前,复杂性估计数值(包括I帧的复杂性估计数值在内)必须复位。在对P0帧编码之后,P帧的复杂性队列被P0帧的编码复杂性所取代,而且B帧的复杂性队列被设置为P3帧的编码复杂性乘以一个数值(例如,0.8)。在对B1帧编码之后,B帧的复杂性队列被设置为新的编码复杂性。这个新的复杂性估计数值用于对B2帧进行编码。在对B2帧编码之后,B帧的复杂性队列被设置为复比特数值。在对P3帧编码之后,P帧和B帧的复杂性队列的更新方式与在对P0帧编码之后的更新方式相同。在对B4帧编码之后,整个B帧的复杂性队列被B4帧的编码复杂性所取代。从B5帧和P6帧向前,正常更新复杂性队列。
淡出(fade-out)到黑色将提高P帧和B帧的复杂性,但将降低I帧的复杂性。因此,在探测到淡出的情况时,对第一帧,将用大于1的系数乘以B帧和P帧复杂性队列的每个记录,以提高复杂性估计数值。例如,对于P帧的复杂性来说,可以使用乘数1.25;对于B帧的复杂性来说,可以使用乘数1.5。对于探测到淡出的每个帧,通过给每个帧乘以小于1的系数,来降低I帧的复杂性估计数值。例如,在淡出到黑色期间,可以使用乘数0.975来降低I帧的复杂性估计数值。(B)更新编码器的缓冲存储器的状态
因为压缩数据经PCI总线从画面压缩器的本地缓冲存储器到视频FIFO的数据传输速率,和视频FIFO的数据输出速率相比,要快得多,因此,我们可以将视频FIFO和画面压缩器的本地缓冲存储器视为一个整体,来考虑编码器的缓冲级。视频FIFO的缓存级锁存于场同步,由主压缩控制器经PCI总线接口读出。
首先,计算由前一帧所产生的总比特数,公式如下:
FrameBitCount=SumPanelBitCount+HeaderBitCount
然后,计算总的编码缓存级,公式如下:
EncoderBufferLevel=VideoBufferLevel+FrameBitCount
如果当前帧为I帧,则新图像组被确定。在对I帧编码之前,主压缩控制器的速率控制算法计算新图像组的目标比特数,给图像组假定一个标定帧数(N)。主压缩控制器的速率控制算法将在每个图像组开始时,设法使视频缓冲级(TaargetBufferLevel)始终为低水平。TargetBufferLevel被设置为在编码器和解码器内的可用缓冲空间的几分之一(1/8)。
TargetBufferLevel=(BufferDelay*BitRate)/8
其中,BufferDelay为总缓冲延迟,有关总缓冲延迟的问题将在后面的D部分中说明。
首先,主压缩控制器预测即将来临的基于胶片模式状态的图片组的持续时间(GopDuration)。图像组被分为两个部分,即:(1)已经过预处理并在编码器流水线内等待的帧;(2)尚未进入编码器流水线的未来帧。对已处于编码器流水线之内的帧来说,可根据在流水线内的帧数(PipelineSize)和有重复场的帧数(PipelineRepeatFields),计算出在流水线内的帧的精确持续时间。对尚未进入编码器流水线的未来帧来说,假定这些帧的胶片模式类别与最近预处理的帧相同,如果这些帧被分类为胶片的话,则将继续3-2拉下模式。
在PipelineSize和PipelineRepeatFields的计算中,并不将当前的I帧包括在内。但是,当前帧的精确持续时间(PictureDuration)能够从重复场状态中获知。如果被编码的当前帧具有重复第一场,则PictureDuration等于(1.5/FrameRate),否则,PictureDuration等于(1.0/FrameRate)。这个过程可利用下列代码来实现:
if(most recently preprocessed frame is film){

    if(N-1-PipelineSize)is even){

       GopInputFrames=PipelineSize+(0.5*PipelineRepeatFields)+1.25*(N-
1-PipelineSize)

    }else{

       if(most recently preprocessed frame has repeatfirst field){

         GopInputFrames=1.0+PipelineSize+(0.5*PipelineRepeatFields)
+1.25*(N-2-PipelineSize)

     }else{

       GopInputFrames=1.5+PipelineSize+(0.5*PipelineRepeatFields)
+1.25*(N-2-PipelineSize)

     }

    }
}
GopDuration=PictureDuration+(GopInputFrames/InputFrameRate)
新图像组的目标比特率是新图像组期间所传输的比特数和上一个图像组所转入的剩余或不足的平均值。这种转入通过当前缓冲级与目标缓冲级之间存在偏差而反应出来。具体公式为:
Gop_target=(GopDuration*BitRate)+β*(TargetBufferLevel-EncoderBufferLevel)
其中,β为自适应反馈控制因数。当有剩余比特从上一个图像组转入时(EncoderBufferLevel<TargetBufferLevel),则β=1,而当存在不足时(EncoderBufferLevel>TargetBufferLevel),则β=0.75。这种安排使得速率控制算法能够快速响应而利用上一个图像组剩下的没有被使用的比特(如果有的话),另外,如果上一个图像组使用的比特数高于预算值,则还能够避免新图像组的比特缺乏。任何负反馈都将被缓冲存储器吸收,并传给未来的图像组,以避免视频质量的突然下降。在图像组期间,如果将图像组的长度延长到使下一个I帧对准场景变化(即胶片模式状态变化),则可以对GopTarget进行调节。
(C)调节GopTarget
在图像组内,调节每帧的GopTarget,方法如下:
(1)如果探测到场景发生变化,则编码器可以将图像组的长度延长到使下一个I帧对准场景变化。在这种情况下,根据对附加的比特进行编码的比特需求,提高GopTarget。因为附加的B帧必须伴随以P帧,因此,这种调节仅对P帧进行。如果当前帧为胶片,则增量为(1.25*M*BitRate/FrameRate),在其它情况下,增量为(M*BitRate/FrameRate)。常数M为两个相邻P帧的时间间隙(在帧内)。
(2)在图像组的开始计算起始目标比特数时,如果最后一个预处理的帧为胶片模式,则假定整个图像组都将以胶片模式工作;如果最后一个预处理的帧为非胶片模式,则假定整个图像组都将以标准视频模式工作。但是,在图像组的中间,胶片模式状态可以改变。
如果最近预处理的帧属于当前图像组,并从非胶片模式转变到胶片模式,则根据图像组预计持续时间的预计增长,提高GopTarget。GopTarget的提高的计算公式如下:
0.25*(BitRate/FrameRate)*(Number of unprocessed framesremaining in the Gop)
其中,图像组中未处理的帧的数目(number of unprocessed framesremaining in the Gop)的计算公式如下:
N-1(图像组中已编码的帧的数目)-PipelineSize-1
其中,“图像组中已编码的帧的数目”的英文为“Number offrames already encoded in the GOP”。
另一方面,如果输入是从胶片模式转变为标准视频模式,则由于图像组预计持续时间的按所期望的缩短,从而使GopTarget降低同样的数量。如果图像组内被编码的帧的数量超过(N-PipelineSize-1),则略去这种从胶片到视频(或从视频到胶片)的调整。(D)缓冲存储器的保护
端到端的缓冲延迟由包处理器确定,其定义是:从图像的第一比特进入编码器FIFO时开始,到图像脱出编码器FIFO时(图像的编码器时间标记(DTS))为止,所经过的时间。主压缩控制器的速率控制算法利用这个延迟数值,计算出不会使编码器缓冲存储器出现上溢或下溢的图像最高允许比特数。就高比特率而言,系统存储比特数可等于编码器缓冲存储器的最大允许使用限度。但是,就低比特率而言,需要设定一个延迟上限(例如1/2秒),以确保合理的通道获取延迟。根据ATSC标准,假定编码器使用488*1024*16=7995392比特缓冲存储器。缓冲延迟的计算公式如下:
BufferDelay=Min(7995392 bits/BitRate,0.5 second)
例如,对于低于16Mbps的比特率,可将延迟定为0.5秒,对于高于16Mbps的比特率,延迟呈线性减小,例如,在比特率为40Mbps时,延迟减小到0.2秒。
为了防止编码器缓冲存储器出现下溢,编码器缓冲存储器内的所有比特,再加上为当前帧所产生的比特,必须在当前帧的解码时间之前,传输给解码器。由于PCI的带宽远远高于输出比特率,因此,我们可以假定从画面压缩器到视频FIFO的数据传输是瞬时的。当前帧的最坏解码时间为:在当前图像传输给视频FIFO之后的(BufferDelay-MaxJitter)时间单位,这碰巧是后面的一个图像处理时间。
如果编码器的当前缓冲级高于在当前帧时内从编码器缓冲存储器传输到解码器缓冲存储器的标定比特数(BitRate*PictureDuration),则将能够保持一个稳定的输出比特率(BitRate)。否则,包处理器将产生空包,用来填充在传输带宽中的空隙,有效地降低视频比特率。因此,在一个帧时之后,在当前图像进入视频FIFO时,预计的视频FIFO缓冲级为:
max(EncoderBufferLevel-(BitRate*PictureDuration),0)
从当前帧进入视频FIFO的时间到帧的解码时间,传输给解码器FIFO的最坏比特数为(BufferDelay-MaxJitter)*BitRate,从而,能够计算出可供当前帧使用的比特数,计算公式如下:FrameMaxDecoder=(BufferDelay-MaxJitter)*BitRate-Max(EncoderBufferLevel-(BitRate*PictureDuration),0)
为了防止编码器的缓冲存储器出现上溢,在当前帧被传输到视频FIFO时,当前帧的比特数再加上FIFO的缓冲级,不应当超过视频FIFO的容量(VideoFifoSize),即:FrameMaxEncoder=VideoFifoSize-Max EncoderBufferLevel-(BitRate*PictureDuration),0)
举例来说,视频FIFO的容量为12582912比特,不过,对普通技术人员来说,很明显,也可以使用其它适用的FIFO容量。
计算当前帧的最大允许比特流时,取FrameMaxEncoder和FrameMaxDecoder中的较小值。由于两个传输数据包(2*8*184=2944比特)的视频数据偏差被包括在内,为了保证安全界限,因此:FrameMaxBits=MIN(FrameMaxEncoder,FrameMaxDecoder)-2944
因为当视频FIFO中没有足够的数据时,包处理器将插入空包,以有效地降低视频带宽,因此,没有必要给帧的大小设置下限,来保护编码器或解码器的缓冲存储器。(E)计算帧的目标比特数
对于要进行编码的每个帧,主压缩控制器的速率控制算法将计算帧的目标比特数(FrameTargetBits)。基本概念是:与复杂性估计值成正比地给I帧、P帧和B帧分配可用的比特数,复杂性估计值通过一组不变的加权系数(K[I]、K[P]、K[B])进行调整。加权系数K[]可导致I帧、P帧及B帧具有不同的感觉及统计特性。举例来说,可使用加权系数(0.75,1.0,0.75),不过,也可以使用其它适用的加权系数。实际比特数与目标比特数的偏差部分被反馈以便调整未来帧的目标比特数。
对I帧来说:
FrameTargetBits=GopTarget*K[I]*X[I]/(K[I]*X[I]+
Np*K[P]*X[P]+Nb*K[B]*X[B])
然后,在将剩余比特数分配给P帧和B帧之前,从GopTarget值中减去I帧的FrameTargetBits值和I帧实际比特数中较小的那个值。需要注意的是,如果实际比特数超过了目标比特数,则从GopTarget中减去目标比特数,而不是减去实际比特数,原因是I帧的比特率要比P帧和B帧高得多。I帧实际比特率偏离目标比特率,可以用尽剩余P帧和B帧的比特数预算。通过把I帧的实际比特与P帧及B帧的比特分配相分离,将反馈延迟到下一个图像组。
对于P帧和B帧来说,分配比例的计算公式如下:
AllocationFactor[P]=(N-1)/(Np+Nb*Max(1/2,Min
(3,(K[B]*X[B]/K[P]*X[P])))
AllocatiorFactor[B]=(N-1)/(Nb+Np*Max(1/3,Min
(2,(K[P]*X[P]/K[B]*X[B])))
为了避免因复杂性估计不精确而造成的过度分配,将P帧对B帧的加权复杂性(K*X)的比值限制为1/2和3。然后,可将分配系数应用于P帧及B帧的平均可用比特数,从而计算出起始帧的目标比特数,其计算公式如下:InitialFrameTargetBits=AllocationFactor*GopTarget/(GopLength-1)
需要注意的是,GopLength为图像组的当前长度,它可以大于NominalGopLength,原因是图像组可以被延长到使下一令I帧对准场景变化。如果当前帧的计数(相对于图像组的开始而言)小于标定的图像组长度(N),则GopLength被设置成与N相同的数值。如果当前帧的计数超过N,则每当遇到P帧时,将GopLength增加M帧。然后,将反馈增加给InitialFrameTargetBits,以补偿实际比特数和目标比特数的偏差。反馈的计算公式如下:PictureFeedback=α*(AccumulatedFrameTargetBits-GopBitCount)
AccumulatedFrameTargetBits是自图像组开始之后的FrameTargetBits的累加。在每个P帧和B帧的累加中,FrameTargetBits中的PictureFeedback部分被排除在外。GopBitCount是当前帧所产生的比特数,其中包括上一个编码帧的比特数。
在对每个帧编码之后,GopBitCount被增加了由每个帧所产生的有效比特数。因为当视频FIFO的缓冲级低于产生一个数据传输包的要求时,将插入空包来保持稳定的传输比特率,因此,为上一个编码帧所产生的有效比特数的下限为:在下一个帧时内保持稳定输出比特率所需要的比特数减去已在视频FIFO内的比特数。所产生的有效比特数的计算公式如下:Max(FrameBitCount,(PictureDuration*BitRate-VideoBufferLevel))
常数α控制系统的响应。如果α过大,则系统变为不稳定;如果α过小,则系统响应缓慢。举例来说,可以将α设置为1/N,不过,也可以使用其它值。
如果反馈为负反馈的话,过度的负反馈可能会用尽当前帧的比特预算,为了避免过度的负反馈,PictureFeedback的大小被限定为不超过InitialFrameTargetBits的三分之一。
FrameTargetBits=InitialFrameTargetBits+PictureFeedback
最后,确定FrameTargetBits的上限和下限。必须使FrameTargetBits不接近用于缓冲存储器保护的最大允许比特数。否则,应急模式可能会过早启动,图像质量将会大大降低。虽然没有必要设定最小图像尺寸来保护缓冲存储器,但是,也希望编码帧能够大到带宽不会被发送空包来浪费掉。因此,将防止编码器视频FIFO变空所需要的最坏比特数定为FrameTargetBits的最小值,其计算公式如下:
FrameMinTarget=(1.5*BitRate/FrameRate)-Max
(EncoderBufferLevel-(BitRate*PictureDuration),0)
为了避免可能因复杂性估计不精确而产生极值,因而做了硬性限制,以使FrameTargetBits将不会超过硬性规定的上限和下限。
FrameTargetBits=Min(FrameTargetBits,0.8*FrameMaxBits,
MaxTarget)
FrameTargetBits=Max(FrameTargetBits,FrameMinTarget,
MinTarget)
MaxTarget和MinTarget的计算公式如下:
MaxTarget[I frame]=GopTarget-(N-1)*(Number ofMacroblocks per frame)*8
MaxTarget[P or B frame]=GopTarget/N
MinTarget[I frame]=GopTarget/N
MinTarget[P or B frame]=(Number of Macroblocksper frame)*8
其中,Number of Macroblocks per frame为每帧的宏块数。(F)确定帧的目标量化器的量化级
根据帧的目标比特率及复杂性估计值,计算目标量化器的量化级。目标量化级有上限和下限的限制。下限用来防止因复杂性估计不精确而造成量化级过低。上限受最大MPEG非线性量化器的量化级值的限制。
FrameQuant=Max(MinFrameQuant,X[Picture_type]/
FrameTargetBits)
其中,MinFrameQuant被设定为2。
在复杂性估计不精确的情况下,特别是在复杂静止图像的情况下,为了提高稳定性,如果目标量化值从较高的值突降,则速率控制算法给P帧和B帧的目标量化值设定了一个下限。如果FrameQuant小于相同图像类型的上一个AvgQuant并小于24,则对FrameQuant进行如下调整:
FrameQuant=Min(StartupQuant,(FrameQuant+Max(LastFrameQuant,LastAvgQuant))/2
其中,LastFrameQuant为相同图像类型的最近编码帧的目标量化值(FrameQuant),LastAvgQuant为相同图像类型的最近编码帧的实际平均量化级值(AvgQuant)。
然后,用一个最大值,将主压缩控制器计算的目标量化级(FrameQuant)值定位,并将目标量化级值传输给画面压缩器,开始用来对画面进行编码。画面压缩器的上限设定及量化方针(strategy)将在后面进行介绍。量化器的量化级值在速率控制同步中断时,借助反馈过程进行周期性调整,以使图像的实际比特数向目标比特数方向靠近。(G)如果缓冲级过高,则新图像组的延迟开始
在新图像组可以开始之前,速率控制算法确定缓冲存储器内是否有足够的空间来容纳由即将来临的I帧所产生的聚增的比特数。因为速率控制任务是在确定图像类型之后实现,因此,检查缓冲存储器,以确定在下一帧时启动新图像组的可行性。如果缓冲存储器内没有足够的空间,则速率控制算任务发出信号,阻止在下一帧时启动新图像组。允许在下一帧时启动新图像组的条件是:EncoderBufferLevel+FrameTargetBits-(PictureDuration*BitRate)低于下面预先计算出的阈值:
Min(0.5*BufferDelay*BitRate,TargetBufferLevel
+(0.333*N*BitRate/FrameRate))5.主压缩器控制器的速率控制同步中断
理想地,帧的目标量化器的量化级(FrameQuant)应当用于整个图像,使整个图像的质量一致。但是,基于帧复杂性估计的速率控制模式并非总是精确的。因此,有必要调整FrameQuant,以控制比特率。采用反馈机构,以便将帧的累加比特计数与帧的目标比特率进行比较,并用部分编码的宏块进行换算。
在速率控制同步中断时,主压缩控制器读取两项参数:(1)当前编码的宏块数;(2)至此产生的比特数。主压缩控制器将8个画面的这些统计量进行总计(SumPanelBitCount和SumPanelMbCount)。然后,主压缩控制器对部分目标比特数和部分最大比特数进行计算。
PartialFrameTargetBits=FrameTargetBits*
SumPanelMbCount/(Number of macroblocks per frame)
PartialFrameMaxBits=FrameMaxBits*SumPanelMbCount
/(Number of macroblocks per frame)
其中,Number of Macroblocks per frame为每帧的宏块数。
根据SumPanelBitCount与PartialFrameTargetBits的比值和SumPanelBitCount与PartialFrameMaxBits的比值,对量化器的量化级进行调整。如果SumPanelBitCount超过PartialFrameMaxBits的0.9,则量化器的量化级作如下调整:
CurrentQuant=CurrentQuant*0.9*SumPanelBitCount/
PartialFrameMaxBits
其中,CurrentQuant为所使用的当前量化级,在开始对帧进行编码时,CurrentQuant被初始化到等于FrameQuant。在其它情况下,量化级的调整是根据SumPanelBitCount与PartialFrameTargetBits的比值(ratio)、利用下面的分段线性模型来进行的:
ratio<1.5:         CurrentQuant=FrameQuant
2.0≥ratio>1.5:    CurrentQuant=(1+0.5*(ratio-1.5))*
                     Max(FrameQuant,CurrentQuant)
ratio≥2.0:         CurrentQuant=1.25+(ratio-2.0)
                     *Max(FrameQuant,CurrentQuant)
在每个帧尾的比特计数接近于目标比特率时,画面的最终量化级值应当接近于FrameQuant的起始值。这种安排能够在画面边界上避免出现因量化级突变而造成的可见接痕。
为了提高稳定性,对当前速率控制同步中所计算的CurrentQuant值和上一个速率控制同步中所计算的CurrentQuant值,求平均值。
然后,利用给FrameQuant封顶的相同上限,对CurrentQuan值进行封顶(在后面详细说明),并对CurrentQuan值与前面的CurrentQuan值求平均值。在给画面压缩器发送最终量化级值之前,如果SumPanelBitCount接近FrameMaxBits的界限,则进一步调整,提高量化级值,以保护缓冲存储器:
if(SumPanelBitCount>0.975*FrameMaxBits)
          CurrentQuant=512
else if(SumPanelBitCount>0.95*FrameMaxBits)AND
(SumPanelMbCount<0.8*MacroblocksPerFrame))
          CurrentQuant=4*CurrentQuant
else if(SumPanelBitCount>0.9*FrameMaxBits)AND
(SumPanelMbCount<0.7*MacroblocksPerFrame))
          CurrentQuant=2*CurrentQuant
最后,利用给FrameQuant封顶的相同上限,再次对CurrentQuan进行封顶。下限2也应用于CurrentQuant。6.量化策略
画面压缩器通过将预先计算出的量化值的倒数值乘以DCT(二维离散余弦变换)系数来执行量化。在画面压缩器上,共有32个预先计算出的乘数表。前31个表与MPEG量化级索引表1~31相对应,根据MPEG非线性量化映像表,映像出了量化级值1~112。表32专供应急模式使用,表中的所有乘数,除了帧内直流分量(intra DC)之外,均被设置为0,从而,可以废弃DCT(二维离散余弦变换)系数,以将所产生的比特数减少到最低限度。应急模式仅作为缓冲存储器的应急保护措施来启动。非帧内(non-intra)应急乘数表的直流分量(PanicNonIntraDCMul)可以由主压缩控制器写入,用来确定是利用最大MPEG量化级(112)来正常量化非帧内直流分量(non-intra DC),还是将量化级设置为正常量化值的几分之一。如果画面压缩器从主压缩控制器接收的量化级值(PanelQuant)在1~112之间,则选用正常表格。如果PanelQuant高于112,则选择应急表格。
主压缩控制器计算的量化级值(FrameQuant或CurrentQuant)的范围是1~512。量化级值被转变为一个在1~255(PanelQuant)之间的8位数值,发送给画面压缩器来选择乘数表;另外,量化级值还被用来确定画面压缩器应急表格的非帧内直流分量的乘数:1<=CurrentQuant<=112:    PanelQuant=round currentQuant to the nearest
                               integer by truncation
                          PanicNonIntraDCMul=MaxQuantNonIntraDCMul112<CurrentQuant<=MaxRcQuant:PanelQuant=112;
                          PanicNonIntraDCMul=MaxQuantNonIntraDCMulMaxRcQuant<CurrentQuant<512:PanelQuant=255;
                     PanicNonIntraDCMul=MaxQuantNonIntraDCMulCurrentQuant=512:PanelQuant=255;
              PanicNonIntraDCMul=0.3*MaxQuantNonIntraDCMul
其中,MaxQuantNorIntraDCMul为最大MPEG量化级(112)的乘数表的非帧内直流分量项(non-intra DC entry)。MaxRcQuant是一个被设置成144的常数。
FrameQuant的值通常不允许超过MaxRcQuant,在FrameQuant超过MaxRcQuant时,画面压缩器可能启动应急模式,造成图像质量严重下降。但是,如果编码器的缓冲存储器处于上溢的边缘,或如果解码器的缓冲存储器处于下溢的边缘,则在开始对帧编码时,应当允许画面压缩器进入应急模式。因此,使用合适的算法,基于FrameMaxBits来设定FrameQuant的上限。如果FrameMaxBits大到足以支持由正常MPEG量化级所产生的最坏比特数(FrameMaxBits超过阈值PanicThreshold1),则FrameQuant以MaxRcQuant封顶,以避免进入应急模式。
一旦FrameMaxBits低于PanicThreshold1,则上限被改变(例如,改变为176),这使得图像压缩器能够进入应急模式,但可以在应急模式下保持非帧内直流分量(non-intra DC)系数。如果FrameMaxBits进一步下降到低于第二阈值PanicThreshold2,则上限被设置为512,以便能够将非帧内直流分量(non-intra DC)系数的量化值降低到超出正常量化的值。采用了滞后机构,在上限被提高到高于MaxRcQuant时,直到FrameMaxBits超过第三阈值(PanicThreshold3),才返回MaxRcQuant。例如,对P帧和B帧而言,阈值{PanicThreshold1,PanicThreshold2,PanicThreshold3}可设置为{750000,500000,1500000};对I帧而言,阈值可设置为{1500000,1000000,3000000}7.画面压缩器
每个画面压缩器在每次速率控制中断及图像开始时,从主压缩控制器接收PanelQuant值。然后,画面压缩器根据宏块基本原理,对宏块执行下述例行程序:
(A)对宏块计数、PanelSumQuant(实际所用的量化级之和)及PanelBitCount(画面内至此产生的比特数)进行累加。在帧开始时,将这些统计量复位到0。
(B)校验本地缓冲存储器的充满度;如果本地缓冲存储器的缓冲级接近饱和,则直线提升量化级。
if(LocalBufferLevel<(112/128)*LocalBufferSize)
     PanelQuant unchanged
else if(LocalBufferLevel<(120/128)*LocalBufferSize)
     PanelQuant=4*PanelQuant
else if(LocalBufferLevel<(124/128)*LocalBufferSize)
     PanelQuant=16*PanelQuant
else
      PanelQuant=225
(C)用与MPEG测试模式中的相同方式,通过合适的量化来
   调整PanelQuant。
(D)利用最终量化级来进行量化。8.包处理器
每当视频FIFO至少能够容纳一个数据传输包容量的数据(184比特)时,包处理器即以等于用户指定视频比特率(bit rate)的平均速率,从主视频FIFO中检索数据。每当FIFO的缓冲级低于184比特时,包处理器将停止从FIFO检索数据,以避免FIFO出现下溢。然后,将用空包代替视频数据包,以保持稳定的传输比特率。
应当知道,本发明提供了一种比特率控制算法,可对采用多个并行压缩引擎的视频编码器的性能进行优化。本发明可应用于HDTV编码器及SDTV编码器。
虽然已结合各种最佳实施例对发明进行了说明,但应当知道,在不偏离权利要求范围的前提下,可以对本发明作诸多变更和改进。

Claims (26)

1.一种在含有多个并行压缩引擎的数字视频编码器中控制量化的方法,其步骤包括:
为视频帧确定目标量化级;
将目标量化级应用于多个画面中每个视频图像画面的第一个切片,所述的画面代表所述的视频帧、并由视频编码器并行处理;
在每个所述图像画面的最后一个切片上,驱动量化级向所述的目标量化级方向靠近。
2.根据权利要求1所述的方法,其中,驱动步骤利用分段线性反馈,驱动每个图像画面最后一个切片的量化级向目标量化级方向靠近。
3.根据权利要求2所述的方法,其中,反馈用于补偿在每个图像画面第一个切片和最后一个切片之间量化级的偏差。
4.根据权利要求1所述的方法,其中,基于至少一个压缩引擎的处理流水线(pipeline)内的多个胶片图像及非胶片图像,来调整图像组(GOP)的目标比特率。
5.根据权利要求4所述的方法,其中,给非胶片图像提供较高的目标比特率。
6.根据权利要求1所述的方法,其中,利用视频编码器的缓冲级来控制新图像组(GOP)的开始。
7.根据权利要求1所述的方法,其中:
每个输入视频图像被划分为一定数量的图像画面;
每个图像画面由单独的压缩引擎进行压缩。
8.根据权利要求7所述的方法,其中,画面在一个帧时内被同步压缩。
9.根据权利要求8所述的方法,其中,画面的压缩数据在压缩引擎上进行本地存储,在下一个帧时内,传输给视频编码器的视频缓冲存储器。
10.根据权利要求9所述的方法,其中,每当缓冲存储器至少能够容纳一个数据传输包容量的数据时,就以等于指定的视频比特率(bit rate)的平均速率,从缓冲存储器检索数据,打成一个数据传输包。
11.根据权利要求10所述的方法,其中,每当缓冲存储器的缓冲级低于一个数据传输包的容量时,将用空包代替视频数据包,以保持稳定的传输比特率。
12.根据权利要求7所述的方法,其中,给每个压缩引擎计算基准量化器的量化级。
13.根据权利要求12所述的方法,其中,压缩引擎的基准量化级的计算是基于:
压缩引擎的量化器的量化级的累加(sum quant);
压缩引擎所产生的比特数的累加(bitcount)
压缩引擎所处理的宏块数的累加(MBcount)
视频编码器的视频缓冲存储器的缓冲级(buffer level)。
14.根据权利要求13所述的方法,其中,压缩引擎基于本地缓冲存储器的缓冲级,修改其基准量化级,以产生用于量化的最终量化级。
15.根据权利要求14所述的方法,其中,如果最终的量化级高于预定的最大值,则压缩引擎启动应急模式,应急模式能够在最大预定值或低于最大预定值的水平上保证量化的继续进行。
16.一种控制速率的方法,数字视频编码器利用多个并行压缩引擎,以所述的速率进行数据处理,以压缩视频数据的连续宏块,所述的方法包括下列步骤:
对连续帧的帧频进行控制,根据图像起始中断服务例行程序,对每个编码图像进行一次帧频控制;
提供宏块级速率的控制,根据速率控制中断服务例行程序,对每个编码图像进行多次宏块级速率控制。
17.根据权利要求16所述的方法,其中,图像起始中断服务例行程序通过处理从上一个编码帧所获得的数据,更新帧级统计变量。
18.根据权利要求16所述的方法,进一步包括下列步骤:如果即将处理的新帧中含有内编码(I)帧,则给新图像组(GOP)计算目标比特率。
19.根据权利要求16所述的方法,进一步包括下列步骤:
给要进行编码的每一个帧,计算允许产生新帧的比特数的上、下限;
给每一个帧和由每个帧划分而来的多个图像画面中的每个画面,计算目标比特数。
20.根据权利要求19所述的方法,其中,通过与被处理图像的复杂性数值成正比地分配比特数,来计算目标比特数。
21.根据权利要求19所述的方法,其中,从帧的目标比特数出发,计算帧的目标量化级。
22.根据权利要求21所述的方法,其中,帧的目标量化级被提供给多个压缩引擎中的每个压缩引擎,作为其初始基准量化级,供开始对帧编码时使用。
23.根据权利要求22所述的方法,其中,宏块中含有DCT(二维离散余弦变换)系数,而且如果基准量化级过高,无法在可用上限范围内保存产生新帧所需的比特数,则压缩引擎将驱使一些DCT(二维离散余弦变换)系数变为0。
24.根据权利要求19所述的方法,其中,速率控制中断服务例行程序提供中断,中断启动帧目标量化级的调整,基于反馈进行的这种调整将设法把多个视频图像画面中的每个画面的实际比特数引到每个画面的对应目标比特数。
25.一种在数字视频编码器中控制量化的设备,所述的数字视频编码器包括多个并行压缩引擎,所述的设备包括:
为视频帧确定目标量化级的装置;
将目标量化级应用于多个图像画面中每个图像画面第一个切片的装置,多个图像画面代表所述的视频帧并由视频编码器并行处理;
驱动每个图像画面最后一个切片的量化级向目标量化级方向靠近的装置。
26.一种控制速率的设备,数字视频编码器利用多个并行的压缩引擎,以所述的速率进行数据处理,以压缩视频数据的连续宏块,所述的设备包括:
对连续帧提供帧频控制的装置,根据图像起始中断服务例行程序,对每个编码图像进行一次帧频控制;
提供宏块级速率控制的装置,根据速率控制中断服务例行程序,对每个编码图像进行多次宏块级速率控制。
CN99813843A 1998-10-02 1999-09-29 视频编码器速率控制的方法及设备 Pending CN1328748A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10280098P 1998-10-02 1998-10-02
US60/102,800 1998-10-02

Publications (1)

Publication Number Publication Date
CN1328748A true CN1328748A (zh) 2001-12-26

Family

ID=22291739

Family Applications (1)

Application Number Title Priority Date Filing Date
CN99813843A Pending CN1328748A (zh) 1998-10-02 1999-09-29 视频编码器速率控制的方法及设备

Country Status (6)

Country Link
EP (1) EP1118225A1 (zh)
KR (1) KR20010075530A (zh)
CN (1) CN1328748A (zh)
AU (1) AU6277199A (zh)
CA (1) CA2345538A1 (zh)
WO (1) WO2000021302A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1914925B (zh) * 2004-02-03 2010-04-28 索尼爱立信移动通讯股份有限公司 为了在移动网络上传输而进行的图像压缩
CN101945271A (zh) * 2009-07-03 2011-01-12 北京中企开源信息技术有限公司 图像压缩系统及压缩方法
CN102232292A (zh) * 2008-11-11 2011-11-02 三星电子株式会社 用于处理以片为单位划分的运动图像的运动图像编码/解码设备和方法
CN1809166B (zh) * 2002-01-05 2013-05-15 三星电子株式会社 图像编码和解码装置及其方法
CN103329524A (zh) * 2011-01-18 2013-09-25 富士通株式会社 动态图像编码装置、动态图像编码方法以及动态图像编码用计算机程序
CN103428486A (zh) * 2012-05-24 2013-12-04 富士通株式会社 图像压缩方法和装置
CN111698505A (zh) * 2020-06-23 2020-09-22 湖南国科微电子股份有限公司 视频帧编码方法、装置、编码设备及可读存储介质

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0013273D0 (en) 2000-06-01 2000-07-26 Philips Electronics Nv Video signal encoding and buffer management
US6904094B1 (en) 2000-09-20 2005-06-07 General Instrument Corporation Processing mode selection for channels in a video multi-processor system
US7039115B1 (en) 2000-09-20 2006-05-02 General Instrument Corporation Processor allocation for channels in a video multi-processor system
US6724825B1 (en) 2000-09-22 2004-04-20 General Instrument Corporation Regeneration of program clock reference data for MPEG transport streams
US6847656B1 (en) 2000-09-25 2005-01-25 General Instrument Corporation Statistical remultiplexing with bandwidth allocation among different transcoding channels
US7082221B1 (en) * 2000-09-29 2006-07-25 Intel Corporation Bandwidth determination for multiple layer digital video
US7068719B2 (en) 2001-06-01 2006-06-27 General Instrument Corporation Splicing of digital video transport streams
KR100851251B1 (ko) 2002-01-23 2008-08-08 주식회사 엘지이아이 동영상 시스템에서의 엔코딩 제어 방법 및 그 장치
GB2387055A (en) * 2002-03-28 2003-10-01 Sony Uk Ltd Data compression method including target data quantity allocation
WO2003092297A1 (en) 2002-04-23 2003-11-06 Nokia Corporation Method and device for indicating quantizer parameters in a video coding system
KR100486524B1 (ko) 2002-07-04 2005-05-03 엘지전자 주식회사 비디오 코덱의 지연시간 단축 장치
US7352809B2 (en) 2003-02-21 2008-04-01 Polycom, Inc. System and method for optimal transmission of a multitude of video pictures to one or more destinations
NL1030976C2 (nl) * 2006-01-23 2007-07-24 Ventury Tower Mall Iii Inc Werkwijze en inrichting voor het aanpassen van de grootte van een informatiebestand.
KR101940239B1 (ko) * 2011-12-12 2019-01-18 한국전자통신연구원 멀티미디어 스트림을 스크램블하는 장치
CN110708578A (zh) * 2019-10-22 2020-01-17 北方工业大学 一种视频码率自适应调整方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0837662A (ja) * 1994-07-22 1996-02-06 Hitachi Ltd 画像符号化復号化装置
US5694170A (en) * 1995-04-06 1997-12-02 International Business Machines Corporation Video compression using multiple computing agents
US5650860A (en) * 1995-12-26 1997-07-22 C-Cube Microsystems, Inc. Adaptive quantization
EP0851656A1 (en) * 1996-12-23 1998-07-01 HE HOLDINGS, INC. dba HUGHES ELECTRONICS System and method for high resolution video compression by tiling
US5949490A (en) * 1997-07-08 1999-09-07 Tektronix, Inc. Distributing video buffer rate control over a parallel compression architecture

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1809166B (zh) * 2002-01-05 2013-05-15 三星电子株式会社 图像编码和解码装置及其方法
CN1914925B (zh) * 2004-02-03 2010-04-28 索尼爱立信移动通讯股份有限公司 为了在移动网络上传输而进行的图像压缩
US9042456B2 (en) 2008-11-11 2015-05-26 Samsung Electronics Co., Ltd. Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices
CN102232292A (zh) * 2008-11-11 2011-11-02 三星电子株式会社 用于处理以片为单位划分的运动图像的运动图像编码/解码设备和方法
US9432687B2 (en) 2008-11-11 2016-08-30 Samsung Electronics Co., Ltd. Moving picture encoding/decoding apparatus and method for processing of moving picture divided in units of slices
CN101945271A (zh) * 2009-07-03 2011-01-12 北京中企开源信息技术有限公司 图像压缩系统及压缩方法
CN101945271B (zh) * 2009-07-03 2012-11-28 大地辰星科技发展(北京)有限公司 图像压缩系统及压缩方法
CN103329524B (zh) * 2011-01-18 2016-10-05 富士通株式会社 动态图像编码装置和动态图像编码方法
CN103329524A (zh) * 2011-01-18 2013-09-25 富士通株式会社 动态图像编码装置、动态图像编码方法以及动态图像编码用计算机程序
CN103428486A (zh) * 2012-05-24 2013-12-04 富士通株式会社 图像压缩方法和装置
CN103428486B (zh) * 2012-05-24 2017-06-09 富士通株式会社 图像压缩方法和装置
CN111698505A (zh) * 2020-06-23 2020-09-22 湖南国科微电子股份有限公司 视频帧编码方法、装置、编码设备及可读存储介质
CN111698505B (zh) * 2020-06-23 2022-03-25 湖南国科微电子股份有限公司 视频帧编码方法、装置、编码设备及可读存储介质

Also Published As

Publication number Publication date
WO2000021302A1 (en) 2000-04-13
KR20010075530A (ko) 2001-08-09
AU6277199A (en) 2000-04-26
CA2345538A1 (en) 2000-04-13
EP1118225A1 (en) 2001-07-25

Similar Documents

Publication Publication Date Title
CN1328748A (zh) 视频编码器速率控制的方法及设备
CN1260980C (zh) 图像压缩/编码装置及其方法
CN1183770C (zh) 视频信号编码系统控制器
CN1117479C (zh) 编码视频图像序列数据以及从若干视频源传送数据的方法
CN1242620C (zh) 用于数字视频记录的基于代码转换器的自适应量化
CN1151685C (zh) 编码系统中用于优化速率控制的装置和方法
CN1315118A (zh) 压缩与未经压缩的数字视频信号的统计式多路转接的动态位分配
CN1685734A (zh) 控制视频序列速率的方法和装置及视频编码装置
CN1152576C (zh) 视频数据编码装置、编码方法和传送装置
CN1726709A (zh) 利用基于图像的超前查看窗口进行速率控制
TW416218B (en) Method and apparatus for performing adaptive encoding rate control of a video information stream including 3:2 pull-down video information
CN1255022A (zh) 预先不了解画面类型情况下mpeg代码转换器的比率控制系统
CN1112809C (zh) 数字视频数据的编码或译码方法和装置
US20020067768A1 (en) Rate control for bitstream re-encoding
CN1319996A (zh) 图像编码和解码设备及其方法、图像记录和图像传送设备
CN1574968A (zh) 运动图像解码装置及运动图像解码方法
CN1236522A (zh) 编辑装置、编辑方法、接续装置、接续方法、编码装置和编码方法
CN1898964A (zh) 运动图像编码设备以及该设备的控制方法和程序
CN1893657A (zh) 用于视频编码器的编码位率控制方法及系统
CN1871854A (zh) 具有压缩图像与视频的低启动时延的假想参考解码器
CN101052127A (zh) 信息处理装置、信息处理方法、记录介质和程序
CN1178497C (zh) 数据再生传输设备和数据再生传输方法
CN1428939A (zh) 视频编码装置
CN1489391A (zh) 用于视频编码的新型空间预测方法及其装置
CN1531823A (zh) 在视频多处理器系统中频道的处理模式的选择

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication