Разорванные mp3-файлы показывают неправильную длину дорожки

13

Я видел эту проблему как при использовании Banshee, так и Sound Juicer. Я использую Ubuntu 12.04 на Thinkpad 14 ". Я не уверен насчет марки моего внутреннего привода CD, но был бы рад предоставить вам эту информацию, если кто-то скажет мне, как это сделать. У меня не было доступа к внешний дисковод, чтобы я мог определить, в чем проблема - мой внутренний дисковод.

В любом случае, проблема: файлы mp3, которые я скопировал, показывают неправильную длину. Например, когда я разорвал Peacebone от Animal Collective, длина которого составляет 5:13, файл длился 25 минут, согласно моему телефону и банши. Игроки переходят к следующей песне, прежде чем играть все 25 минут. Тем не менее, мне неудобно не знать, слушаю ли я всю песню или реальную длину песни.

На этот раз проблема исчезла при втором рипе, хотя иногда длина файлов по-прежнему на несколько секунд больше, чем должна быть.

Heihej
источник
После небольшого тестирования кажется, что сама музыка имеет правильную длину: файлы, длина которых кажется слишком короткой, продолжают воспроизводиться после истечения отображаемого времени, а файлы, которые являются слишком длинными, переходят к следующей песне, когда они ' должен. Тем не менее, проблема все еще раздражает и заставляет меня беспокоиться о качестве разорванной музыки.
Хейхей
2
Длины дорожек часто рассчитываются из длины файла и средней ожидаемой пропускной способности mp3-данных. Некоторые игроки постоянно пересчитывают продолжительность, некоторые нет. Некоторые сохраняют длину трека в базе данных, как только она выяснена, некоторые не ... Только когда трек полностью обработан, точная продолжительность известна.
Джиппи
Эта проблема присутствует не во всех моих песнях, поэтому трудно поверить, что она вызвана тем, как проигрыватель читает файлы. Это все равно будет означать, что с файлом что-то не так.
Хейхей

Ответы:

12

Начиная с Ubuntu 12.04, когда вы копируете компакт-диски в Ubuntu с помощью Rhythmbox или Sound Juicer, настройки по умолчанию будут создавать VBR MP3, но заголовки VBR не добавляются, поэтому практически любая программа, с которой вы открываете MP3, покажет неверную длину дорожки. , включая музыкальный проигрыватель по умолчанию (Rhythmbox) и файловый менеджер по умолчанию (Nautilus).

Самое простое решение - добавить заголовок VBR в MP3 после их копирования:

  1. Установите vbrfix, выполнив эту команду в терминале:

    sudo apt-get install vbrfix
    
  2. Теперь CD в папку, где находятся mp3-файлы, которые вам нужно исправить:

    cd /path/to/mp3s
    
  3. Запустите эту команду, чтобы добавить заголовки VBR в mp3:

    find . -type f -iname '*.mp3' -exec vbrfix {} {} \;
    
  4. Vbrfix, кажется, оставляет после себя несколько временных файлов, поэтому очистите их:

    rm vbrfix.log vbrfix.tmp
    

Альтернативное решение состоит в том, чтобы изменить предустановку по умолчанию так, чтобы CD копировались как CBR вместо VBR MP3. Здесь есть довольно хорошее объяснение: /ubuntu//a/154933/18665

Профиль, подобный этому, должен помочь (измените скорость передачи данных по желанию):

[mp3-cbr]
name=lamemp3enc
target=bitrate
bitrate=192
cbr=true
encoding-engine-quality=high
mono=false

Как и в случае с любой ошибкой, если вы столкнулись с этой проблемой, я настоятельно рекомендую вам перейти к отчету об ошибке и отметить, что он затрагивает вас (в левом верхнем углу), чтобы привлечь к нему больше внимания. Отчет об ошибке здесь: Rhythmbox не добавляет заголовки VBR при копировании CD в MP3

bmaupin
источник
1
У меня работал vbrfix. Затем я повторно проверил библиотеку банши, чтобы получить изменения.
Исаакль
4

По моему опыту эта проблема возникает, когда теги ID3 являются недействительными. Вы можете попытаться удалить все теги ID3 из указанных файлов, а затем переписать их. Я рекомендую для этого мутаген , это библиотека манипулирования метаданными с некоторыми полезными утилитами.

Сначала установите мутаген

sudo apt-get install python-mutagen

Теперь перейдите в папку с каким-нибудь проблемным MP3-файлом и запустите на нем mid3v2:

mid3v2 --delete-all your_file.mp3

Это удалит все метаданные из данного файла, что означает отсутствие заголовка, исполнителя, обложки альбома, но файл должен отображать правильную длину.

Вы можете заполнить метаданные, используя, например, Picard , который доступен в Ubuntu как picardпакет.

Изменить: Есть также приложение MP3 Diags, которое должно быть в состоянии исправить заголовки VBR и некоторые другие проблемы с файлами MP3. Он доступен в Ubuntu как mp3diags(или из Ubuntu Software Center)

Другое, более конкретное решение - VBRFix - консольная версия (без Qt GUI) доступна в vbrfixпакете. Если вы хотите GUI, вам, вероятно, придется скомпилировать его самостоятельно.

jnv
источник
Спасибо за ответ, я не знал, что длина трека помечена. Пикард сказал мне, что тег был верным в Peacebone, но в окне сведений он дал мне 25-минутное значение. Я удалил все теги из файла и по какой-то причине не могу переписать теги с помощью Picard. Знаете ли вы, как это должно быть сделано?
Хейхей
Picard работает немного иначе, чем другие редакторы тегов, вы просто подаете на него дорожки, чтобы пометить их, и сопоставьте их с альбомом из базы данных MusicBrainz. См. Руководство с инструкциями : musicbrainz.org/doc/How_to_Tag_Files_With_Picard Если этот тип редактирования вам не подходит (или вы не можете найти альбом в базе данных MusicBrainz), попробуйте EasyTAG ( easytagпакет)
jnv
С другой стороны, может быть более простое решение с MP3 Diags - mp3diags.sourceforge.net Я отредактировал свой ответ, посмотрите.
jnv
Повторная пометка файлов, похоже, не помогает. Я попытался восстановить данные VBR с помощью mp3diags, который, как утверждали, исправлял проблемы с отображением неправильных длительностей. Это действительно изменило продолжительность, отображаемую на моих устройствах, в лучшую сторону, но они все еще не верны (Peacebone теперь имеет длину 6:53, а должна быть 5:13).
Хейхей
Есть также vbrfixпакет, который является консольной версией вышеупомянутого VBRFix. В противном случае вы можете попытаться снова скопировать эти файлы; Я могу только рекомендовать использовать FLAC, Ogg Vorbis или AAC (если ваш телефон может воспроизводить все это), но вы также можете скопировать компакт-диск в виде CBR или ABR MP3, который менее подвержен неверной информации о длине. Копирование в WAV (или FLAC) и перекодирование в VBR MP3 также может быть вариантом. Или просто попробуйте еще раз с оригинальными настройками, возможно, у кодера просто был плохой день.
jnv