在 Windows 中,如何使用 ffmpeg 将 m4a 文件批量转换为 mp3?我在命令行中使用以下行:
FOR I in (*.m4a) DO ffmpeg -i %I -codec:v copy -codec:a libmp3lame -q:a 2 "mp3\%I"
但是我收到错误“目前不需要我”。
答案1
我发现 Powershell 对于此类代码更加清晰,而且您无论如何都在使用 Windows,因此 Powershell 内置于您的操作系统中。
例如,我整理了我的相册artist\album\title.mp3
这是我刚刚编写的用于解决同一问题的脚本的略微通用的版本:
#assume the current directory is my music directory. So like `cd ~/music` or whatever.
$ffmpegPath = 'c:\tools\ffmpeg\bin\ffmpeg.exe' # or you can just call ffmpeg.exe directly if it's in the $Env:PATH
ls *.m4a -Recurse | foreach-object {
$artist = $_.directory.parent.name
$album = $_.directory.name
$song = $_.baseName
$outputDir = "./output/$artist/$album"
mkdir $outputDir -Force | Out-Null #use -Force to prevent error if it already exists.
& $ffmpegPath -i $_ -codec:v copy -codec:a libmp3lame -q:a 2 "$outputDir/$song.mp3"
}