ffmpeg:多個音訊過濾器的正確語法

ffmpeg:多個音訊過濾器的正確語法

我想應用三個音訊過濾器:pan --> dynaudnorm --> Volume。

問題是中間的過濾器(dynaudnorm)被忽略了。

為了測試,我嘗試重新排列過濾器,無論哪個過濾器位於中間,它都會被忽略。我還嘗試了“標籤”語法 - 即 [in]filter=args[out] - 並且出現了同樣的問題:中間過濾器被跳過。

我缺什麼?

ffmpeg -i "infile.mkv" -c:a mp3 -filter_complex "pan=stereo|FL=0.5*FC+0.707*FL+0.707*BL+0.5*LFE|FR=0.5*FC+0.707*FR+0.707*BR+0.5*LFE[b], dynaudnorm=f=75:g=7; volume=0.5[2smash]" -map 0 -map [2smash] -metadata:s:a:[2smash] title="Low Dyn Range" -c:v copy "filtertest.mkv"

答案1

對於應用於單一音訊串流的一系列濾鏡,請使用簡單的濾鏡鏈:

ffmpeg -i "infile.mkv" -filter:a:1 "pan=stereo|FL=0.5*FC+0.707*FL+0.707*BL+0.5*LFE|FR=0.5*FC+0.707*FR+0.707*BR+0.5*LFE, dynaudnorm=f=75:g=7,volume=0.5" -map 0 -map 0:a:0 -c:v copy -c:a mp3 -metadata:s:a:1 title="Low Dyn Range" "filtertest.mkv"

我假設您的輸入有一個音訊串流。

相關內容