视频码率那些事情

今天来科普一下视频播放中的码率的概念。


码流(Data Rate)是指视频文件在单位时间内使用的数据流量,也叫码率、取样率、码流率,通俗一点的理解就是,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是kb/s或者Mb/s。一般来说同样分辨率下,视频文件的码流越大,压缩比就越小,画面质量就越高。码流越大,说明单位时间内取样率越大,数据流,精度就越高,处理出来的文件就越接近原始文件,图像质量越好,画质越清晰,要求播放设备的解码能力也越高。


当然,码流越大,文件体积也越大,其计算公式是文件体积=时间X码率/8。例如,网络上常见的一部90分钟1Mbps码流的720P RMVB文件,其体积就=5400秒×1Mb/8=675MB。


通常来说,一个视频文件包括了画面及声音,例如一个RMVB的视频文件,里面包含了视频信息和音频信息,音频及视频都有各自不同的采样方式和比特率,也就是说,同一个视频文件音频和视频的比特率并不是一样的。而我们所说的一个视频文件码流率大小,一般是指视频文件中音频及视频信息码流率的总和。


以国内最流行,大家最熟悉的RMVB视频文件为例,RMVB中的VB,指的是VBR,即Variable Bit Rate的缩写,中文含义是可变比特率,它表示RMVB采用的是动态编码的方式,把较高的采样率用于复杂的动态画面(歌舞、飞车、战争、动作等),而把较低的采样率用于静态画面,合理利用资源,达到画质与体积可兼得的效果。


码率和取样率最根本的差别就是码率是针对源文件来讲的。


编码格式有很多种,在技术不断进步的情况下,针对不同的用途,产生了各种编码格式。不同编码格式的压缩率不一样,且有各自的特点,有些在低码率情况下能保持较高的画面质量,但在高码率情况下反而画面质量提示不大,有些适合在高码率情况下保持高清晰度画面,但可能在低码率情况下效果不佳。介绍常见的几种。


RMVB/RM在制定的时候主要考虑的是网络传播,目的在于利用不快的网速传播视觉可以接受的画面质量。因此,RMVB/RM编码格式的特点是较低码率下能获得较好的视频质量。但高码率的情况下反不如其他编码格式。同样是RM/RMVB后缀的文件,其内部编码格式细分还有R8/R9/R10等,但总的来说,上面所说的特点依然是存在的。只是压缩率更高了,因此RMVB没人用在高清编码领域。RMVB追求的是高压缩率,能接受的画面质量,所以经常压缩掉一些不容易注意的细节。初看画面不错,细看就发现画面不锐利,层次不分明,总给人一直模糊的感觉。RMVB/RM后缀文件的音频编码部分同样存在这样的情况,声音压缩率很高,但只是能听,不要奢望达到声音动听的境界。


RMVB的流行,一是因为REAL的这种格式适合低速网络的传播,能以较小的文件体积获得可以接受的画面质量。二是随着RMVB的使用,开始出现功能比较完善的转码软件和解决方案,方便了视频爱好者,扩大了影片来源。但随着网速越来越快,H264等更好的编码器出现,同时也因为RMVB不适合高清视频制作,且若对于其他硬件厂家希望支持RMVB/RM格式,就必须向REAL公司支付相当昂贵的专利费,导致很多硬件厂商放弃了对RMVB文件的支持。RMVB的文件已经不是以前那种完全压倒性的优势了。


现在网络传播的视频文件已经很多都是AVI、MKV、MP4、3GP等后缀了。其中MKV等多用于高清视频文件,MP4、3GP等多用于手机和便携式设备等领域,AVI则使用范围更加广,不但在高清晰度视频文件中有AVI文件,在便携式设备领域也有AVI使用。


VCD用的视频编码格式为MPEG1,DVD则为MPEG2,VCD和DVD都主要用于家庭影音播放,而且一般来说,VCD用MPEG1编码为固定码率编码。DVD可以支持动态码率的MPEG2编码。

为了能保证激烈变化画面时的清晰度,其默认编码率都较高,VCD标准编码率1152Kbps,DVD开放些,根据影片播放时间,常设置为5000 Kbps -8000 Kbps之间,在不浪费DVD碟容量的前提下尽可能的使用较高的码率获得更高的清晰度。MPEG1和MPEG2在超低码率情况效果不佳,且过分提高码率,画面效果带来的提示也不明显。而MKV则以H.264编码,用于高清视频,1080p的画面达到了30Mbps的码率。


注:

VBR:即『可变码率』,VBR编码指的是编码器的输出码率(或者解码器的输入码率)可以根据编码器的输入源信号的复杂度自适应的调整,目的是达到保持输出质量保持不变而不是保持输出码率保持不变。VBR适用于存储(不太适用于流式传输),可以更有效地利用有限的存储空间:用比较多的码字对复杂度高的段进行编码,用比较少的码字对复杂度低的段进行编码。

CBR:即『固定码率』,CBR编码指的是编码器的输出码率(或者解码器的输入码率)应该是固定值(常数)。当在一个带宽受限的信道中进行多媒体通讯的时候CBR是非常有用的,因为这时候受限的是最高码率,CBR可以更容易的使用这样的信道。但是CBR不适合进行存储,因为CBR将导致没有足够的码率对复杂的内容部分进行编码(从而导致质量下降),同时在简单的内容部分会浪费一些码率。


文字部分来自网络,侵权立即删除。

编辑于 2017-12-06