遊戲視頻錄製、H264壓縮、碼率設置、GPU加速、導出經驗分享
10-17
遊戲視頻錄製、H264壓縮、碼率設置、GPU加速、導出經驗分享
來自專欄 achair的寶箱
這篇文章適合錄播遊戲視頻和做視頻課程的朋友。
遊戲視頻採集:
- 用MSI afterburner 錄製遊戲,MJPG編碼,壓縮比例80%-95%,1080P,30幀,MKV格式封裝。
- 採集畫面不壓縮H264,文件很大,錄製1小時遊戲佔用空間32GB。
- 有些畫面碼率高達100M/秒以上,視頻存儲物理硬碟與遊戲所在硬碟分開。
MKV文件壓縮:
- 視頻編輯之前需要把MKV壓縮成MP4,MJPG編碼變成H264編碼,軟體很多,推薦使用nVidia GPU壓縮,或者intel壓縮。
- 推薦XMedia Recode,德國的免費軟體。以前還用過下面這兩款,不過暫時放棄了,分別是:handebrake:免費開源軟體。MediaCoder:國產付費軟體。
- XMedia Recode壓縮是選擇「恆定碼率」或者「可變碼率」,20M碼率。
- 不論是CPU還是GPU在這個環節速度不快,大約2X,每秒60-80幀,看畫面的複雜程度。這個環節是MJPG轉H264。
視頻編輯:
- Camtasia2018,這是一款付費軟體。主要是視頻拼接,加片頭,加字幕用。
- 導出時選擇MP4,也是H264的,選擇6000碼率(6M),這一步導出過程慢,依靠CPU計算。
- 導出視頻播放時基本在6000-8000碼率,碼率峰值11MB。
- 這種視頻很多網站可以直接用,比如B站要求最高6M碼率,峰值碼率不超過24M。
舉個例子:
3分鐘的原始視頻MJPG的MKV文件1.8GB,兩部轉換後的6M碼率的MP4文件大約110MB,畫面質量有縮水(玩遊戲時最清楚),但是也不是很慘,大家可以腦補一下:
- 一部藍光介質的電影 是30GB,壓縮成10GB的H264 MKV文件,平均碼率10M,1080P 清晰度夠用。
- 直播遊戲視頻,碼率是1.6M-2M。
- 6M碼率介於這兩者之間,遊戲視頻目的在於分享,當前網路條件限制,不得不壓縮。
另一種壓縮方案:(可選)
- 視頻編輯軟體輸出時,把碼率調高,比如20M碼率,輸出一個大MP4。
- 再用XMedia Recode軟體把20M碼率的MP4文件,壓縮成6M碼率的MP4,這個過程利用GPU,速度很快。10X,每秒接近300幀。
- 大家看截圖,CPU負擔也很大,但不是100%,這裡CPU負責解碼,GPU負責編碼,同時工作效率高,硬碟也不閑著。
經過數次壓縮,畫質損失不小。
- 從遊戲畫面到MJPG進行了一次有損壓縮,損失15%。
- 從MJPG到H264 20M碼率也是有損壓縮,損失70%
- 視頻編輯軟體把20M碼率的視頻,有損壓縮成6M碼率,損失70%
- 3分鐘的視頻,從1.8G的文件,變成110MB,已經不錯了。
關於視頻壓縮的經驗分享到這裡,再見
推薦閱讀: