Як "перекодувати" mp3 файли


10

У мене є велика кількість файлів mp3, які я створив за допомогою audiohijack pro на mac. Тепер у мене більше немає Mac і використовую їх у моїх системах Linux. На жаль, програма, яку я використовую (ritbox) для прослуховування цих файлів, не може зрозуміти, скільки тривають файли. Ці файли тривають до 5 годин, і коли програма не може зрозуміти, як довго це тривати, я не можу прокрутити файл. Будь-які програми unix / linux, які можуть перекодувати ці файли? Я не знаю достатньо ні звуку на Linux, ні формату mp3-файлу, щоб знати, що буде брати участь у цьому.

Найкраще, Барт

Відповіді:


6

Це не відповідає на запитання у вашому заголовку, але, можливо, є можливість виправити файли без перекодування. Наприклад, одна поширена проблема з неправильною довжиною файлів MP3 - це файли зі змінною швидкістю передачі бітів, які не належним чином позначені як такі, що мають змінну швидкість передачі бітів (і такі програми, як ритмбокс, трактуючи їх, як якщо б вони були постійними). Інструмент vbrfix може виправити ці файли. Ще один корисний інструмент для перевірки MP3-файлу - це mp3check , у нього також є такі варіанти, --fix-headersякі можуть відновити файли (спочатку зробіть резервні копії файлів!).


Приємно. Це здається дуже корисним інструментом.
Стівен D

1
"для i in 1 2 3 4 5; do vbrfix -always -log EndersGame $ i.mp3 EG $ i.mp3; done" була командою, яку я використовував для збереження на деяких введеннях.
kasterma

я дійсно не розумію, чому посилання на шалену програму, розроблену на Windows, і лише пізніше перенесена на Linux (отже, навіть не сценарій, tsk tsk) зробила це прийнятим відповіддю! (так я відповів на відповідь)
ixtmixilix

@ixtmixilix - Для vbrfix atleast, двійкові файли, які вони компілюють за посиланням, призначені для windowz, як того, що багато хто з ppl на жаль використовують. Версії для Linux доступні в іншому місці ( а також, здається, включені до Ubuntu 12.04+ ) - ви також можете спробувати використовувати наявний вихідний код . Посилання mp3check хоч і мертве ....
Вільф

OK vbrfix прекрасно працює - коли я використовую Fedora, я завантажував джерела для версії Ubuntu , використовував її dpkg-source -x vbrfix_0.24-7.dscдля витягування, застосування патчів тощо ./configure --prefix='/home/wilf/Downloads/fsbOPEN/vbrfix/makeinstall', makeа також make installдля створення автономного збудження, яке я міг би використовувати у своїх файлах. Мені потрібно було розібрати -alwaysваріант, щоб він працював.
Вільф

8

Хоча я не знаю конкретно, чи потрібні будуть додаткові варіанти, щоб виправити проблему, яку ви згадуєте, ffmpeg є

повне кросплатформене рішення для запису, перетворення та передавання аудіо та відео.

Це швейцарський армійський ніж для аудіо та відео. Повторне кодування файлів має бути настільки ж простим

$ ffmpeg -i oldfile.mp3 newfile.mp3

ffmpeg знаходиться у сховищах більшості основних дистрибутивів або їх можна завантажити з їх веб-сайту.


це здається мені більш здоровою відповіддю. Очевидно, що в ОП є багато файлів і, ймовірно, знає, як відкрити командний рядок, хоча це хвилюється в наші дні, і насправді ця відповідь насправді відповіла на питання, яке я збирався задати. тож я підтримав це. Ви здобуваєте гарну карту SE, @Steven D, хоча ваша відповідь не отримала голосів, поки я не побачив її.
ixtmixilix

1
У мене є подібне питання, і я вже пробував ffmpeg, і він здебільшого працював: D, але є кілька файлів, на яких він вийшов із посиланням на Invalid data found when processing input....
Wilf

3

Можна це зробити lameі перенести теги id3 (знайдено тут ).

find . -type f -iname "*.mp3" | while read file 
do
    mv "$file" "${file}.old" && \
    lame --mp3input -q 0 -b 192 --resample 44.1 "${file}.old" "$file" && \
    id3cp "${file}.old" "$file"
done

Дивіться більше сценаріїв конверсії, які я написав тут: https://github.com/sid-the-sloth/conversion-scripts


0

Спробуйте LAME, я повинен попередити вас, що перекодування може (ймовірно) призвести до втрати якості.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.