经过艰苦的学习,我创建了一个batch
文件:
for /R D:\storytelling\MusicFiles %%a in (*.3gp) do ffmpeg -i %%a -y %%~na.mp3
然而,它无法达到我的目标,因为这里的情况有点不同:
这是我的目录结构:
我在某个路径下有几个目录: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\
导致:
但是我希望publicUser_XXX.mp3
文件仍在目录publicUser
中,转换后所有文件都保留在原始目录中。唯一的变化是我获得了一个不同媒体格式的媒体副本,如:
请帮助并给我一些建议。
答案 0 :(得分:2)
试试这个:
@echo off
for /R D:\storytelling\MusicFiles %%a in (*.3gp) do ffmpeg -i "%%a" -y "%%~dpna.mp3"