如何設置NVENC硬件編碼達到GPU壓片天花板

本文將介紹如何使用FFmpeg+NVENC進行壓片,首先要聲明GPU壓片的效果一定不如CPU壓片的效果好,但GPU即使參數拉到最滿,速度也比CPU壓片快的多的多。所以你的CPU如果不是什麼好U又不想浪費生命,請使用GPU編碼。

首先是壓片工具,FFmpeg即可,其他圖形化工具都是使用預設參數調用這些而已,而且他們的預設參數並不一定高效,也不一定質量好。所以,請去FFmpeg下載一個壓縮包,然後解壓。

問題來了,這東西只能命令行,要如何使用呢。我給大家寫好了通用腳本,請保存為.bat文件並與FFmpeg的bin文件(exe可執行文件)放在同一目錄。

腳本使用說明:
1、確保腳本所在目錄下有一個名為 ffmpeg.exe 的可執行文件 。如果沒有,可以修改腳本中的 FFMPEG_BIN 變量將其指向電腦上的絕對路徑(例如 set "FFMPEG_BIN=C:\ffmpeg\bin\ffmpeg.exe")。
2、腳本使用了 -c:v hevc_nvenc 參數 ,電腦必須配備支持 NVENC(H.265/HEVC)硬件編碼的N卡。

自定義配置:
TARGET_RESOLUTION: 視頻導出分辨率。留空表示原畫輸出。如果需要轉為 1080p,請填寫 1920:1080;如果需要 720p,請填寫 1280:720。
FONT_DIR: 指定加載外掛字幕時的本地字體庫目錄,防止字體缺失導致樣式錯誤 。
V_BITRATE 等參數: 控制輸出視頻的碼率,默認配置為平均 2000k、最大 4000k。可以根據畫面複雜度和分辨率適當調高(例如 1080p 可以設置 4000k / 8000k)。

字幕自動掛載:
腳本具有「自動尋找同名外掛字幕並壓制進視頻(硬字幕)」的功能。
只要將字幕文件放在視頻同目錄下,並且文件名與視頻一致(例如 video.mp4 和 video.ass),腳本會自動加載。優先級為:ASS > SSA > SRT 。如果沒有找到匹配的字幕,它將直接跳過字幕加載。

運行方式:
此腳本不適合直接雙擊運行,因為它需要接收 輸入文件 和 輸出文件 兩個參數 。您可以通過以下兩種方式使用它:
方法 1:通過命令行運行 (CMD/PowerShell)
打開命令行工具,輸入:

方法 2:結合批量處理腳本 (推薦)
如果你有很多文件需要壓制,可以新建一個 run_all.bat 文件,利用 for 循環調用這個核心腳本:

將 run_all.bat 與您的視頻和 convert_lilith.bat 放在同一個文件夾下,雙擊 run_all.bat 即可實現批量壓制。

至於壓片參數,我就不解釋了。所有參數基本上是GPU壓片的最高預設,比如p7(NVENC 提供的最高質量預設)和10bit以及2-pass以及B幀。

需要注意的是,如果你的顯卡是RTX 20系以前,可能無法使用B幀參考,如果你的顯卡是40系以後,也可以自行使用-c:v av1_nvenc。

祝您壓片愉快。



發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *