Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: mp3 тэги средствами виндовс  (Прочитано 8423 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Skyf
Гость
« : 11-03-2009 09:38 » 

Западло писать свой парсер и поддерживать версии.
Можно ли с помощью виндовс средств типа MFC DirectShow т др. выдирать информацию из mp3 файлов.
Записан
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #1 : 11-03-2009 10:23 » 

могу поделиться perl скриптом
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 11-03-2009 17:02 » 

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

Теги mp3 не являются чем-то стандартным для MPEG. Здесь использован тот принцип, что все данные MPEG-потока состоят из фреймов и фреймы имеют определенную стартовую комбинацию бит, а эти теги выглядят как простой мусор, помехи или испорченные кадры, которые надо пропустить. Кстати, по этой же причине у тегов нет четкого положения (могут быть в любой части файла, но обычно в начале или в конце) и размер, занимаемый ими, может варьироваться. Например, встречались мне файлы, где в начале 1кБ был заполнен нулями и в начале этого былока были теги.

Из приятного могу сказать, что существует только две версии этих тегов (в вики описывается еще расширенный v1, но на практике он не встречается) и поля в них строго фиксированы по семантике, размеру и положению. Найти теги в фале можно сканированием
О формате почитать можно здесь: http://ru.wikipedia.org/wiki/Mp3_%D1%82%D0%B5%D0%B3%D0%B8
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Skyf
Гость
« Ответ #3 : 16-03-2009 11:15 » 

могу поделиться perl скриптом
Как это мне поможет с MFC???

Цитата
Теги mp3 не являются чем-то стандартным для MPEG

Тэги mp3 являются стандартом для формата mp3 - приэтом текущая версия стандарта уже имеет версию 3.+
Необходимость поддерживать 2. версии в новых приложениях и больше всего напрягает.

Цитата
Кстати, по этой же причине у тегов нет четкого положения
Ошибаешься. У первой версии тегов было вполне четкое положение в начале файла и ограничением длины поля название композиции. У последних версий место тоже вполне четкое - определенное колличество байт от конца файла, плюс неопределенное поле длины названия.
А фреймы и прочее связаное непосредственно с музыкой имеет свои хедеры, в которых приписаны данные о битрейте и длине тех самых фреймов, но они не называются тэгами.

По поводу того, что это не делает проводник, а делает программа - опять ошибка.
Виндовс не дублирует свои интерфейсы, которые прописаны в СОМ стандарте. Если проводник или интернет проводник или медиа-плеер умеет проигрывать что-либо или показывать значение полей, то гарантировано, что этим занимается один и тот же компонент.
Вопрос стоит только - какой он и каков его интерфейс. Или еще расширенее - включен ли он в поставку компонент связаных с медиа-библиотеками для использования при написании сторонних продуктов, как поставляется DirectShow.
Жаль - на вас была последняя надежда, но и у вас никто не знает.


Записан
Skyf
Гость
« Ответ #4 : 16-03-2009 11:19 » 

Кстати - по поводу "Теги mp3 не являются чем-то стандартным для MPEG"
http://www.id3.org/ - сайт предоставляющий именно стандарт формата.
На сайте утверждают что "While there are legacy and future standards for ID3 tags, the most popular version implemented today is ID3  version 2.3. A follow on version,  2.4, is documented on this website but has not achieved popular status due to some disagreements on some of the revisions and the tremendous inertia present in the software and hardware marketplace."
А в текущей разработке есть формат версии 3.0 Жаль Печально неправда-ли. Именно поэтому мне хочется использовать для вынь програмок именно стандартные библиотеки, которые смогут сами при смене версий определять ее и парсить без доп. головной боли для меня.
Записан
Skyf
Гость
« Ответ #5 : 16-03-2009 11:35 » 

Нашел. Вот IWMHeaderInfo3 - это и есть тот объект работающий с ID3 форматом. Будем посмотреть чего и как. Жаль что нет примера использования от знающих людей.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines