PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 其他群組 > 七嘴八舌異言堂
帳戶
密碼
 

回應
 
主題工具
沒問題
Major Member
 

加入日期: Dec 2015
文章: 210
FFmpeg的最佳設定…

我的原始檔案用的是1920x1080@120FPS with 2Ch [email protected] in 128k.
使用4070及32線程CPU。
我的FFmpeg是於『https://www.gyan.dev/ffmpeg/builds/』下載,這是從官方網站引導出來的,因為FFmpeg本身不製作可執行檔,所以都是由他人製作完成。
而我用的FFmpeg版本是2025-06-17-git-ee1f79b0fa-full版本。

==================================================================
裁切黑邊是要注意第一次分析的訊息,如『[Parsed_cropdetect_0 @ 00000202cd98df40] x1:0 x2:1919 y1:17 y2:1059 w:1920 h:1040 x:0 y:20 pts:138801663 t:9036.566602 limit:0.094118 crop=1920:1040:0:20

crop=1920:1040:0:20這段訊息就是你需要保留的長寬以及你需要裁切的長寬。
也就是第二次編碼時所需要的部份,可以注意看下面-vf "crop=1920:1040:0:20"的部份。

------------------裁切黑邊------------------
ffmpeg -i -threads 32 123.mp4 -vf cropdetect -f null -

H264模式
ffmpeg -y -threads 8 -i 123.mp4 -vf "crop=1920:1040:0:20" -c:v libx264 -profile:v high10 -level 4.1 -pix_fmt yuv420p10le -preset veryslow -crf 15 -g 80 -refs 4 -fps_mode cfr -c:a copy 123crop.mp4

NVENC模式
ffmpeg -y -hwaccel cuda -threads 8 -i 123.mp4 -vf "crop=1920:1040:0:20" -c:v h264_nvenc -profile:v high -pix_fmt yuv420p -preset p7 -cq 9 -g 80 -refs 4 -rc-lookahead 64 -b_ref_mode middle -aq 2 -spatial-aq 1 -temporal-aq 1 -fps_mode cfr -c:a copy 123crop.mp4
-level 4.1 + profile high + yuv420p

HEVC模式
ffmpeg -y -hwaccel cuda -threads 8 -i 123.mp4 -vf "crop=1920:1040:0:20" -c:v hevc_nvenc -profile:v main10 -level 5.1 -pix_fmt yuv420p10le -preset p1 -cq 9 -g 80 -refs 4 -rc-lookahead 64 -b_ref_mode middle -aq 2 -spatial-aq 1 -temporal-aq 1 -fps_mode cfr -c:a copy 123crop.mp4



==================================================================
以下是將FHD影片轉換成mpeg2存放影片的人使用,建議配合DVD DL 8.4GB使用。若你有SRT字幕,可以用Subtitile Edit將SRT轉成idx/sub Vobsub格式,再用Mkvtoolnix將之合併。
我都將設定調至最佳畫質,且所有的參數都是以最佳畫質來指定,若有不同的需要『畫質或容量』,可以自行刪減或是減少碼率。
這個設定最後可以製作出真正可以在DVD上播放的影片。

------------------使用DVD Mpeg2可變位元速率且採用二次編碼分析並將解析度降至[email protected] with 2Ch AC3@48 in 192k------------------]
ffmpeg -y -hwaccel cuda -i "123crop.mp4" -threads 16 -vf "scale=720:480,setsar=32/27" -r 30000/1001 -aspect 16:9 -c:v mpeg2video -b:v 8000k -minrate 4000k -maxrate 9500k -bufsize 1835k -g 10 -bf 2 -pass 1 -an -fps_mode cfr -f mpeg2video NUL

ffmpeg -y -hwaccel cuda -i "123crop.mp4" -threads 16 -vf "scale=720:480,setsar=32/27" -r 30000/1001 -aspect 16:9 -c:v mpeg2video -b:v 8000k -minrate 4000k -maxrate 9500k -bufsize 1835k -g 10 -bf 2 -pass 2 -qmin 1 -qmax 1 -dc 10 -trellis 2 -mbd rd -intra_vlc 1 -flags +bitexact -flags -ilme-ildct -fps_mode cfr -c:a ac3 -b:a 192k -ar 48000 -ac 2 -f dvd "FinalDVD-VBR-MAX.mpg"


==================================================================
以下是給使用DVD存放影片的人使用,建議使用。若你有SRT字幕,可以用Subtitile Edit將SRT轉成idx/sub Vobsub格式,再用Mkvtoolnix將之合併。
我都將設定調至最佳畫質,且所有的參數都是以最佳畫質來指定,若有不同的需要『畫質或容量』,可以自行刪減或是減少碼率。

------------------使用平均位元速率並將解析度降至[email protected] with 2Ch [email protected] in 128k------------------]
ffmpeg -y -hwaccel cuda -i "d:\123crop.mp4" -threads 32 -vf "scale=720:480,fps=29.97,setdar=16/9" -aspect 16:9 -c:v libx264 -crf 18 -profile:v high10 -level 5.1 -pix_fmt yuv420p10le -preset veryslow -x264-params "rc-lookahead=120:keyint=80:min-keyint=1:ref=8:bframes=6:b-adapt=2:direct=auto:me=umh:subme=12:trellis=2:aq-strength=1.2:psy-rd=1.0,0.15:deblock=1,1:mbtree=1:mixed-refs=1:weightp=2:chroma-qp-offset=-2:no-fast-pskip=1" -c:a aac -b:a 128k -ar 44100 -ac 2 -movflags +faststart "Final264DVD-ABR-MAX.mkv"

------------------使用可變位元速率且採用二次編碼分析並將解析度降至[email protected] with 2Ch [email protected] in 128k------------------
ffmpeg -y -hwaccel cuda -i "123crop.mp4" -threads 32 -vf "scale=720:480,fps=29.97,setdar=16/9" -aspect 16:9 -c:v libx264 -profile:v high10 -level 5.1 -pix_fmt yuv420p10le -preset veryslow -b:v 2500k -maxrate 9000k -bufsize 12000k -pass 1 -passlogfile "g:\ffmpeg-pass" -x264-params "nal-hrd=vbr:vbv-bufsize=12000:vbv-maxrate=9000:rc-lookahead=120:keyint=80:min-keyint=1:ref=8:bframes=6:b-adapt=2:direct=auto:me=umh:subme=12:trellis=2:aq-strength=1.2:psy-rd=1.0,0.15:deblock=1,1:mbtree=1:mixed-refs=1:weightp=2:chroma-qp-offset=-2:no-fast-pskip=1" -an -f mp4 NUL

ffmpeg -y -hwaccel cuda -i "d:\123crop.mp4" -threads 32 -vf "scale=720:480,fps=29.97,setdar=16/9" -aspect 16:9 -c:v libx264 -profile:v high10 -level 4.1 -pix_fmt yuv420p10le -preset veryslow -b:v 2500k -maxrate 9000k -bufsize 12000k -pass 2 -passlogfile "g:\ffmpeg-pass" -x264-params "nal-hrd=vbr:vbv-bufsize=12000:vbv-maxrate=9000:rc-lookahead=120:keyint=80:min-keyint=1:ref=8:bframes=6:b-adapt=2:direct=auto:me=umh:subme=12:trellis=2:aq-strength=1.2:psy-rd=1.0,0.15:deblock=1,1:mbtree=1:mixed-refs=1:weightp=2:chroma-qp-offset=-2:no-fast-pskip=1" -c:a aac -b:a 128k -ar 44100 -ac 2 -movflags +faststart "Final264DVD-VBR-MAX.mkv"



==================================================================
以下是給使用DVD存放影片的人使用,基本上不建議使用,唯一好處就是可以用NVENC可以大大的提高速度。若你有SRT字幕,可以用Subtitile Edit將SRT轉成idx/sub Vobsub格式,再用Mkvtoolnix將之合併。
我都將設定調至最佳畫質,且所有的參數都是以最佳畫質來指定,若有不同的需要『畫質或容量』,可以自行刪減或是減少碼率。

------------------使用NVENC之固定位元速率並將解析度降至[email protected] with 2Ch [email protected] in 128k------------------
ffmpeg -y -hwaccel cuda -i "123crop.mp4" -threads 8 -vf "scale=720:480,fps=29.97,setdar=16/9" -aspect 16:9 -c:v h264_nvenc -preset p7 -profile:v high -rc constqp -cq 10 -g 80 -refs 4 -b_ref_mode middle -aq 2 -spatial-aq 1 -temporal-aq 1 -c:a aac -b:a 128k -ar 44100 -ac 2 -movflags +faststart "Final264DVD-CBR-NVENC-MAX.mkv"


------------------使用NVENC之可變位元速率並將解析度降至[email protected] with 2Ch [email protected] in 128k------------------
ffmpeg -y -hwaccel cuda -i "123crop.mp4" -threads 8 -vf "scale=720:480,fps=29.97,setdar=16/9" -aspect 16:9 -c:v h264_nvenc -preset p7 -profile:v high -rc vbr -tune hq -cq 10 -g 80 -refs 4 -rc-lookahead 160 -b_ref_mode middle -multipass 2 -b:v 13000k -maxrate 16000k -minrate 4000k -bufsize 18000k -aq 2 -spatial-aq 1 -temporal-aq 1 -c:a aac -b:a 128k -ar 44100 -ac 2 -movflags +faststart "g:\Final264DVD-VBR-NVENC-MAX.mkv"

==================================================================
要注意的事情是,若是-profile:v high10 -level 5.1 -pix_fmt yuv420p10le會造成無法播放的情況,應使用VLC播放。
若要完全的相容則應該將其改為-profile:v high或是-profile:v high -level 4.1 -pix_fmt yuv420p。

另外,MKV也會造成影響,若仍無法改善則應改為只使用-profile:v high搭配MP4。
     
      

此文章於 2025-07-04 06:21 AM 被 沒問題 編輯.
舊 2025-07-04, 12:06 AM #1
回應時引用此文章
沒問題現在在線上  
PM
Power Member
 
PM的大頭照
 

加入日期: Sep 2006
文章: 539
看不太懂這樣轉整個目的是什麼
如果是要燒成DVD Video, 印象中可用的格式很嚴格,不是轉mpeg2就可以直接燒

再來可以直接播MP4的機器,可以吃的格式就多了,只要流量裝得進DVD, 就是塞到滿
如果是舊機器,我建議直接換新的,為了舊機器用舊格式,太辛苦了沒必要

用到VLC 用行動裝置或電腦播嗎?那downscale的目的是什麼?
我現在轉檔都是走h.265或是VC1,用電腦播就是用最佳格式最高流量,轉好丟YouTube甚至不需要自備儲存空間
 
舊 2025-07-04, 09:50 AM #2
回應時引用此文章
PM離線中  
msnow
Major Member
 

加入日期: Nov 2004
文章: 182
咦好像很複雜
這個okx介紹的vedioproc搞不定嗎?
舊 2025-07-04, 01:02 PM #3
回應時引用此文章
msnow離線中  


回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是02:54 PM.


vBulletin Version 3.0.1
powered_by_vbulletin 2025。