Pull to refresh

Comments 58

Существуют бесплатные системы с большими БД треков работающие подобным образом. MusicBrainz например.
А ссылочку дайте пожалуйста, как раз долго искал такие системы.
Чорд! Меня опередили. =)
Тогда пробую реабилитироваться (не реклама — просто что нашел) несколько ссылок
en.wikipedia.org/wiki/Acoustic_fingerprint — это про музыкальные «отпечатки пальцев»
www.znamensk.net/forum/showthread.php?s=29411b531180010f66ba401f6feb7542&t=1544 — это одно описание
www.liveinternet.ru/community/lj_slavik46/post70474208/ — это второе описание
А я в следующий раз буду повнимательней ;)
Поняслась родииимая =)
Преимущество MusicBrainz в том что она работает по принципу wiki. То есть вы можете добавлять свои композиции, за счёт чего база быстро растёт
Однако, с коммерческой CDDB тягаться всё-равно может с трудом.

Любопытно, какими путями пополняется база CDDB.

(С CDDB работает, например, функция Auto-tag в Winamp'е.)
Не соглашусь с тем, что «тягаться может с трудом». CDDB есть несколько:

Есть «официальная», которая cddb.com от gracenote, распространяется за деньги, lookup'ать в ней можно весьма ограничено. Пополняют ее большинство коммерческих CDDB-enabled плееров по умолчанию, даже не спрашивая у пользователя, хочется ему туда или нет. «Официальная» cddb пестрит диким проблемами с кодировками и довольно хламным содержимым, несмотря на то, что на дворе уже почти 2009 год и utf-8.

Есть freedb.org, в которой все чуть получше, с ней по умолчанию обычно работают (=забирают информацию и пополняют) все фришные плееры и дисковые библиотеки (типа kscd и т.п.), но бардака там примерно столько же. Попробуйте поискать там CD какого-нибудь русского исполнителя — с большой вероятностью найдете варианты в windows-1251, koi8-r и utf-8, причем половину — каких-то сильно поломанных.

В MusicBrainz подход радикально иной — там оценочная система модерации и, как правило, весь получающийся бардак подчищают. Есть достаточно четкие правила описания дисков (например, как записать название трека — «Komodia I — The Beginning», «Komodia 1: The Beginning», «Komodia pt.1. The Beginning.» или еще как-то — там определяется единый стандарт), есть люди, которые следят за соблюдениями этих правил и стандартов. В результате почти по всем записям (а уж по русскоязычным — точно) порядок намного больший, чем в любых CDDB.

Кстати, MusicBrainz умеет импортировать данные из CDDB, чтобы их не вбивать руками. Но почти всегда эти данные приходится дополнительно править.
Меня интересуют в первую очеред японские исполнители. А русских почти совсем нет.
С японскими тегами в CDDB проблемм не было. Всегда юникод. Shift-JIS не попадался. :)

> Пополняют ее большинство коммерческих CDDB-enabled плееров по умолчанию, даже не спрашивая у пользователя, хочется ему туда или нет.

Вот и ответ, я думаю. Толпа юзеров iTunes и Winamp'а гораздо быстрее наполняет базу, чем отдельные гики с линуксом или MisicBrainz Picard.
Не всегда результат приемлимый, но чаще это всё-таки так.
Здесь уместно говорить о качестве и количестве. Будь там хоть суперкачественные теги, если я не нахожу нужных мне — зачем мне этот сервис?

Думаю, надо додавить авторов AIMP, чтобы добавили поддержку MusicBrainz. Если работать с сервисом будет также просто, как и в коммерческих плеерах, база будет быстрее пополняться.

> Кстати, MusicBrainz умеет импортировать данные из CDDB, чтобы их не вбивать руками. Но почти всегда эти данные приходится дополнительно править.

А можно про это поподробнее? В Picard'е не видел. Поправить — не проблемма. Вот целиком руками вбивать — проблемма.
> С японскими тегами в CDDB проблемм не было. Всегда юникод. Shift-JIS не попадался. :)

Сильно повезло ;)

> Здесь уместно говорить о качестве и количестве. Будь там хоть суперкачественные теги, если я не нахожу нужных мне — зачем мне этот сервис?

Абсолютно согласен — но в последнее время MusicBrainz покрывает процентов 99 того, что я нахожу. В том числе по японским исполнителям — это одна из наиболее полный баз, которые я знаю.

