FFMPEG 编码视频 + MXF 中的 2 个独立单声道音轨

FFMPEG 编码视频 + MXF 中的 2 个独立单声道音轨

转换带有 1 个视频轨道和 1 个立体声音轨的视频时遇到问题。

我想将其转换为 XDCAM EX35 + 2 个单独的单声道音轨。我一直收到此错误。它似乎一直试图将视频音轨放在音频之后。

流映射:流 #0:1 (pcm_s16le) -> 通道分割 (图 0) 通道分割:FL (图 0) -> 流 #0:0 (pcm_s16le) 通道分割:FR (图 0) -> 流 #0:1 (pcm_s16le) 流 #0:0 -> #0:2 (prores (原生) -> mpeg2video (原生)) 无法写入输出文件 #0 的标头 (编解码器参数不正确?):发生错误编号 -1

这是我正在使用的命令行

-i "input.mov" -map 0:v -pix_fmt yuv420p -vcodec mpeg2video -threads 0  -flags +ildct+ilme -top 1 -dc 10 -qmin 1 -lmin "1*QP2LAMBDA" -vtag xdv3 -b:v 35000k -minrate 20000k -maxrate 35000k -bufsize 36408333 -g 15 -bf 2 -aspect 16:9 -r 30000/1001 -async 2 -map 0:a -acodec pcm_s16le -ar 48000 -map_channel 0.1.0 -map_channel 0.1.1 -filter_complex channelsplit  -f mxf -y "output.MXF"

知道正确的命令行是什么吗?谢谢

答案1

使用-map_channel通道分割音频过滤器,但不能同时使用两者,并正确映射流:

ffmpeg -i "input.mov" -pix_fmt yuv420p -vcodec mpeg2video -threads 0  -flags +ildct+ilme -top 1 -dc 10 -qmin 1 -lmin "1*QP2LAMBDA" -vtag xdv3 -b:v 35000k -minrate 20000k -maxrate 35000k -bufsize 36408333 -g 15 -bf 2 -aspect 16:9 -r 30000/1001 -acodec pcm_s16le -ar 48000 -filter_complex "[0:a]channelsplit[l][r]" -map 0:v -map "[l]" -map "[r]" -y "output.MXF"

FFmpeg Wiki:音频通道操作 - 立体声 → 2 × 单声道文件查看更多示例。

相关内容