Foobar 2000 транскодер

Список разделов Другое Архив

Описание: Архив старых тем.

Сообщение #1 sergeich » 16.12.2006, 18:48

При конвертации MP3 в OGG в Foobar 2000 все тэги сохраняются и записываются в новый файл нормально. Но при проигрывании файлов в iRiver, тэги не читаются. При исследовании файлов, выяснилось, что конвертер Foobar записывает названия тэгов маленькими буквами, например:

title=Tides Of Change
artist=Carol Albert
genre=New Age

После обновления тэгов в Winamp или в том же Foobar в редакторе тэгов, получаем следующее:

TITLE=Tides Of Change
ARTIST=Carol Albert
GENRE=New Age

и после этого все начинает читаться в iRiver.
Причем все программы пишут названия тэгов большими буквами, в том числе и Foobar, но когда конвертируешь файлы, конвертер Foobar записывает маленькими буквами Sad Для компьютерных программ это не имеет значения, а для iRiver видимо имеет. Может кто-нибудь знает, как можно заставить Foobar Converter записывать названия тэгов как положено?
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #2 Alex Jade » 17.12.2006, 03:56

Проверил блокнотом (Notepad) правильность записи тегов. ЧАСТЬ тегов записана в нижнем регистре! Но это те теги, которые содержат служебную информацию: Replay Gain, Rating, Play Time. Остальные теги записаны правильно.
P.S. по стандарту необходимо записывать названия тегов в ВЕРХНЕМ регистре
Последний раз редактировалось Sp1ke 17.12.2006, 03:58, всего редактировалось 1 раз.
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #3 sergeich » 17.12.2006, 04:03

Если можно, поподробнее, как Вы этого добились? С помощью конвертера и OGGENC.exe? И Вы конвертировали MP3 в OGG?
Последний раз редактировалось sergeich 17.12.2006, 04:05, всего редактировалось 1 раз.
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #4 Alex Jade » 17.12.2006, 04:11

1. Все *.ogg конвертировались из *.wav с помощью oggdropXPd. *.wav получены разными способами. С Audio CD с помощью EAC. Из MP3 фубаровским конвертером или lamedropXPd.
2. Все теги записаны с помощью Foobar2000.
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #5 sergeich » 17.12.2006, 04:21

Я имел ввиду тот случай, когда выбирается (в плэйлисте Foobar) файл MP3, нажимается правая кнопка мыши, в меню выбирается Convert->Convert To..Ogg Vorbis Происходит конвертирование файла в OGG с помощью OggEnc.exe При этом все тэги берутся из MP3 файла и подставляютя в созданный OGG файл. Вот тогда и обнаруживается, что названия тэгов записаны в нижнем регистре. Причем, если потом отредактировать их в Foobar-овском редакторе, все становится ОК. То есть редактор тэгов Foobar работает нормально, проблема только когда он автоматически при конвертировании подставляет тэги из исходного файла MP3 в новый OGG.
Последний раз редактировалось sergeich 17.12.2006, 04:26, всего редактировалось 1 раз.
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #6 Alex Jade » 17.12.2006, 04:34

Сконвертил mp3>ogg с помощью oggenc. Теги оказались записанными *ужас* некорректно!
Появился другой вопрос.
А Фубар ли записывает теги в файл? Или это делает foo_converter. %)
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #7 sergeich » 17.12.2006, 04:39

Мое исследование показало, что тэги в файл записывает foo_input_std.dll Я даже пробовал Hex редактором править в нем названия тэгов, которые записаны маленькими буквами, но это не помогло :-((
Причем что интересно-если конвертировать в OGG из OGG файла с нормальными тзгами, конвертер записывает их тоже нормально. А вот если из MP3-проблема. В общем, очень странно :-))
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #8 Alex Jade » 17.12.2006, 04:47

sergeich:Мое исследование показало, что тэги в файл записывает foo_input_std.dll Я даже пробовал Hex редактором править в нем названия тэгов, которые записаны маленькими буквами, но это не помогло :-(
Как исследование проходило? ИМХО foo_input_std.dll в процессе не участвует. *хз*
sergeich:Причем что интересно-если конвертировать в OGG из OGG файла с нормальными тзгами, конвертер записывает их нормально.
Теги просто переписываются из файла в файл. ошибки быть и не должно.
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #9 sergeich » 17.12.2006, 04:55

Исследование просто. Я открыл окно консоли в Foobar и смотрел что происходит. Среди сообщений было такое, когда файл был отконвертирован и дошло время до записи тэгов:

Ogg: rewriting stream

Я нашел это сообщение только в файле foo_input_std.dll Дальше, если посмотреть в редакторе этот файл видно, что он и записывает тэги. Причем в нем прописаны типы файлов, в которые записывать тэги. Среди них и OGG. Если редактором изменить тип OGG на какой-нибудь другой, например, GGG :-) тэги вообще не будут записаны в созданный OGG.
Последний раз редактировалось sergeich 17.12.2006, 05:00, всего редактировалось 1 раз.
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #10 Alex Jade » 17.12.2006, 05:11

