Конвертирование wma в mp3 без изменения каталога
У меня есть тысячи музыкальных треков в формате WMA с тех пор, как я использовал Windows Media Player для копирования компакт-дисков. Теперь у меня проблемы с воспроизведением их на рабочем столе Linux на работе.
Есть ли хорошее решение (для Windows или Linux) для преобразования всех WMA в MP3, оставляя их в тех же каталогах, что и раньше? Я попытался использовать iTunes, но он начал создавать новые каталоги для хранения всех преобразованных треков, которые мне не нужны.
5 ответов
If you have thousands of files, then this will take forever.
find . -iname "*.wma" -execdir ffmpeg -i {} -ab 192k -map_metadata 0:s:0 {}.mp3 \;
(Older versions of ffmpeg may need -map_meta_data
вместо -map_metadata
, 0:0
вместо 0:s:0
.)
I tested this on Ubuntu 16.04. If you haven't already, you need to install the packages ffmpeg
а также libavcodec-extra-52
,
Start this command from the parent directory that contains all your WMA files. It will search through all subdirectories for any file with a .wma
расширение и попытка конвертировать его в MP3. Если исходный файл назван Awesome Song.wma
, новый файл будет Awesome Song.wma.mp3
и будет в том же каталоге, что и исходный файл.
Если вы обычно используете битрейт выше или ниже 192k, измените -ab 192k
флаг, что вы хотите.
Этот находит файлы WMA, преобразует их в MP3 с чистым расширением имени .mp3
вместо .wma.mp3
и удаляет старый файл. Это было проверено для работы в Fedora 19 при поиске файлов WMA по 150 ГБ файлам, которые упорядочены artist/album/<disk number>/file
,
find . -iname "*.wma" -execdir bash -c 'NAME="{}" && ffmpeg -y -i "$NAME" -ab 192k "${NAME/.wma/.mp3}" && rm "$NAME"' \;
Этот добавленный флаг сообщит ffmpeg попытаться сохранить теги ID3:
find . -iname "*.wma" -execdir ffmpeg -i {} -ab 192k **-map_metadata 0:0** {}.mp3 \;
Бесплатный Mp3 Wma Converter 1.95, безусловно, сделает вашу работу.
Я никогда не пробовал эту программу, но она выглядит многообещающей и бесплатной.
Вот пример сценария для QNAP NAS, который их все преобразует:
find . -iname "*.wma" -exec bash -c 'NAME="{}" && ffmpeg -y -i "$NAME" -ab 192k "${NAME/.wma/.mp3}" && rm "$NAME"' \;
Все теги, включая встроенную обложку в формате png, сохраняются.