1. 程式人生 > >視頻碼率

視頻碼率

視頻碼率 流媒體

什麽是碼率:

碼率就是數據傳輸時單位時間傳送的數據位數,一般我們用的單位是kbps即千位每秒。其英文是 Kilobits per second,意即“千位每秒”(根據發音亦譯作“千比特每秒”),意思是說每過一秒鐘,有多少千比特的數據流過,因此碼率也經常被稱為“比特率”。 通俗一點的理解就是取樣率,單位時間內取樣率越大,精度就越高,處理出來的文件就越接近原始文件,也就是說畫面的細節就越豐富,畫面質量越好。

但是文件體積與取樣率是成正比的,所以幾乎所有的編碼格式重視的都是如何用最低的碼率達到最少的失真,圍繞這個核心衍生出來的cbr(固定碼率)與vbr(可變碼率),都是在這方面做的文章,不過事情總不是絕對的,從音頻方面來說,碼率越高,被壓縮的比例越小,音質損失越小,與音源的音質越接近。

固定碼率:

當然不同的碼率其視頻效果,文件大小等都是不一樣的。在流式播放方案中使用固定碼率最為有效。使用固定碼率時,比特率在流的進行過程中基本保持恒定並且接近目標比特率,始終處於由緩沖區大小確定的時間窗內。固定碼率的缺點在於編碼內容的質量不穩定。因為內容的某些片段要比其他片段更難壓縮,所以圖像的某些部分質量就比其他部分差。此外,固定碼率會導致相鄰流的質量不同。通常在較低比特率下,質量的變化會更加明顯。但隨著real 公司支持VBR 的R9/R10 的出現,現在壓片基本上已經都不用固定碼率了,不過對於VCD 這樣畫質的視頻用CBR也是個不錯的選擇。

動態碼率:

動態碼率近年來在視頻編碼處理中應用是比較多的。當編碼內容中混有簡單數據和復雜數據

(例如,在快動作和慢動作間切換的視頻)時,動態碼率是很有優勢的。使用動態碼率時,系統將自動為內容的簡單部分分配較少的比特,從而留出足量的比特用於生成高質量的復雜部分。這意味著復雜性恒定的內容(例如新聞播音)不會受益於動態碼率。對混合內容使用動態碼率時,在文件大小相同的條件下,動態碼率的輸出結果要比固定碼率的輸出結果質量好得多。在某些情況下,與固定碼率文件質量相同的動態碼率文件,其大小可能只有前者的一半。

如何查看視頻的碼率:

MediaInfo:

技術分享

多碼率適配復雜網絡:

l 支持P2P/RTMP/FLV/HLS多碼率,觀眾可根據當前網絡條件選擇合適的碼率和分辨率觀看。

l 支持HLS多碼率自適應,播放器可自動根據當前網絡條件選擇合適的碼率輸出觀看。

以支持播放器多碼率輸出的網絡直播系統(800li media server)為例:

1. 支持自定義多碼率配置。

技術分享

2. 播放器多碼率演示:

技術分享

了解更多流媒體服務器系統集群信息:

技術分享


視頻碼率