无需更改目录即可批量将 wma 转换为 mp3

无需更改目录即可批量将 wma 转换为 mp3

我以前使用 Windows Media Player 翻录 CD 时,有数千首 WMA 格式的音乐曲目。现在我在工作时在 Linux 桌面上播放它们时遇到了问题。

有没有一个好的解决方案(适用于 Windows 或 Linux)可以将所有 WMA 转换为 MP3,同时将它们保留在与以前相同的目录中?我尝试使用 iTunes 来执行此操作,但它开始创建新目录来存储所有转换后的曲目,而这并不是我想要的。

答案1

如果您有数千个文件,那么这将需要很长时间。

find . -iname "*.wma" -execdir ffmpeg -i {} -ab 192k -map_metadata 0:s:0 {}.mp3 \;

(旧版本的 ffmpeg 可能需要,-map_meta_data而不是。)-map_metadata0:00:s:0

(新版本的 ffmpeg 可以使用-map_metadata 0 -movflags use_metadata_tags代替-map_metadata 0:s:0

我在 Ubuntu 16.04 上测试了这一点。如果你还没有安装,你需要安装软件包ffmpeglibavcodec-extra-52

从包含所有 WMA 文件的父目录启动此命令。它将在所有子目录中搜索任何带有.wma扩展名的文件并尝试将其转换为 MP3。如果源文件名为Awesome Song.wma,则新文件将为Awesome Song.wma.mp3,并将与源文件位于同一目录中。

如果您通常使用高于或低于 192k 的比特率,请将标志更改-ab 192k为您想要的任何值。

答案2

这个添加的标志将告诉 ffmpeg 尝试保留 ID3 标签:

find . -iname "*.wma" -execdir ffmpeg -i {} -ab 192k **-map_metadata 0:0** {}.mp3 \;

答案3

此程序可查找 WMA 文件,将其转换为 MP3,并使用干净的扩展名.mp3而不是 ,然后.wma.mp3删除旧文件。此程序已在 Fedora 19 上进行了测试,可在按 排列的 150 GB 文件中搜索 WMA 文件artist/album/<disk number>/file

find . -iname "*.wma" -execdir bash -c 'NAME="{}" && ffmpeg -y -i "$NAME" -ab 192k "${NAME/.wma/.mp3}" && rm "$NAME"' \;

答案4

免费 Mp3 Wma 转换器 1.95一定能完成你的任务。

相关内容