ffmpeg:使用单个命令将多个输入文件转码为多个输出文件

Abu*_*kar 7 ffmpeg

我想用一个命令转换三个文件。我使用了以下命令:

-i "C:\fil1.mp4" -i "C:\file2.mp4" -i "C:\file3.mp4" -acodec libmp3lame -ab 32k -ar 22050 -ac 2 -b:v 128k -r 20 -s 176x144 -y file1.mp4 -acodec libmp3lame -ab 32k -ar 22050 -ac 2 -b:v 128k -r 20 -s 176x144 -y file2.mp4 -acodec libmp3lame -ab 32k -ar 22050 -ac 2 -b:v 128k -r 20 -s 176x144 -y file3.mp4

但它会转换名称为fil1.mp4fil2.mp4fil3.mp4的第一个文件,但我希望所有文件都应使用其输出文件名进行转换。

Isa*_*itz 5

使用-map有助于指定哪个输入与哪个输出相匹配。

我使用此代码来转换多个音频文件:

ffmpeg -i infile1 -i infile2 -map 0 outfile1 -map 1 outfile2
Run Code Online (Sandbox Code Playgroud)

还用于-map_metadata指定元数据流:

ffmpeg -i infile1 -i infile2 -map_metadata 0 -map 0 outfile1 -map_metadata 1 -map 1 outfile2
Run Code Online (Sandbox Code Playgroud)


小智 0

也许你可以尝试使用FFMPEG 文档Different parallel outputs中的 as ?