FFMPEG - 批量转换子文件夹

use*_*403 6 windows ffmpeg batch-file

我正在尝试设置Windows批处理文件以使用FFMPEG转换大量MP4文件.多个子文件夹中有许多文件,因此我需要脚本在每个子文件夹中的每个文件上执行.

我担心我没有太多使用批处理文件的经验但是从我的研究中我得到了以下命令文本:

FOR %%i in (*.mp4) /R DO (ffmpeg32 -i "%%~ni.mp4" -map 0:0 -map 0:1 -map 0:1    -c:v copy   -c:a:0 aac -b:a 128k -ac 2 -strict -2 -cutoff 15000  -c:a:1 copy "%~ni&(2).mp4")
Run Code Online (Sandbox Code Playgroud)

该脚本基本上需要将AAC音频流添加到现有MP4文件中,因此我需要通过在文件名末尾添加(2)来更改输出名称.

我已经单独测试了ffmpeg命令,很高兴它能正常工作 - 我只需要获得正确的批处理命令.

提前感谢任何指针!

干杯

End*_*oro 7

试试这个:

@echo off & setlocal
FOR /r %%i in (*.mp4) DO ffmpeg32 -i "%%~fi" -map 0:0 -map 0:1 -map 0:1 -c:v copy -c:a:0 aac -b:a 128k -ac 2 -strict -2 -cutoff 15000 -c:a:1 copy "%%~dpni(2)%%~xi"
Run Code Online (Sandbox Code Playgroud)