直播導播高畫質影片傳輸中的影片壓縮編碼原理解析

ccit0519發表於2020-07-11
1、為什麼要編碼?

以1080P解析度,60fps幀率,24位色來算,一分鐘原始影片的大小為21357MB。以20mbps的頻寬傳輸,需要142分鐘,經過H.264編碼壓縮以後,假定壓縮位元速率是CBR 3Mbps,大小約22MB。以20mbps的頻寬傳輸,僅需要9秒鐘,即9秒鐘可以傳送長度為1分鐘影片,滿足實時傳輸的要求,所以原始影片要想透過網路傳輸,勢必要經過壓縮編碼。

2、影片編碼協議有哪些?

目前常見的編碼格式有MPEG-1、MPEG-2、MPEG-4、H.263、H.264,由於H.264具有更強的壓縮效果與更好的相容性,是目前主流的編碼協議。隨著壓縮技術持續發展,H.265協議逐漸進入應用階段,H.266標準進入制定階段。H.265標準保留了H.264原有的技術,同時對一些相關的技術加以改進。新技術用以改善碼流、編碼質量、延時和演算法複雜度之間的關係,達到最佳的效果。理論上來說,同等1080P畫質下,H.265會比H.264要節省頻寬30%~40%,,如果是4K畫質,可以節省50%,解析度越高,H265的壓縮收益越明顯。目前直播領域傳輸普遍採用的RTMP協議還不支援H.265,所以在直播領域使用率並不高。

3、幀間編碼與幀內編碼的區別?

影片壓縮技術有很多方式來實現位元速率壓縮。在壓縮的時候針對每一幀的畫面來進行單獨分析,就好比壓縮一張照片,這叫幀內編碼。 而幀間編碼則是記錄兩張完整的畫面,然後只記錄其中產生變化的部分,重新運算出中間的幀,就可以恢復出當時的畫面了。


4、什麼是封裝格式?

如果是針對檔案,通俗的說,就是你影片檔案的字尾名(avi、rmvb、mp4、flv、wmw)。你可以把格式理解成一個大箱子,這個箱子可以裝進影片的畫面、聲音、媒體資訊和所有的幀,等到播放的時候軟體會開啟這個箱子用正確的方式來回放你的片子常州點個贊科技開發的系統最大支援2TB TF卡內錄,錄影檔案封裝格式為MP4。當然還有流協議封裝,除了RTMP之外,還整合了RTSP server在裝置內,支援區域網RTSP拉流。


5、如何提升影片的畫質?

會影響你的畫面的重要因素是位元速率,位元速率決定了你檔案的大小,而編碼則會盡可能在這個大小之下保留最好的影像, 位元速率也分為恆定位元速率和可變位元速率,那麼通常可變位元速率會更加實用一些,因為編碼器會分析畫面,之後再對複雜的畫面提供更多的位元速率,對於更容易壓縮的地方,則會減少位元速率,這樣即便檔案大小不變,整體畫質也會獲得提升,但前提是你必須擁有一個非常好的網路訊號。直播中由於受網路影響,恆定位元速率波動小,更適合網路傳輸。 在位元速率有限的情況下,拍攝過程中儘量避免複雜移動的畫面,比如大幅度搖動攝像機或者霓虹燈頻閃的場景,另外,低光環境下,儘量選用低照度效果好的攝像機, 大幅度變化的畫面或者密集噪點畫面等都會使前後資訊量急劇加大,如果不提高位元速率,畫面清晰度很容易變差。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31421468/viewspace-2703877/,如需轉載,請註明出處,否則將追究法律責任。

相關文章