Windows批量转换视频格式:命令行快速处理教程

作者:技术拾光时间:2026-05-23 16:15:07浏览:436

在Windows系统中进行视频格式的批量转换,无需安装体积庞大的图形界面软件。利用系统自带的命令行环境,配合强大的开源工具FFmpeg,即可高效、自动化地完成任务。虽然Windows本身未内置视频转码模块,但通过CMD、PowerShell或批处理脚本调用FFmpeg,可以轻松实现。以下介绍几种方法

在Windows系统中进行视频格式的批量转换,无需安装体积庞大的图形界面软件。利用系统自带的命令行环境,配合强大的开源工具FFmpeg,即可高效、自动化地完成任务。虽然Windows本身未内置视频转码模块,但通过CMD、PowerShell或批处理脚本调用FFmpeg,可以轻松实现。以下介绍几种方法,以适应不同的工作流程。

Windows批量转换视频格式:命令行快速处理教程

使用CMD的for循环处理单层文件夹视频

此方法最为直接,适用于当前目录下视频文件数量不多且格式相对统一的情况。它依赖于Windows原生的命令解释器,兼容从Windows 7到Windows 11的系统。

首先,确保FFmpeg已安装并添加到系统环境变量PATH中。验证方法:打开CMD,输入ffmpeg -version,若显示版本信息则准备就绪。

接着,打开目标视频文件夹,在地址栏输入cmd并回车,即可在当前路径下打开命令提示符窗口。

若需将所有.avi文件转换为通用的.mp4格式(采用H.264视频编码和AAC音频编码),可执行以下命令:

for %f in (*.avi) do ffmpeg -i "%f" -c:v libx264 -c:a aac -strict experimental "%~nf.mp4"

该命令会遍历当前目录下的每个.avi文件并依次转换。对于其他格式(如.mkv或.wmv),可分别执行对应命令。若需更灵活的方案,可参考下方的PowerShell方法。

使用PowerShell通配符一次性处理多种格式

PowerShell在文件筛选和字符串处理上比传统CMD更强大,可一次性匹配多种扩展名,自动过滤非视频文件,避免了为每种格式硬编码命令的局限。

操作步骤:在目标文件夹空白处,按住Shift键的同时点击鼠标右键,在菜单中选择“在此处打开 PowerShell 窗口”。

例如,若要将.mkv、.avi、.wmv、.mov四种常见格式的视频无损转换为MP4封装(仅改变容器,不重新编码),可运行:

Get-ChildItem -Include *.mkv,*.avi,*.wmv,*.mov | ForEach-Object { ffmpeg -i $_.FullName -c copy "$($_.DirectoryName)\$($_.BaseName).mp4" }

其中-c copy参数指示FFmpeg直接流复制,处理速度极快。若目标为统一画质、压缩体积或确保兼容性,则需强制重新编码,可将-c copy替换为类似-c:v libx264 -crf 23 -c:a aac -b:a 128k的参数组合。

转换完成后,新生成的.mp4文件将保存在与原文件相同的目录中,原文件不受影响。

编写批处理文件一键遍历多级目录

当需要处理的视频文件分散在多层子文件夹中时,手动逐级操作效率低下。此时,一个简单的批处理脚本可以递归搜索所有子目录并自动完成转换。

新建一个文本文档,粘贴以下代码:

@echo off
for /r %%i in (*.avi *.mkv *.wmv) do (
echo Processing: %%i
ffmpeg -i "%%i" -c:v libx264 -preset fast -crf 24 -c:a aac -b:a 128k "%%~dpi%%~ni_converted.mp4"
)
pause

保存文件时,将文件名改为batch_convert.bat,编码建议选择ANSI或UTF-8 without BOM,以避免乱码。

双击运行此.bat文件,脚本将自动搜索当前目录及其所有子目录下的.avi、.mkv、.wmv文件并进行转换。为避免覆盖原文件,转换后的新文件名会添加_converted后缀,输出路径与源文件保持一致。

借助任务计划程序实现定时无人值守转换

此方案适用于规律性任务,例如每日需将监控录像或自动录制的会议视频转换为通用格式。利用Windows自带的“任务计划程序”,可设定时间自动执行脚本,实现无人值守处理。

按下Win + R键,输入taskschd.msc,打开任务计划程序。

点击右侧“创建基本任务”,为其命名(如“每日视频格式转换”)。接着设置触发器,选择“每天”并指定具体时间。

在操作步骤中,选择“启动程序”。在“程序/脚本”栏填写cmd.exe,在“参数”栏填入以下命令:

/c cd /d "D:\Recordings" & for %f in (*.mpg) do ffmpeg -i "%f" -c:v libx264 -c:a aac "%~nf.mp4"

此示例意为:每天在指定时间,系统将自动打开CMD,切换到D:\Recordings目录,并将其中所有.mpg文件转换为.mp4格式。设置完成后,系统将在预定时间自动在后台完成处理。