H264 视频码率
為什么同樣的分辨率幀率視頻 ,碼率還不一樣?
? ? 編碼器壓縮的度不一樣,所以影響存儲(chǔ)空間和網(wǎng)絡(luò)上傳輸帶寬占用。
碼率,也叫做比特率:視頻比特率是指要播放該視頻,所需要每秒讀取的該視頻文件的比特(bit)數(shù)。單位為bps(Bit Per Second),比特率越高,每秒讀取數(shù)據(jù)就越多,同等條件下畫(huà)質(zhì)就越好。
一個(gè)原生的視頻,不進(jìn)行編碼壓縮,要顯示播放,每秒需要的bit數(shù):
?一個(gè) 這樣的 視頻:
?????? 1280 width
??????? 720 high
??????? 使用色彩空間? YUV 420 ,這個(gè)格式每個(gè)像素平均占用空間 12bit
??????? 幀率 25fps
如果不壓縮,每秒原始的數(shù)據(jù)量 大小為:
1280 x 720 (總像素) x 12bit(每個(gè)像素占用12bit) x 25(一秒25幀) = 276480000 bits = 32.96? x 1024 x 1024 x8
即每秒要用到的數(shù)據(jù)是 32.96MB.
但是有編碼器的存在,就是為了減少這些存儲(chǔ)傳輸?shù)臄?shù)據(jù)量,比如h264,進(jìn)行編碼后對(duì)應(yīng)的總的輸出數(shù)據(jù)(這是數(shù)據(jù)是壓縮后數(shù)據(jù))每秒占用的 空間,稱(chēng)為碼率(也可以說(shuō)比特率),一般來(lái)說(shuō),壓縮率越高,每一幀數(shù)據(jù)越小,所以碼率越小,壓縮后的視頻質(zhì)量就會(huì)越低,這些取決于內(nèi)部的壓縮編碼方法。 所以,h264的編碼,是支持 靜態(tài)碼率,動(dòng)態(tài)碼率等幾種方式的。即 CBR(Constant Bit Rate)是以恒定比特率方式進(jìn)行編碼》VBR(Variable Bit Rate)動(dòng)態(tài)比特率,其碼率可以隨著圖像的復(fù)雜程度的不同而變化,因此其編碼效率比較高。 一般來(lái)說(shuō),碼率越低,壓縮率越高,每一幀h264越小。圖像效果越差(畢竟一般都是有損壓縮,為了更高的壓縮率更小的存儲(chǔ)空間)。碼率越高,不會(huì)高過(guò)原始碼率(上面分析的不壓縮時(shí)候的視頻碼率,高出這個(gè),這個(gè)編碼就毫無(wú)意義了)? ,一般圖像效果也越好。 剛才所說(shuō),編碼器可以支持動(dòng)態(tài)碼率編碼和靜態(tài)碼率編碼。如果采用動(dòng)態(tài)碼率編碼,那么這個(gè)視頻文件的碼率就是根據(jù)實(shí)際內(nèi)容動(dòng)態(tài)變化的,比如某一個(gè)畫(huà)面場(chǎng)景比較復(fù)雜,為了保留更多的圖像細(xì)節(jié),編碼器對(duì)這些復(fù)雜畫(huà)面幀的編碼壓縮率相對(duì)較小,輸出的h264幀數(shù)據(jù)比較大,碼率就大,如果只是幾張空白的背景,編碼出來(lái)的幀就小得多。
有個(gè)疑問(wèn),碼率越低,壓縮率越高,是不是意味著編解碼器和解碼要做的工作越多?編碼和解碼耗時(shí)也就越長(zhǎng),畢竟要復(fù)原圖像,還是需要原圖像的相當(dāng)?shù)臄?shù)據(jù)量。這么說(shuō)來(lái),都是犧牲時(shí)間來(lái)減少空間,所以隨著硬件性能的提升,原本耗時(shí)更多的 編解碼方案得以實(shí)際可用,就會(huì)催生出新的計(jì)算更復(fù)雜但是壓縮率更大的編解碼方案。比如什么h266 vp9
做app的一個(gè)朋友很疑惑,說(shuō)你們一個(gè)視頻文件那么大,咋不知道先zip壓縮一下再放進(jìn)來(lái)呢,嗯。。。。。。。。。你覺(jué)得編碼器編碼壓縮出來(lái)的音視頻你還能zip再壓榨一下信息量么???要不你試下.mp4 右鍵zip一下???
總結(jié)
- 上一篇: 即时通讯视频聊天原理是什么
- 下一篇: [html] 说说你对html中的置换