|
|
| Посл.отвђт | Сообщен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 |