分类
与固定码率视频编码不同的是,可变码率视频编码能够根据输入视频信号的特性以恒定图像质量和可变的码率进行传输。其中,视频压缩算法可以是预测编码、变换编码、子带编码和矢量量化等。
可变码率编码
从确保视频传输质量和充分利用信息的角度来说,可变码率视频编码才是最合理的。其理由是:视频信源本身的高峰信息量是变化的,若要使其输出码流的码率固定不变,则需要按信源的高峰信息量去设计传输系统,但大部分时间并不出现高峰信息量,为了确保码率固定,通常要插入一些填充码,这就浪费了视频资源。使用可变码率编码,就能按信源本身的信息量去分配,从而有效地利用信息资源。
固定码率编码
通常固定码率视频编码算法是通过利用缓冲器状态改变量化器步长来实现的。当图像细节丰富时,为了确保缓冲器不溢出,就得加大量化步长,减少编码比特数,从而保证输出码流的码率恒定。这是以牺牲视频质量为代价的。因为加大量化步长会损伤图像的高频细节和低频背景,甚至产生“块效应”和图像细节模糊现象。所以当你用VCD机播放节目时,留心观察,就会发觉有时图像边缘出现“影环”现象。
计算公式
基本的算法是:码率(kbps)=文件大小(KB)*8/时间(秒),举例,D5碟,容量4.3G,其中考虑到音频的不同格式,算为600M,(故剩余容量为4.3*1024-600=3803.2M),所以视频文件应不大于3.7G,本例中取视频文件的容量为3.446G,视频长度100分钟(6000秒),计算结果:码率约等于4818kbps(3.446*1024*1024*8/6000=4817.857)。
码率几点原则:
1、码率和质量成正比,但是文件体积也和码率成正比。
2、码率超过一定数值,对图像的质量没有多大影响。
3、DVD的容量有限,无论是标准的4.3G,还是超刻,或是D9,都有极限。计算机中的信息都是二进制的0和1来表示,其中每一个0或1被称作一个位,用小写b表示,即bit(位);大写B表示byte,即字节,一个字节=八个位,即1B=8b;前面的大写K表示1024的意思,即1024个位(Kb)或1024个字节(KB)。表示文件的大小单位,一般都使用字节(KB)来表示文件的大小。
Kbps:ps指的是/s,即每秒。Kbps指的是网络速度,也就是每秒钟传送多少个千位的信息(K表示千位,Kb表示的是多少千个位),为了在直观上显得网络的传输速度较快,一般公司都使用kb(千位)来表示。1KB/S=8Kbps。ADSL上网时的网速是512Kbps,如果转换成字节,就是512/8=64KB/S(即64千字节每秒)。
4、一般来说,如果是1M的宽带,在网上只能看不超过1024kbps的视频,超过1024kbps的视频只能等视频缓冲才能流畅的观看。
码率控制
传统信源编码中的码率控制是通过改变码率的大小来获得不同的信源失真,而分布式信源编码(Distributed Source Coding,DSC)中的码率控制则是指在保证一定信源失真的前提下将码率降到最低。与传统信源编码系统中改变码率的方式不同,分布式信源编码系统的码率是由信源和边信息之间的统计相关决定的。由于边信息只能在解码端获得,且成功解码所需的码率随虚拟相关信道统计特性的变化而变化,因此码率分配问题是分布式信源编码中的难点之一。
作为一种重要的分布式信源编码形式,分布式视频编码(Distributed Video Coding,DVC)受到国内外很多学者的关注。然而分布式视频编码的实际应用不容乐观。正如Guillemot等人指出:影响分布式视频编码实际应用的两大障碍分别是相关估计和最佳边信息的选择。由于最佳边信息的选择问题最终可以转化为相关估计问题,因此,影响分布式视频编码实际应用的最大障碍就是相关估计问题。DSC/DVC中相关估计问题的重要性表现在三个方面:首先,只有得知信源和边信息之间的相关,编码端才能确定最佳压缩码率;其次,只有得知信源和所有候选边信息之间的相关,解码端才能选择出最佳边信息;第三,只有得知信源和最佳边信息之间的相关,才能确定解码端的初始化参数,实现最优解码。
码率控制涉及视频质量和信道带宽的折衷。减少码率就会牺牲质量,质量提高就会增加码率。由于视频图像编码中的许多因素都会直接或间接地影响到码率,码率的调节点也是很多的。实际上常用的调节码率手段包括:
①调节编码的帧率。通过调节序列在时间上的分辨率达到控制码率的目的。当码率高于信道时,通过丢帧来降低码率;当码率低于信道时,可提高帧率以提高视觉效果。
②调节图像大小。通过调节序列在空间上的分辨率来达到控制码率的目的。当码率高于信道时,减小尺寸来降低码率;当码率低于信道时,增加图像尺寸以获得更好的效果。
③调节量化参数。编码残差系数的量化参数会直接影响到码率。量化参数变大,则编码的比特数降低;量化参数变小,编码的比特数提高。