【问题标题】:FFmpeg filter complex audioFFmpeg 过滤复杂音频
【发布时间】:2021-11-25 10:15:26
【问题描述】:

如何将 aac 添加到 filter_complex/split,以便音频仅作为 yadif 编码一次?

ffmpeg -y -hwaccel cuvid -i test.mxf -filter_complex "[0:v]yadif=1,split=2[out1][out2]" -map "[out1]" -s 1920:1080 -c:v h264_nvenc -force_key_frames "expr:gte(t,n_forced*10)" -pix_fmt yuv420p -preset slow -rc vbr_hq -b:v 4.5M -map 0:1 -c:a aac -b:a 192k test2.mp4 -map "[out2]" -s 768:432 -c:v h264_nvenc -force_key_frames "expr:gte(t,n_forced*10)" -pix_fmt yuv420p -preset slow -rc vbr_hq -b:v 1.5M -map 0:1 -c:a aac -b:a 192k test3.mp4

【问题讨论】:

    标签: ffmpeg


    【解决方案1】:

    您的视频被编码两次,这是不可避免的,因为您要输出两个不同的宽度 x 高度。每个输出的音频都相同,因此您可以使用 tee muxer 只对音频进行一次编码并将其放入两个输出中:

    ffmpeg -hwaccel cuvid -i test.mxf -filter_complex "[0:v]yadif=1,format=yuv420p,split=2[vid1][vid2];[vid1]scale=-2:1080[1080];[vid2]scale=-2:432[432]" -map "[1080]" -map "[432]" -map 0:a:0 -c:v h264_nvenc -force_key_frames "expr:gte(t,n_forced*10)" -preset slow -rc vbr_hq -b:v:0 4.5M -b:v:1 1.5M -c:a aac -b:a 192k -f tee "[select=\'v:0,a\']1080.mp4|[select=\'v:1,a\']432.mp4"
    

    【讨论】:

    • 工作得很好,非常感谢!
    猜你喜欢
    • 2020-01-16
    • 1970-01-01
    • 1970-01-01
    • 2018-10-26
    • 2018-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-16
    相关资源
    最近更新 更多