2016-11-18 182 views
1

在瀏覽谷歌後,我遇到了關於h264編碼的這一頁,並發現了qp。 https://trac.ffmpeg.org/wiki/Encode/H.264ffmpeg中crf和qp有什麼區別?

我的問題是:與crf和qp有什麼不同?整體上使用qp over crf會更好嗎?還是僅當使用qp 0才能獲得最佳的無損? qp是否有一個明智的設置,如果它是首選?到目前爲止,我知道crf的默認值是23,而18是一個合理的首選質量提高,但我不明白爲什麼18如果更好的明智的無損失將不會默認。最後,會改變其中任何一個導致與非ffmpeg球員不兼容或只是qp?

我正在從webm轉換到mp4的方式。

我打算測試crf 23和18,並選擇哪一個最好,但我似乎無法找到有關此比較或關於qp的任何具體信息。

回答

3

當您直接設置量化參數QP時,它在整個編碼過程中保持不變,每幀將根據設置值進行壓縮。

恆定速率因子CRF允許QP爲靜止幀增加運動量或降低幀數,從而在保持壓縮效率的同時保持一致的感知質量。

This article解釋得非常好。

CRF默認值只是一個默認值,您需要選擇適合您視頻類型的值。 FFmpeg具有像PSNRSSIM這樣的過濾器,可讓您比較結果。

+0

是否使用1個或者其中一個影響玩家兼容性?您的信息和鏈接最有幫助,我只是不知道我的鏈接上提到的兼容性。 – Nova

+1

@Nova讓自己變得容易,忘記'-qp'即使存在:對於一般用戶來說基本上是無用的。使用'-crf'。 – LordNeckbeard

+1

@Nova不,所有現存的玩家都支持使用-qp或-crf生成的文件。還有其他一些選項會影響非常有限的使用情況下的可玩性,例如藍光,但你不應該擔心,除非你專門把文件放在藍光盤上。移動設備和圖形卡中的硬件播放器現在擁有非常一致的H.264支持,因此您不必再擔心這一點。 –

0

常量QP模式在有限的情況下很有用。

我有一些來自Subnautica的視頻遊戲錄音。當我穿過大門時,蟲洞效應非常混亂,CRF模式會降低質量。不幸的是,這會導致HUD元素變得模糊。爲了保持HUD的脆度,我從CRF切換到恆定的QP模式。我想H.264編碼器的未來版本可以改進,以保持QP在沒有像素不變的情況下保持清晰,但目前還不存在。

對於中間編碼(例如,將屏幕捕獲從可變幀頻轉換爲恆定幀頻,因爲混合器沒有架構來正確處理可變幀頻內容),常量QP可能是一個不錯的選擇,提供額外的磁盤空間。

在大多數素材中,CRF將爲您節省一些磁盤空間或帶寬。但在像我這樣的少數情況下,我更喜歡不斷的QP。