· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.WIN32 —› Идентификация MP3

Посл.отвђт Сообщенiе


Дата: Сен 19, 2003 21:46:53

Решил написать плагин для WinAmp2х, который будет удалять из списка определенные композиции (типа WinAmp'овского Bookmarks, только наоборот).

Вот собственно и сам вопрос: как правильно идентифицировать MP3, если изменяются данные тега и его (файла) месторасположение. WinAmp может возвращать информацию только об имени файла и названии песни в плейлисте.


Дата: Сен 20, 2003 02:41:29

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


Дата: Сен 20, 2003 12:06:13

Quantum
А как это будет по скорости, MP3'шек то ~10 гигов?


Дата: Сен 20, 2003 20:53:03

Так иначе, вроде, никак :(
Если со скоростью возникнут проблемы, можно урезать проверку CRC до первых килобайт MP3 (не весь MP3).


Дата: Сен 21, 2003 00:36:57

Quantum
Спасибо за помошь. Попробую разобраться с алгоритмом создания CRC32.


Дата: Сен 21, 2003 01:34:08

Может, пригодится :)

ЗЫ: Этот CRC32 я написал для текстовой строки. Надо будет адаптировать немного для бинарного файла (убрать поиск нулевого байта в конце).
ЗЫЫ: Алгоритм я всё-таки откуда-то спёр (не помню), но таблицу составил сам.

_2138686000__crc32.rar


Дата: Сен 21, 2003 16:38:04

Quantum
Спасибо, попытаюсь разобраться.


Дата: Сен 23, 2003 15:36:03

Мне кажется, что считать контрольные суммы гигабайтов данных только в целях идентификации, не стОит. Это будет неоправданно долго, и ресурсоёмко - тебе придётся не только посчитать crc вообще всех файлов, но и считать crc каждого файла, что ты будешь проверять...

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

А при совпадении можно и побайтно данные сравнить...


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.101