我想使用FFmpeg将我的音乐库中的所有.flac文件转换为.mp3文件,同时保留原始文件的元数据和目录结构。到目前为止,我已经让所有内容正常运作,除了保留目录结构。
到目前为止,我已经完成了以下工作:
我觉得我的问题来源于将FFmpeg输出设为
批处理文件是通过命令行执行的
或者,有没有一种方法可以在源文件所在目录中将.flac转换为.mp3,然后删除.flac?
到目前为止,我已经完成了以下工作:
@echo off
rem Copies the original directory structure from F:\Music to D:\Music
xcopy /T %1 %2
rem Recursively converts files with .flac extension from F:\Music to .mp3 in D:\Music
for /R %1 %%i in (*.flac) do (
echo Currently converting "%%~nxi"
ffmpeg -v quiet -i "%%i" -q:a 0 -map_metadata 0 -id3v2_version 3 -write_id3v1 1 "%2\%%~ni.mp3"
)
echo Completed.
pause
我觉得我的问题来源于将FFmpeg输出设为
"%2\%%~ni.mp3"
,但是我无法让它保留原始目录结构。我已经尝试了dpni作为输出选项,但是转换后不正确。批处理文件是通过命令行执行的
convert F:\Music D:\Music
原始目录中的所有音乐都具有F:\Music\Artist Name\Album Name\Song.flac结构,我希望它最终变成D:\Music\Artist Name\Album Name\Song.mp3。或者,有没有一种方法可以在源文件所在目录中将.flac转换为.mp3,然后删除.flac?
"%~d2%%~pni.mp3"
吗? - Gyan