Получается, что foo_input_std записывает теги. *поклон*
Тогда надо выяснить сам ли он формирует названия тегов или получает их от foo_converter. *хз*
Если второе, то ошибка всё же в плагине foo_converter. B)
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #11 sergeich » 17.12.2006, 05:20

Да, вот это вопрос. Если бы был плагин, аналогичный foo_converter, можно было бы выяснить :-) Я пробовал в старой версии 0.8.3 через плагин diskwriter конвертировать-тоже самое, только в названии тэгов первая буква большая, остальные тоже маленькие. Например, Artist. Но все равно это неправильно и мой iRiver его не понимает %)
Последний раз редактировалось sergeich 17.12.2006, 05:26, всего редактировалось 1 раз.
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #12 Alex Jade » 17.12.2006, 05:45

Я задал этот вопрос на hydrogenaudio.org посмотрим что там ответят. *ну*
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #13 sergeich » 17.12.2006, 16:29

OK! Может что-нибудь получится в итоге! :-)
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #14 sergeich » 17.12.2006, 20:42

Исследование продолжается :-)
Все-таки виноват файл foo_input_std.dll и вот почему. Я пропатчил файл foo_input_std.dll от версии 0.8.3, прописав в нем названия тэгов большими буквами и после этого стало записываться в файл как положено. К сожалению, не могу найти эти строки в файле foo_input_std.dll от версии 0.9.4.x, видимо в нем по-другому как-то реализована запись тэгов :-(
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #15 Alex Jade » 17.12.2006, 20:51

sergeich:Я пропатчил файл foo_input_std.dll от версии 0.8.3, прописав в нем названия тэгов большими буквами и после этого стало записываться в файл как положено.
:o это что ж там было пропатчено :o . В .ogg'ах же нет ограничения на названия тегов.
sergeich:К сожалению, не могу найти эти строки в файле foo_input_std.dll от версии 0.9.4.x, видимо в нем по-другому как-то реализована запись тэгов :-(
Конечно она реализована иначе. Там должна использоваться функция которая переводит названия тегов в верхний регистр. Названия тегов же заранее неизвестны.
Alex 'AJ' Jade:Я задал этот вопрос на hydrogenaudio.org посмотрим что там ответят. *ну*
ответа пока не получил
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #16 sergeich » 17.12.2006, 20:57

В версии 0.8.3 всевозможные названия тэгов прописаны в foo_input_std. Видимо, он проверяет наличие информации в соответствующем тэге и тогда записывает СВОЕ название тэга и инфу из исходного файла. Если интересно, могу прислать патченный foo_input_std, но он от версии 0.8.3
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #17 Alex Jade » 17.12.2006, 21:10

sergeich:В версии 0.8.3 всевозможные названия тэгов прописаны в foo_input_std.
Да но их количество ооооочень большое (наверное присутствуют только самые используемые)
sergeich:Если интересно, могу прислать патченный foo_input_std, но он от версии 0.8.3
Я с этой версии начинал B). Интересно будет сравнить свой foo_input_std с пропатченым.
З.Ы. Посмотрел свой foo_input_std (от версии 0.8.3) с помощью блокнота. Нашёл там названия тегов. Но это наверное из диалогов. Там же есть весь список жанров для MP3'шек :-D
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #18 sergeich » 17.12.2006, 21:18

Вот патченный файл: http://ifolder.ru/652620  для версии 0.8.3 (не special edition)
Пропатчил TITLE, ARTIST, ALBUM
Остальные специально оставил для сравнения :-)
Последний раз редактировалось sergeich 17.12.2006, 21:22, всего редактировалось 1 раз.
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #19 Alex Jade » 17.12.2006, 21:38

Сравнил свою версию с пропатченой. В моей дейсивительно написано Title, Artist, Album. Но после изучения названий остальных тегов пришёл к выводу, что это названия для ID3V2@MP3 тегов. Получается, что фубар их и записывает по ошибке в Ogg. Если же редактировать теги с помощью диалога "Properties" то названия тегов записываются с помощью функции $upper() или подобной.
Alex Jade M
Откуда: Мурманск
Репутация: 2
С нами: 18 лет 6 месяцев

Сообщение #20 sergeich » 17.12.2006, 21:45

Насколько я понял, в этом файле несколько секций, записывающих тэги в определенные типы файлов. Так же этот файл отвечает за Rebuild MP3 Stream, Fix Header и т.д. Я отредактировал секцию, которая отвечает за OGG файлы. Кстати, названия тэгов для MP3 и OGG оказались разные...
sergeich
Автор темы
Репутация: 0
С нами: 17 лет 11 месяцев

След.

Вернуться в Архив