如何通过FFmpeg和批处理脚本转换每个目录中的音频。

时间:2013-06-16 08:32:40

标签: batch-file ffmpeg

经过艰苦的学习,我创建了一个batch文件:

for /R  D:\storytelling\MusicFiles %%a in (*.3gp) do ffmpeg -i %%a -y %%~na.mp3

然而,它无法达到我的目标,因为这里的情况有点不同:

这是我的目录结构: enter image description here

我在某个路径下有几个目录:D:\storytelling\MusicFiles\并且新目录可以由另一个应用程序创建。我将ffmpeg.exe文件放在此路径中:D:\storytelling\MusicFiles\
此外,在每个目录中,我有数百个.3gp个文件,我的目标是将它们转换为.mp3所在的目录used
但是这个剧本

for /R  D:\storytelling\MusicFiles %%a in (*.3gp) do ffmpeg -i %%a -y %%~na.mp3

会将每个目录中的每个.3gp文件转换为路径:D:\storytelling\MusicFiles\

导致:enter image description here
但是我希望publicUser_XXX.mp3文件仍在目录publicUser中,转换后所有文件都保留在原始目录中。唯一的变化是我获得了一个不同媒体格式的媒体副本,如:enter image description here

请帮助并给我一些建议。

1 个答案:

答案 0 :(得分:2)

试试这个:

@echo off
for /R  D:\storytelling\MusicFiles %%a in (*.3gp) do ffmpeg -i "%%a" -y "%%~dpna.mp3"