gpt4 book ai didi

ffmpeg - 如何使用 ffmpeg 对多个输出视频的音频进行一次编码

转载 作者:行者123 更新时间:2023-12-04 23:04:58 30 4
gpt4 key购买 nike

我想创建几个具有不同分辨率但音频相同的输出视频。 Afaik 音频编码是一个输出选项。

ffmpeg \
-hwaccel qsv -c:v h264_qsv \
-i <input> \
-filter_complex '[0:a]aformat=channel_layouts=stereo,aresample=async=1,asplit=3[a1][a2][a3];[0:v]vpp_qsv=detail=50:framerate=25,split=3[v1][v2][v3];[v2]vpp_qsv=width=1280[v2o];[v3]vpp_qsv=width=800[v3o]' \
-c:v h264_qsv -c:a aac -b:a 96k -map '[v1]' -map '[a1]' <output> \
-c:v h264_qsv -c:a aac -b:a 96k -map '[v2o]' -map '[a2]' <output> \
-c:v h264_qsv -c:a aac -b:a 96k -map '[v3o]' -map '[a3]' <output>
上面我有两个冗余的音频编码。
如何只对音频进行一次编码并将其复制用于不同的输出?

最佳答案

使用 tee muxer :

ffmpeg \
-hwaccel qsv -c:v h264_qsv -i <input> \
-filter_complex '[0:a]aformat=channel_layouts=stereo,aresample=async=1[a];[0:v]vpp_qsv=detail=50:framerate=25,split=3[v1][v2][v3];[v2]vpp_qsv=width=1280[v2o];[v3]vpp_qsv=width=800[v3o]' \
-map '[v1]' -map '[v2o]' -map '[v3o]' -map '[a]' \
-c:v h264_qsv -c:a aac -b:a 96k -f tee -flags +global_header \
"[select=\'v:0,a\']output.mkv|[select=\'v:1,a\':f=flv:onfail=ignore]rtmp://server0/app/instance/playpath|[select=\'v:2,a\':movflags=+faststart]output.mp4"

关于ffmpeg - 如何使用 ffmpeg 对多个输出视频的音频进行一次编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64526234/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com