> А можно про это поподробнее? В Picard'е не видел. Поправить — не проблемма. Вот целиком руками вбивать — проблемма.

Все банально и ни от кого не прячется — musicbrainz.org/freedb/freedb.html. В том числе там есть хитрая определялка кодировки на тот случай, если добрые люди в freedb положили не utf-8 ;)
>> You need to login to view this page

Прячется. Я ещё не регистрировался. :)

> Кстати, MusicBrainz умеет импортировать данные из CDDB, чтобы их не вбивать руками.

И всё-таки freedb. И не сразу, а через сайт.
> Прячется. Я ещё не регистрировался. :)

Логично, так как речь идет о том, что будет производиться редактирование базы. В MusicBrainz все редактирования делаются из под авторизованных пользователей (в отличие от MediaWiki / Wikipedia, где можно подписываться IP-шником и не регистрироваться).

> И всё-таки freedb

Да, согласен, неверно написал. freedb, конечно, т.к. из cddb нельзя просто так бесплатно информацию брать в промышленных масштабах.

>И не сразу, а через сайт.

Логика примерно такая: Picard и любые тэггеры — это такое средство, которое в первую очередь «читает» из БД MusicBrainz и позволяет пользоваться информацией. А для редактирования MusicBrainz первичен сайт, и только то, что технически нельзя сделать через сайт, делается через всякие тэггеры (такие вещи, как DiscID и собственно акустический фингерпринтинг через PUID/TRM).
по-моему в подобных системах по определению будет мусор. Кто может заставить пользователя вводить теги правильно? Кто-то любит с капс-лока всё писать, другой всё переводит на свой родной чешский, к примеру.

Я пользуюсь подобными системами, но после этого в 99 % случаев приходится потом поправлять капитализацию, и мелкие опечатки. (last.fm эффект в действии)
В телефоне Sony-Ericsson класса walkman музыка так же может быть инициализирована, причем даже (!) с прямой записи отрывка, скажем, на концерте или дискотеке. Интересно, как это реализовано.
ГЕНИАЛЬНО!!! А как именно оно работает?
К сожалению, там не сказано, как оно работает. Ну да, сравнивается с образцами, т.е. у них на сервере просто огромное кол-во музыки, и сравнивается звучание и частоты со всеми? Интересно само устройство технологии.
а ещё к винампу по дефолту идет плагин AutoTagger или как-то так
1. берём вавчики
2.…
3. сравниваем мидишки
4. профит.

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

а то, что получилось у тебя на картинке — матрица вероятностей для цепей маркова.
хммм… Ваши предложения?
предложения для решения какой проблемы?
тэгирование композиций? вычисления степени похожести? определения нот в звуковом потоке? выделения доменов? составления рекомендаций? создания автоматического генератора музыки?…
Неизвестная мелодия — тэгирование исключается.
Вычисление степени похожести, определение нот в звуковом ряде и выделение доменов. Методов достаточно большое количество. Можно несколько изменить алгоритм и учитывать последовательности не из двух нот, а из нескольких, а потом выявление наиболее частых — домены и учитывание истории.
Не совсем понял про рекомендации и автоматический генератор музыки.
Как бы я предлагал поиск, а с рекомендациями и генерацией, это интересно, надо подумать. =)
С точки зрения широкого пользователя есть пара идеальных применений аудиофингерпринта. Во-первых, скачал совершенно неизвестный трек без тэгов, натравил на него программу, и она автоматически определила что это за песня. Второе примение: слышишь по радио какую-то песню, нажимаешь на кнопку, музыка распознаётся и ты получаешь информацию о ней. Альтернатива: подсунуть программе фрагмент в несколько секунд песни в каком угодно качестве (мало ли, записал на сотовый телефон неизвестную песню, проходя мимо открытого окна машины), а тебе информация о ней в ответ.

