音视频中的CBR,VBR,ABR

视频码率CBRVBR   固定码率(CBR)与可变码率(VBR


一般在我们输出视频文件的时候都会碰到一个选择即CBRVBRCBR的英文全称是Constant Bit Rate翻译过来是固定码率,就是说每一秒种的画面如果看做是一个静止的图片文件的话(实际上是每一帧的画面大小加起来)它大小是固定的。1 W9 ~3 U) `2 y/ j; w+ ]

VBR
的英文全称是Variable Bit Rate意思是可变码率,就是每一秒画面的大小是不固定。

CBR
相对简单会在压缩输出的时候就把画一秒的画面都计算为固定的大小,这样运算量小,编码时间短而且解码算法也简单,但缺点是在画面剧烈运动的时候会由于码率不够而丢失部分画面信息。我们从视觉上来看就是画面波纹严重,图像不清晰。CBR的设置非常简单就是设定一下码率大小就可以了。, b8 K$ t/ i3 K" O$ c1 M  s+ h

我们重点要讲的是VBR
/ M; R0 _% p( v5 A% i' U
学习过视频知识的人都知道在在移动的画面所要消耗的存储量是大于静止的画面的!
+ P/ M  S, R5 h9 n4 ^% r* o) B0 v
VBR
的出现就是为了解决这个问题。VBR有三个参数分别是MAXAverageMIN,分别是指视频的最大比码率,平均码率和最小码率。+ c: j' b3 Q+ U) A9 V6 B- i
: v9 g( m; l! n& A# m; q
由于在压缩的时候我们要大概的知道成片的大小是多少这个时候我们可以用VBR的平均码率来计算出视频文件的大概大小是多少。由于电脑存储文件是采用字节即Byte而在电路中实现传输的时候采取的是比特流即Bit8Bit组成一个Byte。所以我们以平均码率6Mbps来计算每一秒的画面就是6Mbps/8=750KB那么一小时的视频文件大小就是750KB*3600=2700MB2.7GB,这就是一般的DVD视频文件一小时的大小。

由于有MAXARGMIN三个参数我们采用VBR压缩输出视频的时候计算机会先进行一下逐帧的扫描把运动量大的画面码率调高,运动量小或是静止的画面码率调低并保证平均后的码率等于ARG值。; D' [4 d$ b3 q, Y. a! f3 E

VBR
的优点就体现出来了画面质量相对高,但是缺点也出来了运算量大压缩时间长,更严重的对解码算法的要求就复杂了很多相对的对解码器的CPU要求就也高了。
5 O6 W8 e7 A# W. f3 M+ `
这就是很多手机可以播出CBRRM视频却播不了VBRRMVB视频的原因,因为手机的CPU还没有足够的强,内存也不能运算如此复杂的解码算法。0 G2 b/ P0 j8 `; J
, L3 u9 I1 P6 O% }
MPEG4级压缩的应用还出现了BitrateVBRQualityVBR即码率控制与质量控制,前者是单纯的调整码率达到平均值,后者复杂一些是根据图像质量而定所以并不能先给出一个平均值来,只是保证每一帧画面的质量达到要求,至于这一帧画面为了保证质量会达到什么样的码率值并不是提前知道的,当然这种运算就更复杂了。还有更高级的保持质量的压缩方式Two-passTwo-pass Encoding 的先对影片作一次分析,即First-pass。此时整个影片档案会被先作扫描,定义影片中的影格是动态或是静态,所以再决定相应的每一帧画面的码率来进行压缩。



CBR:固定码率

  CBR(Constants Bit Rate)即固定码率,就是静态(恒定)比特率的意思,CBR是一种固定采样率的压缩方式。优点是压缩快,能被大多数软件和设备支持,缺点是占用空间相对大,效果不十分理想,现已逐步被VBR的方式取代。

  固定码率是一个用来形容通信服务质量(QoS,Qualityof Service)的术语。和该词相对应的词是可变码率或可变比特率(英文variable bit rate,缩写VBR)。

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

大部分编码方案的输出都是可变长的码字,例如霍夫曼编码或者游程编码(run-length coding),这使得编码器很难做到完美的CBR。编码器可以通过调整量化(进而调整编码质量)来部分的解决这个问题,如果同时使用填充码来完美的达到CBR。(有时候,CBR也指一种非常简单的编码方案,比如将一个16位精度的音频数据流通过抽样得到一个8位精度的数据流)。

 

VBR

VBR(VariableBit Rate)动态比特率。也就是非固定的比特率,音频编码软件在编码时根据音频数据的复杂程度即时确定使用什么比特率,这是以质量为前提兼顾文件大小的编码方式。

  VBR也称为动态比特率编码,使用这个方式时,你可以选择从最差音质/最大压缩比到最好音质/最低压缩比之间的种种过渡级数,在MP3文件编码之时,程序会尝试保持所选定的整个文件的品质,将选择适合音乐文件不同部分的不同比特率来编码。主要优点是可以让整首歌的音质都能大致达到我们的品质要求,缺点是编码时无法估计压缩后的文件大小。

  bitrate就是从波形里面采样的频率, 声音自然是波形,就是振动。振动画出来是摆动的曲线,电脑存的时就在这根曲线上,隔百分之几秒取一个点,这个间隔时间就叫采样率。

  一般好的mp3采样率是320kbps(就是每秒320千比特),320kbps以下波形破坏严重,很多非高音的细节都会消失,而320kbps的MP3编码主要压缩高音细节.320kbps以上只有较少软件支持编码,并且音质提升不明显,不如采用无损压缩.

  采点越频繁,波形还原就越精确,声音就越不失真。VBR是一种不让整个音乐取同一采样率的技术。通过动态调整让音乐复杂的地方采样多些,简单的地方采样少些,这样相同大小文件,听上去质量会更高。


区别

  VBR与传统的CBR编码的MP3不同,传统的CBR(ConstantBitRate)就是静态比特率,CBR约定死了MP3的采样率为固定值。一首MP3从头至尾为某固定值如128KBit/s进行压缩。而VBR则采取了一种全新的,全程动态调节技术的压缩方法。当在低音段时,VBR会自动采用较低的比特率如32KBit/s对音质进行压缩;当在高音段时会用较高的比特率如224KBit/s对音质进行压缩;当在极高端时则采用最高320KBit/s进行压缩。VBR MP3就是在控制文件大小的情况下,最大限度的提高了MP3的音质。

  CBR 和VBR的不同点:

  (1)CBR:固定位率的FRAME的大小也是固定的,只要知道文件总长度,和帧长即可由播放每帧需26ms计算得出mp3播放的总时间,也可通过计数帧的个数控制快进,快退慢放等操作。

  (2)VBR:VBR是XING公司推出的算法,所以在MP3的FRAME里会有“XING”这个关键字(现在很多流行的小软件也可以进行VBR压缩,它们是否遵守这个约定,那就不得而知了),它存放在MP3文件中的第一个有效FRAME里,它标识了这个MP3文件是VBR的。同时第一个FRAME里存放了MP3文件的FRAME的总个数,这就很容易获得了播放总时间,同时还有100个字节存放了播放总时间的100个时间分段的FRAME的INDEX。

原理

  VBR是一种可变编码速率的MP3压缩方式,其原理就是将一首歌的复杂部分用高比特率编码,简单部分用低比特率编码,通过这种动态调整编码速率的方式,进一步得到音质和文件体积之间的平衡。它的主要优点是可以让整首歌都能大致达到我们的音质要求,缺点是编码时无法估计压缩出来的文件体积大小。

  现在推出的MP3机大部分都支持VBR了,不过有些机器虽然能够播放VBR格式的歌曲,但是不能够正确显示播放时间,目前许多高品质MP3都是采用VBR编码的,因此在选购的时候要注意MP3随身听对VBR的支持是否有效。




对 MP3 来说 bitrate(比特率)是最重要的因素,它用来表示每秒钟的音频数据占用了多少个 bit(bit per second,简称 bps)。这个值越高,音质就越好。未压缩的 WAV 文件其 bitrate 为 1400kbps,1 个字节为 8 比特,将 1400/8 转换成字节就是 175kByte/s。所以,对一首 4 分钟的音乐,wav 格式的文件占用的空间为 4 分 * 60 秒 * 175=42000kByte,即 42000/1024=41MB;而 192kbps(每秒 24kByte)的 MP3 则占用了 4*60*24/1024=5.625MB。这种每秒固定比特率的算法是由 Xing 公司开发的,被称为 Constant BitRate,即 CBR(固定速率);后来,Xing 又发展了一种新的算法,他们将一首歌的复杂部分用高 bitrate 编码,简单部分用低 bitrate 编码,这被称为 Variable BitRate,简称 VBR(可变速率)。主意虽然不错,可惜 Xing 编码器的 VBR 算法很差,音质与 CBR 相去甚远,而且不是所有的播放器都支持 VBR 编码的 MP3,包括微软的 media player,这也是为什么在 WMP 中 VBR 编码的 MP3 不能正确显示时间的原因。幸运的是,由 LAME 完美地实现了 VBR 算法(以 Xing 的算法为基础加以改进和扩充),非但如此,从 LAME 3.89 版本开始,LAME 又引入了一种新的算法:ABR(average bitrate,平均速率)。ABR 也被称为“safe VBR”,它可以将生成的 MP3 控制在给定的 bitrate 上。举例来说,当指定用 192kbps、ABR 对一段 wav 文件进行编码时,LAME 会将该文件的 90% 用 192kbps 编码,然后对剩余 10% 进行优化:复杂部分用高于 192kbps 来编码、简单部分用低于 192kbps 来编码。与 192kbps、CBR 相比,192kbps、ABR在文件大小上相差不多,音质却提高不少。据统计,ABR 编码在速度上是 VBR 编码的 2 到 3 倍,在 128-256kbps 范围内质量要好于 CBR。(ABR在指定的文件大小内,以每50帧(30帧约1秒)为一段,低频和不敏感频率使用相对低的流量,高频和大动态表现时使用高流量,可以作为VBR和CBR的一种折中选择。)



视频编码中CBR编码和VBR编码的区别
  用Premiere Pro 2.0输出DVD时,系统中有个选项,即输出采用CBR编码还是VBR编码,那么,CBR编码和VBR编码的区别是什么呢?两种编码适用于什么情况呢?

  VBR就是可变比特率,它与恒定比特率CBR有一些区别,关于CBRVBR编码的区别如下:
  通过使用Windows Media编码器,可以用
恒定比特率(CBR)或可变比特率(VBR)对音频和视频内容进行编码。

  CBR编码
  在流式播放方案中使用CBR编码最为有效。使用CBR编码时,比特率在流的进行过程中基本保持恒定并且接近目标比特率,始终处于由缓冲区大小确定的时间窗内。CBR编码的缺点在于编码内容的质量不稳定。因为内容的某些片段要比其他片段更难压缩,所以CBR流的某些部分质量就比其他部分差。此外,CBR编码会导致相邻流的质量不同。通常在较低比特率下,质量的变化会更加明显。

  VBR编码
  当计划提供内容供用户下载、 将内容在本地播放或者在读取速度有限的设备(如CD或DVD播放机)上播放时,请使用VBR编码。(计划流式播放内容时也可以采用峰值VBR编码模式)当 编码内容中混有简单数据和复杂数据(例如,在快动作和慢动作间切换的视频)时,VBR 编码是很有优势的。使用VBR编码时,系统将自动为内容的简单部分分配较少的比特,从而留出足量的比特用于生成高质量的复杂部分。这意味着复杂性恒定的内 容(例如新闻播音)不会受益于VBR编码。对混合内容使用VBR 编码时,在文件大小相同的条件下,VBR编码的输出结果要比CBR编码的输出结果质量好得多。在某些情况下,与CBR编码文件质量相同的VBR编码文件, 其大小可能只有前者的一半。

  一般情况下,合成相同质量的节目时,采用CBR编码方式时节目合成时间会短一些,但文件的长度会大一些(即相同时长的节目会占用更多的空间或者相同的空间只能容纳更短的节目)。

   一台Intel双核805D(2.66GHz)、1.5GB内存、ATI X550独立256MB显示卡、300GB并口硬盘、不超频的情况下,在Premiere Pro 2.0中合成一段54分钟的DVD节目,采用CBA编码方式,耗时约90分钟,生成的文件约3.7GB;采用VBA二次编码方式,耗时约150分钟,生成 的文件约2.7GB。



VBR是动态码率。CBR是静态码率。 VBR(Variable Bitrate)动态比特率。也就是没有固定的比特率,压缩软件在压缩时根据音频数据即时确定使用什么比特率,这是以质量为前提兼顾文件大小的方式。 VBR也称为动态比特率编码,使用这个方式时,你可以选择从最差音质/最大压缩比到最好音质/最低压缩比之间的种种过渡级数,在MP3文件编码之时,程序会尝试保持所选定的整个文件的品质,将选择适合音乐文件的不同部分的比特率来编码。主要优点是可以让整首歌都能大致达到我们的品质要求,缺点是编码时无法估计压缩出来的文件大小。 CBR(Constants Bit Rate)即固定码率,就是静态(恒定)比特率的意思,CBR是一种固定采样率的压缩方式。优点是压缩快,能被大多数软件和设备支持,缺点是占用空间相对大,效果不十分理想,现已逐步被VBR的方式取代。 固定码率是一个用来形容通信服务质量(QoS,Quality of Service)的术语。和该词相对应的词是可变码率或可变比特率(英文variable bit rate,缩写VBR)。 当形容编解码器的时候,CBR编码指的是编码器的输出码率(或者解码器的输入码率)应该是固定制(常数)。当在一个带宽受限的信道中进行多媒体通讯的时候CBR是非常有用的,因为这时候受限的是最高码率,CBR可以更好的易用这样的信道。但是CBR不适合进行存储,因为CBR将导致没有足够的码率对复杂的内容部分进行编码(从而导致质量下降),同时在简单的内容部分会浪费一些码率。



H.264 中的CBR、VBR

CBR(Constants Bit Rate)即固定码率,就是静态(恒定)比特率的意思,CBR是一种固定采样率的压缩方式。优点是压缩快,能被大多数软件和设备支持,缺点是在同样质量下占用空间相对大,效果不十分理想,现已逐步被VBR的方式取代。

固定码率是一个用来形容通信服务质量(QoS,Quality of Service)的术语。和该词相对应的词是可变码率或可变比特率(英文variable bit rate,缩写VBR)。

VBR(Variable Bit Rate)动态比特率。也就是非固定的比特率,编码软件在编码时根据数据的复杂程度即时确定使用什么比特率,这是以质量为前提兼顾文件大小的编码方式。

H.264是一种高性能的视频编解码技术。目前国际上制定视频编解码技术的组织有两个,一个是“国际电联(ITU-T)”,它制定的标准有H.261、H.263、H.263+等,另一个是“国际标准化组织(ISO)”它制定的标准有MPEG-1、MPEG-2、MPEG-4等。而H.264则是由两个组织联合组建的联合视频组(JVT)共同制定的新数字视频编码标准,所以它既是ITU-T的H.264,又是ISO/IEC的MPEG-4高级视频编码(Advanced Video Coding,AVC),而且它将成为MPEG-4标准的第10部分。因此,不论是MPEG-4 AVC、MPEG-4 Part 10,还是ISO/IEC 14496-10,都是指H.264。

 H.264标准的主要目标是:与其它现有的视频编码标准相比,在相同的带宽下提供更加优秀的图象质量。

在安防监控行业,目前市场上各大厂家的数字硬盘录像机设备均采用的H.264压缩算法。在码流控制方面有CBR,也有VBR。

那么采用的CBR的设备在设定了码流之后,不管是前端摄像机视频流的实际大小是小于所设定的码流,还是大于所设定的码流,经过设备的压缩之后都会固定在所设定的码流。那么这种情况下,如果前端摄像机的实际视频流小于了所设定的码流,就会造成带宽的浪费;如果前端摄像机的实际视频流大于所设定的码流,那么由于码流的固定化,就会造成图像的效果会变差。打个比方来说:CBR就相当于把一条10车道的路直接划出来了8个车道给小汽车用,不管这8个车道上有没有小汽车在行驶,其他的货车、客车等都不能占用这8个车道,严重浪费了资源;而且当小汽车比较多的时候,也禁止占用剩余的那2个车道,又造成了严重的涌堵。

相比来讲,采用VBR的设备就不一样了。采用的VBR的设备在设定了码流之后,会根据前端摄像机的实际码流在所设定的码流范围内自动调节,做到既不浪费带宽,同时也能保证图像质量。打个比方来说:VBR就相当于设置了10个车道当汽车流量小的时候,1个车道就够了;当汽车流量很大的时候,可以用满10个车道。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值