FFmpeg使用顯卡進行轉碼硬件加速的記錄降铸,以及和軟壓的比較

1. 環(huán)境

操作系統(tǒng):Windows 10
FFmpeg版本:20171204
顯卡:GTX 965M

2. 過程

最近是有比較多的壓制需求,使用libx265軟壓的速度實在是慢的受不了情连,所以還是希望能用顯卡硬壓起碼速度快一點示括。之前有人跟我提過硬壓質量似乎不及軟壓,但是決定還是試一試为严。在ffmpeg官網(wǎng)找到硬壓的相關信息敛熬。
由于我用的是windows,所以驅動基本沒有特別配置第股。而且windows版的ffmpeg也是參數(shù)配置好的应民,所以這方面沒有考慮太多。linux平臺可能需要配置一下參數(shù)啥的。
壓制分為兩步诲锹,先是對視頻解碼再編碼繁仁。ffmpeg在兩步都提供了硬件加速方案。
在官網(wǎng)給出的例子是基于h264的归园,h265的硬件參數(shù)啥的可以用:

ffmpeg -codecs | sls cuvid (備注:sls是powershell的命令黄虱,類似于linux下的grep命令)

可以看到這條:

DEV.L. hevc H.265 / HEVC (High Efficiency Video Coding) (decoders: hevc hevc_qsv hevc_cuvid ) (encoders: libx265 nvenc_hevc hevc_nvenc hevc_qsv )

解碼器提供了hevc, hevc_qsv, hevc_cuvid; 編碼器提供了libx265, nvenc_hevc, hevc_nvenc, hevc_qsv,但是這個nvenc_hevc其實已經(jīng)作廢了庸诱,你用它的話他會提示你自動給你轉到hevc_nvenc捻浦。
解碼器的這三個用法我是不太懂有啥區(qū)別,也沒去做太多研究桥爽,因為在實踐中使用硬解的話是沒辦法同時硬壓字幕的朱灿,會報錯,況且硬解對于整體壓制速度并沒有太大提升聚谁,所以就拋棄硬解了母剥。
編碼器的部分,libx265就是軟壓形导,hevc_qsv似乎是英特爾的集顯硬壓,具體看這里习霹。那么留給n卡的只有hevc_nvenc可以用了朵耕。
使用這條命令來查看該方法的參數(shù):

ffmpeg -h encoder=hevc_nvenc

可以得到可用參數(shù),我們這里探究的是-cq參數(shù)淋叶,給出的描述是:

-cq <float> E..V.... Set target quality level (0 to 51, 0 means automatic) for constant quality mode in VBR rate control (from 0 to 51) (default 0)

我感興趣的原因是它和libx265阎曹,也就是軟壓的-crf參數(shù)很類似。所以接下來都是在其他參數(shù)不考慮的情況下對不同cq的對比煞檩。

3. 不同cq值的對比

我用的是諜影重重5的預告片壓制測試处嫌,原視頻數(shù)據(jù)如下:

Format                      : MPEG-4
Format profile              : QuickTime
Codec ID                    : qt   2005.03 (qt  )
File size                   : 35.6 MiB
Duration                    : 30 s 30 ms
Overall bit rate            : 9 938 kb/s
Encoded date                : UTC 2016-02-08 06:40:30
Tagged date                 : UTC 2016-02-08 06:40:30
Writing library             : Apple QuickTime 7.7.3

在使用命令
ffmpeg -i original.mov -c:v hevc_nvenc -cq X cqx.mp4
進行測試后。結果如下:
Libx265 (軟壓)

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 5.53 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 1 544 kb/s
Writing application         : Lavf58.2.103

-cq 0(默認)

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 8.21 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 2 290 kb/s
Writing application         : Lavf58.2.103

-cq 1

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 8.21 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 2 290 kb/s
Writing application         : Lavf58.2.103

-cq 10

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 8.21 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 2 290 kb/s
Writing application         : Lavf58.2.103

-cq 20

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 8.21 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 2 290 kb/s
Writing application         : Lavf58.2.103

-cq 30

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 8.20 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 2 286 kb/s
Writing application         : Lavf58.2.103

-cq 35

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 5.52 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 1 539 kb/s
Writing application         : Lavf58.2.103

-cq 38

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 4.06 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 1 132 kb/s
Writing application         : Lavf58.2.103

-cq 41

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 3.06 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 855 kb/s
Writing application         : Lavf58.2.103

-cq 51

Format                      : MPEG-4
Format profile              : Base Media
Codec ID                    : isom (isom/iso2/mp41)
File size                   : 1.41 MiB
Duration                    : 30 s 70 ms
Overall bit rate            : 392 kb/s
Writing application         : Lavf58.2.103

對比視頻在這里斟湃。

4. 結論

可以看到cq在1到30的變化并不大熏迹,在41以上畫面基本上是沒辦法看了。在和libx265的默認軟壓對比后凝赛,-cq值落在35到40之間是比較好的選擇注暗。
在后續(xù)的實際應用中,我在壓制畫面動作較少的視頻墓猎,如交響樂視頻的情況下捆昏,-cq 37是一個對于我來說比較好的選擇。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末毙沾,一起剝皮案震驚了整個濱河市骗卜,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖寇仓,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件举户,死亡現(xiàn)場離奇詭異,居然都是意外死亡焚刺,警方通過查閱死者的電腦和手機敛摘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來乳愉,“玉大人兄淫,你說我怎么就攤上這事÷Γ” “怎么了捕虽?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長坡脐。 經(jīng)常有香客問我泄私,道長,這世上最難降的妖魔是什么备闲? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任晌端,我火速辦了婚禮,結果婚禮上恬砂,老公的妹妹穿的比我還像新娘咧纠。我一直安慰自己,他們只是感情好泻骤,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布漆羔。 她就那樣靜靜地躺著,像睡著了一般狱掂。 火紅的嫁衣襯著肌膚如雪演痒。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天趋惨,我揣著相機與錄音鸟顺,去河邊找鬼。 笑死希柿,一個胖子當著我的面吹牛诊沪,可吹牛的內容都是我干的。 我是一名探鬼主播曾撤,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼端姚,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了挤悉?” 一聲冷哼從身側響起渐裸,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤巫湘,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后昏鹃,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體尚氛,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年洞渤,在試婚紗的時候發(fā)現(xiàn)自己被綠了阅嘶。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡载迄,死狀恐怖讯柔,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情护昧,我是刑警寧澤魂迄,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站惋耙,受9級特大地震影響捣炬,放射性物質發(fā)生泄漏。R本人自食惡果不足惜绽榛,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一湿酸、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧灭美,春花似錦稿械、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽页眯。三九已至梯捕,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間窝撵,已是汗流浹背傀顾。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留碌奉,地道東北人短曾。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像赐劣,于是被迫代替她去往敵國和親嫉拐。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355