使用Powershell在目录内的所有文件上自动执行ffmpeg命令



我想使用Powershell自动化ffmpeg,这样我就可以改变我的E:我的AVI文件中的容器到MKV并输出到E:My MKV文件使用

下面的ffmpeg命令
ffmpeg -i test_1.avi -map 0 -map -0:s? -c:v copy -c:a ac3 -ac 2 -b:a 640k "E:My MKV filestest_1.mkv"

要转换不止一个硬编码文件,您需要遍历源文件夹E:My AVI Files

中的文件。
$destination = 'E:My MKV Files'    # the path for output
Get-ChildItem -Path 'E:My AVI Files' -Filter '*.avi' -File | ForEach-Object {
$target = Join-Path -Path $destination -ChildPath ([System.IO.Path]::ChangeExtension($_.Name, '.mkv'))
ffmpeg -i "$($_.FullName)" -map 0 -map -0:s? -c:v copy -c:a ac3 -ac 2 -b:a 640k "$target"
}

请注意,我没有检查ffmpeg命令本身是否正确

最新更新