CBR VBR ABR

CBR(固定比特率)

Constant BitRate的縮寫,意思是恆定(固定)比特率,指文件每秒鐘的碼率是固定不變的。CBR的特點是碼率平穩,固定碼流控制可以減少網絡抖動的影響,不大起大落,適合網絡直播。

CBR編碼在流式播放方案中使用CBR編碼最爲有效。使用CBR編碼時,比特率在流的進行過程中基本保持恆定並且接近目標比特率,始終處於由緩衝區大小確定的時間窗內。CBR編碼的缺點在於編碼內容的質量不穩定。因爲內容的某些片段要比其他片段更難壓縮,所以CBR流的某些部分質量就比其他部分差。

此外,CBR編碼會導致相鄰流的質量不同。通常在較低比特率下,質量的變化會更加明顯。採用CBR編碼方式時節目合成時間會短一些,但文件的長度會大一些(即相同時長的節目會佔用更多的空間或者相同的空間只能容納更短的節目)。

VBR(動態比特率)

Variable BitRate的縮寫,意思是可變比特率,指文件每秒鐘的碼率是可以變化的。VBR的特點是碼率波動起伏較大,但總體省空間,主要用來存儲。網絡條件非常好的情況下也是可以用的。

VBR編碼當計劃提供內容供用戶下載、 將內容在本地播放或者在讀取速度有限的設備(如CD或DVD播放機)上播放時,請使用VBR編碼。(計劃流式播放內容時也可以採用峯值VBR編碼模式)當 編碼內容中混有簡單數據和複雜數據(例如,在快動作和慢動作間切換的視頻)時,VBR 編碼是很有優勢的。

使用VBR編碼時,系統將自動爲內容的簡單部分分配較少的比特,從而留出足量的比特用於生成高質量的複雜部分。這意味着複雜性恆定的內 容(例如新聞播音)不會受益於VBR編碼。對混合內容使用 VBR 編碼時,在文件大小相同的條件下,VBR編碼的輸出結果要比CBR編碼的輸出結果質量好得多。在某些情況下,與CBR編碼文件質量相同的VBR編碼文件, 其大小可能只有前者的一半。

ABR(平均比特率,CBR和VBR的折衷)

average bitrate的縮寫,ABR編碼平均比特率,是VBR的一種插值參數。Lame針對CBR不佳的文件體積比和VBR生成文件大小不定的特點獨創了這種編碼模式。ABR也 被稱爲“Safe VBR”,它是在指定的平均Bitrate內,以每50幀(30幀約1秒)爲一段,低頻和不敏感頻率使用相對低的流量,高頻和大動態表現時使用高流量。

舉例來說,當指定用192kbps ABR對一段wav文件進行編碼時,Lame會將該文件的85%用192kbps固定編碼,然後對剩餘15%進行動態優化:複雜部分用高於192kbps 來編碼、簡單部分用低於192kbps來編碼。與192kbps CBR相比,192kbps ABR在文件大小上相差不多,音質卻提高不少。ABR編碼在速度上是VBR編碼的2到3倍,在128-256kbps範圍內質量要好於CBR。可以做爲VBR和CBR的一種折衷選擇。

總結

  1. VBR 適合的應用場景是媒體存儲,而不是網絡傳輸;

  2. 其實實際網絡傳輸中所謂的 CBR 一般都是 ABR(平均比特率),即只要是單位時間內把碼率控制在額定碼率就可以了,因爲編碼輸出本來就有緩衝可以起到平滑波動的作用;

  3. 你所謂的嚴格意義上的 CBR 是每一幀都分配同樣的碼字,試想一下,如果某一幀所需要的碼字本來就很少,而你卻一定要給它分配很多碼字,那不是浪費麼?另一方面,如果某一幀所需要的碼 字本來就多,而你卻給得很少,那這幀的效果會很差。這樣編下來,整體序列質量會忽好忽壞地不停發生跳變,反而對視覺衝擊很大;因此 ABR 纔是最適合網絡傳輸的方案;

  4. 無論是 CBR、ABR 還是 VBR 都是屬於碼率控制,而碼率控制是視頻編碼的開放部分,它不會改變碼流結構的合法性,因此無論在 MPEG2、MPEG4 還是 H.263、H.264 當中都沒有做規定;

  5. 由於目前的視頻編碼標準都是基於塊編碼的混合編碼框架,因此一個碼率控制算法可以用到任何協議上(當然有時候需要做點小的改動),只不過是控制效果好不好的問題,沒有哪個 RC 是專屬哪個協議的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章