Теоретических вариантов решения данных задач немало, но пока все они находятся в такой стадии, что для работы с ними нужен как минимум пользователь хабра. Простых однокнопочных (или вообще бескнопочных) решений как не было, так и нет. А мы знаем, что настоящая популярность к подобному сервису приходит только тогда, когда пользователь должен совершать минимум действий, пример — Last.FM. Кроме того, в любом случае для этих процессов требуются нехилые вычислительные мощности и совершенно гигантская база данных фактически всей музыки в мире. Не просто порядок треков и длинами, как у CDDB, а именно аудиоданные.
UFO just landed and posted this here
P.S.Если кому интересно – картинках Бетховен
на картинках ;)
А можно для особо одарённых объяснить, почему на первом графике, где по оси Х идёт порядковый номер ноты, стоит i от 0 до 40. Нот всего 7 ещё бемоль, диез для нот… неужели всего 40 наберётся? Вот не могу понять. Объясните, пожалуйста!
Там взято несколько октав. То есть отдельно для первой октавы 12 нот (7 основных+5 диезов), для второй и так далее. Естественно весь звуковой ряд оформить трудновато… Хотя идея использовать всего 12 нот достаточно интересная. Кстати можно расширить и брать частоту перехода между тремя нотами (будет уже трехмерный график) или даже больше.
Спасибо за объяснение, причём, очень быстрое. Думаю, переход, между 4-мя нотами отобразить не получится :) Если, конечно, вы видите 4-х мерное пространство, то всё возможно :)
Ex3NDR тоже спасибо, всем же ответить не получится, сами понимаете :)
Во-первых в октаве 12 нот=) бемоли — это те же ноты=)
Во-вторых октав шеть наберется, но, к примеру, совсем низкие ноты не используются, совсем высокие — тоже, да и основная мелодия, как правило в двух-трех октавах укладывается=)
Мало кто способен спеть мелодию, которая в две октавы не укладывается;)
Я ничего не понял, но раз народ оживился значит проблема актуальна =)
Транспонировать из минора в мажор — это сильно придумано.
Поправил, хотя могу выкрутиться — переводим в параллельную мажорную тональность, а затем в до мажор. Но это уже экзотика, и не факт, что сработает для всех.
Сработать-то сработает, но это будет другая мелодия.
Так я же ее не слушать собрался — глядишь какой-нибудь модный хит окажется переделанным произведением Моцарта.
Как там в бородатом анекдоте про профессора консерватрии.

Профессор консерватории говорит своему студенту: «Когда будете писать дипломный проект, возьмите произведение классика и запишите его задом-наперед». Ну студенттак и сделал с дипломной работай профессора. Получился Чайковский. =)
Ну так интервалы-то поплывут, и следующий шаг будет бесполезен.
Или надо работать не с интервалами, а с номерами ступеней.
Как сказал, DarkPhoenix, будем пилить напильником — может и транспонировать вообще не надо. Слишком оптимизировать тоже плохо.
Тысячачертей, я пять лет занимаюсь музыкой и SFX, а нихрена не понял… Но из того что понял: есть мнение, старая классификация по гармонии (key) тоже вполне хорошая.
Эй, а никто и не говорит, что она плохая, я просто предложил еще один вариант. Вон tenshi меня ща критикует — мне приходится изворачиваться и дорабатывать. В итоге либо будет, что-нить интересное, либо ничего не будет. =)
Я ж ни разу не говорил, что предложенная тобой схема плохая, нет. Она клевая, и то, что ты до такого догадался — тоже клево. Да, её нужно дорабатывать напильником, но вектор задан и это мегакруто, в наше время таким почти никто не занимается. Только паразитируют.
Хм, я один подумал, что в этом топике расскажут про еще один способ систематизации своей муз. библиотеки? :)
Было бы здорово иметь возможность найти песню неизвестного исполнителя (например услышанную по радио), напев ее. Правда не уверен что это возможно даже с описанным алгоритмом, да и точность высокая не получится скорее всего
midomi.com был задуман изначально для этого, и у меня иногда даже получалось что-то находить, насвистев. Но, когда юзеры туда начали постить мелодии вместе с аккомпанементом, весь поиск, естесственно, ухудшился в разы. Тем не менее, иногда это может помочь.

Есть еще вариант: www.musipedia.org/query_by_humming.html но там результаты как-то вообще не радуют
А еще можно побитово файлики сравнивать. :)
по графику перехода трудно будет идентифицировать,
это то же самое что пытаться сравнивать тексты по графику перехода между буквами, т.е вы скорей изучаете свойства самого языка (в данном случае музыки).
пожалуйста, замените в тексте «мелодию, на столько, на сколько это возможно.» на «мелодию, насколько это возможно.»
www.shazam.com — наводишь мобильник на то что слышишь и узнаешь название композиции.
Only those users with full accounts are able to leave comments. Log in, please.