使用 ffmpeg 批量转换 *.avi 文件

Dar*_*ius 15 windows ffmpeg conversion batch-file

我正在尝试使用 ffmpeg 批量转换 20 多个 .avi 文件。

我有以下内容

@echo off.

for file in *.avi
do
   ffmpeg -i "$file" -s 640x480 -vcodec msmpeg4v2 "'basename "$file" .avi'.mpg';
done
Run Code Online (Sandbox Code Playgroud)

在我的 .bat 文件中,但它不起作用。我怎样才能让它在 Windows 操作系统下工作。哦,是的,所有文件都在同一个文件夹中。

我得到的错误信息:

此时文件意外

Bre*_*ett 29

您的批处理文件的格式不适合 Windows bat 脚本。相反,您的脚本看起来像是为 Linux 设计的。您需要更改脚本以使用Windows Shell 支持的for 循环

下面是如何使用 windows for 循环完成此任务的示例。只需将以下行放入批处理文件中,并将脚本移动到与 avi 文件相同的目录,然后运行它。

for %%A IN (*.avi) DO ffmpeg -i "%%A" "%%A.mpg"
Run Code Online (Sandbox Code Playgroud)