EchoPrint — открытая система распознавания музыки. Распознает музыку по записанному на микрофон отрывку


Как Яндекс распознаёт музыку с микрофона / Блог компании Яндекс / Хабрахабр

Поиск по каталогу музыки — это задача, которую можно решать разными путями, как с точки зрения пользователя, так и технологически. Яндекс уже довольно давно научился искать и по названиям композиций, и по текстам песен. На сказанные голосом запросы про музыку мы тоже умеем отвечать в Яндекс.Поиске под iOS и Android, сегодня же речь пойдёт о поиске по аудиосигналу, а если конкретно — по записанному с микрофона фрагменту музыкального произведения. Именно такая функция встроена в мобильное приложение Яндекс.Музыки:

В мире есть всего несколько специализированных компаний, которые профессионально занимаются распознаванием музыкальных треков. Насколько нам известно, из поисковых компаний Яндекс стал первым, кто стал помогать российскому пользователю в решении этой задачи. Несмотря на то, что нам предстоит ещё немало сделать, качество распознавания уже сопоставимо с лидерами в этой области. К тому же поиск музыки по аудиофрагменту не самая тривиальная и освещённая в Рунете тема; надеемся, что многим будет любопытно узнать подробности.

О достигнутом уровне качества

Базовым качеством мы называем процент валидных запросов, на которые дали релевантный ответ — сейчас около 80%. Релевантный ответ — это трек, в котором содержится запрос пользователя. Валидными считаем лишь те запросы из приложения Яндекс.Музыки, которые действительно содержат музыкальную запись, а не только шум или тишину. При запросе неизвестного нам произведения считаем ответ заведомо нерелевантным.

Технически задача формулируется следующим образом: на сервер поступает десятисекундный фрагмент записанного на смартфон аудиосигнала (мы его называем запросом), после чего среди известных нам треков необходимо найти ровно тот один, из которого фрагмент был записан. Если фрагмент не содержится ни в одном известном треке, равно как и если он вообще не является музыкальной записью, нужно ответить «ничего не найдено». Отвечать наиболее похожими по звучанию треками в случае отсутствия точного совпадения не требуется.
База треков
Как и в веб-поиске, чтобы хорошо искать, нужно иметь большую базу документов (в данном случае треков), и они должны быть корректно размечены: для каждого трека необходимо знать название, исполнителя и альбом. Как вы, наверное, уже догадались, у нас была такая база. Во-первых, это огромное число записей в Яндекс.Музыке, официально предоставленных правообладателями для прослушивания. Во-вторых, мы собрали подборку музыкальных треков, выложенных в интернете. Так мы получили 6 млн треков, которыми пользователи интересуются чаще всего.Зачем нам треки из интернета, и что мы с ними делаемНаша цель как поисковой системы — полнота: на каждый валидный запрос мы должны давать релевантный ответ. В базе Яндекс.Музыки нет некоторых популярных исполнителей, не все правообладатели пока участвуют в этом проекте. С другой стороны, то что у нас нет права давать пользователям слушать какие-то треки с сервиса, вовсе не означает, что мы не можем их распознавать и сообщать имя исполнителя и название композиции.

Раз мы — зеркало интернета, мы собрали ID3-теги и дескрипторы каждого популярного в Сети трека, чтобы опознавать и те произведения, которых нет в базе Яндекс.Музыки. Хранить достаточно только эти метаданные — по ним мы показываем музыкальные видеоклипы, когда нашлись только записи из интернета.

Малоперспективные подходы
Как лучше сравнивать фрагмент с треками? Сразу отбросим заведомо неподходящие варианты.
  1. Побитовое сравнение. Даже если принимать сигнал напрямую с оптического выхода цифрового проигрывателя, неточности возникнут в результате перекодирования. А на протяжении передачи сигнала есть много других источников искажений: громкоговоритель источника звука, акустика помещения, неравномерная АЧХ микрофона, даже оцифровка с микрофона. Всё это делает неприменимым даже нечёткое побитовое сравнение.
  2. Водяные знаки. Если бы Яндекс сам выпускал музыку или участвовал в производственном цикле выпуска всех записей, проигрываемых на радио, в кафе и на дискотеках — можно было бы встроить в треки звуковой аналог «водяных знаков». Эти метки незаметны человеческому уху, но легко распознаются алгоритмами.
  3. Нестрогое сравнение спектрограмм. Нам нужен способ нестрогого сравнения. Посмотрим на спектрограммы оригинального трека и записанного фрагмента. Их вполне можно рассматривать как изображения, и искать среди изображений всех треков самую похожую (например, сравнивая как векторы с помощью одной из известных метрик, таких как L²): Но в применении этого способа «в лоб» есть две сложности: а) сравнение с 6 млн картинок — очевидно, дорогая операция. Даже огрубление полной спектрограммы, которое в целом сохраняет свойства сигнала, даёт несколько мегабайт несжатых данных. б) оказывается что одни различия более показательны, чем другие.

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

Каким признакам не страшны искажения?
Основные проблемы возникают из-за шума и искажений на пути от источника сигнала до оцифровки с микрофона. Можно для разных треков сопоставлять оригинал с фрагментом, записанным в разных искусственно зашумлённых условиях — и по множеству примеров найти, какие характеристики лучше всего сохраняются. Оказывается, хорошо работают пики спектрограммы, выделенные тем или иным способом — например как точки локального максимума амплитуды. Высота пиков не подходит (АЧХ микрофона их меняет), а вот их местоположение на сетке «частота-время» мало меняется при зашумлении. Это наблюдение, в том или ином виде, используется во многих известных решениях — например, в Echoprint. В среднем на один трек получается порядка 300 тыс. пиков — такой объём данных гораздо более реально сопоставлять с миллионами треков в базе, чем полную спектрограмму запроса.

Но даже если брать только местоположения пиков, тождественность множества пиков между запросом и отрезком оригинала — плохой критерий. По большому проценту заведомо известных нам фрагментов он ничего не находит. Причина — в погрешностях при записи запроса. Шум добавляет одни пики, глушит другие; АЧХ всей среды передачи сигнала может даже смещать частоту пиков. Так мы приходим к нестрогому сравнению множества пиков.

Нам нужно найти во всей базе отрезок трека, наиболее похожий на наш запрос. То есть:

  • сначала в каждом треке найти такое смещение по времени, где бы максимальное число пиков совпало с запросом;
  • затем из всех треков выбрать тот, где совпадение оказалось наибольшим.
Для этого строим гистограмму: для каждой частоты пика, которая присутствует и в запросе, и в треке, откладываем +1 по оси Y в том смещении, где нашлось совпадение: Трек с самой высоким столбцом в гистограмме и есть самый релевантный результат — а высота этого столбца является мерой близости между запросом и документом.
Борьба за точность поиска
Опыт показывает, что если искать по всем пикам равнозначно, мы будем часто находить неверные треки. Но ту же меру близости можно применять не только ко всей совокупности пиков документа, но и к любому подмножеству — например, только к наиболее воспроизводимым (устойчивым к искажениям). Заодно это и удешевит построение каждой гистограммы. Вот как мы выбираем такие пики.

Отбор по времени: сначала, внутри одной частоты, по оси времени от начала к концу записи запускаем воображаемое «опускающееся лезвие». При обнаружении каждого пика, который выше текущего положения лезвия, оно срезает «верхушку» — разницу между положением лезвия и высотой свежеобнаруженного пика. Затем лезвие поднимается на первоначальную высоту этого пика. Если же лезвие не «обнаружило» пика, оно немного опускается под собственной тяжестью.

Разнообразие по частотам: чтобы отдавать предпочтение наиболее разнообразным частотам, мы поднимаем лезвие не только в само́й частоте очередного пика, но и (в меньшей степени) в соседних с ней частотах.

Отбор по частотам: затем, внутри одного временно́го интервала, среди всех частот, выбираем самые контрастные пики, т.е. самые большие локальные максимумы среди срезанных «верхушек». При отборе пиков есть несколько параметров: скорость опускания лезвия, число выбираемых пиков в каждом временно́м интервале и окрестность влияния пиков на соседей. И мы подобрали такую их комбинацию, при которой остаётся минимальное число пиков, но почти все они устойчивы к искажениям.

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

Повышение уникальности ключей: Можно было бы построить индекc     Частота пика → (Трек, Местоположение в нём). Увы, такой «словарь» возможных частот слишком беден (256 «слов» — интервалов, на которые мы разбиваем весь частотный диапазон). Большинство запросов содержит такой набор «слов», который находится в большинстве из наших 6 млн документов. Нужно найти более отличительные (discriminative) ключи — которые с большой вероятностью встречаются в релевантных документах, и с малой в нерелевантных.

Для этого хорошо подходят пары близко расположенных пиков. Каждая пара встречается гораздо реже. У этого выигрыша есть своя цена — меньшая вероятность воспроизведения в искажённом сигнале. Если для отдельных пиков она в среднем P, то для пар — P2 (т.е. заведомо меньше). Чтобы скомпенсировать это, мы включаем каждый пик сразу в несколько пар. Это немного увеличивает размер индекса, но радикально сокращает число напрасно рассмотренных документов — почти на 3 порядка:

Оценка выигрышаНапример, если включать каждый пик в 8 пар и «упаковать» каждую пару в 20 бит (тогда число уникальных значений пар возрастает до ≈1 млн), то:
  • число ключей в запросе растёт в 8 раз
  • число документов на ключ уменьшается в ≈4000 раз: ≈1 млн/256
  • итого, число напрасно рассмотренных документов уменьшается в ≈500 раз: ≈4000/8

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

Двухэтапный поиск: для дополнительного уменьшения объёма расчётов мы разбили поиск на два этапа:

  1. Делаем предварительный отбор (pruning) треков по очень разреженному набору наиболее контрастных пиков. Параметры отбора подбираются так, чтобы максимально сузить круг документов, но сохранить в их числе наиболее релевантный результат
  2. Выбирается гарантированно наилучший ответ — для отобранных треков считается точная релевантность по более полной выборке пиков, уже по индексу с другой структурой:     Трек → (Пара частот, Местоположение в треке).
Такая двухэтапность ускорила поиск в 10 раз. Интересно, что в 80% случаев результат даже огрублённого ранжирования на первом этапе совпадает с самым релевантным ответом, полученным на втором этапе.

В результате всех описанных оптимизаций вся база, необходимая для поиска, стала в 15 раз меньше, чем сами файлы треков.

Индекс в памяти: И наконец, чтобы не ждать обращения к диску на каждый запрос, весь индекс размещён в оперативной памяти и распределён по множеству серверов, т.к. занимает единицы терабайт.

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

Кроме того, мы планируем инкрементальное распознавание, т.е. давать ответ уже по первым секундам фрагмента.

Другие задачи аудиопоиска по музыке
Область информационного поиска по музыке далеко не исчерпывается задачей с фрагментом с микрофона. Работа с «чистым», незашумлённым сигналом, претерпевшим только пережатие, позволяет находить дублирующиеся треки в обширной коллекции музыки, а также обнаруживать потенциальные нарушения авторского права. А поиск неточных совпадений и разного вида схожести — целое направление, включающее в себя поиск кавер-версий и ремиксов, извлечение музыкальных характеристик (ритм, жанр, композитор) для построения рекомендаций, а также поиск плагиата.

Отдельно выделим задачу поиска по напетому отрывку. Она, в отличие от распознавания по фрагменту музыкальной записи, требует принципиально другого подхода: вместо аудиозаписи, как правило, используется нотное представление произведения, а зачастую и запроса. Точность таких решений получается сильно хуже (как минимум, из-за несопоставимо бо́льшего разброса вариаций запроса), а поэтому хорошо они опознают лишь наиболее популярные произведения.

Что почитать
  • Avery Wang: «An Industrial-Strength Audio Search Algorithm», Proc. 2003 ISMIR International Symposium on Music Information Retrieval, Baltimore, MD, Oct. 2003. Эта статья впервые (насколько нам известно) предлагает использовать пики спектрограммы и пары пиков как признаки, устойчивые к типичным искажениям сигнала.
  • D. Ellis (2009): «Robust Landmark-Based Audio Fingerprinting». В этой работе даётся конкрентый пример реализации отбора пиков и их пар с помощью «decaying threshold» (в нашем вольном переводе — «опускающегося лезвия»).
  • Jaap Haitsma, Ton Kalker (2002): «A Highly Robust Audio Fingerprinting System». В данной статье предложено кодировать последовательные блоки аудио 32 битами, каждый бит описывает изменение энергии в своем диапазоне частот. Описанный подход легко обобщается на случай произвольного кодирования последовательности блоков аудиосигнала.
  • Nick Palmer: «Review of audio fingerprinting algorithms and looking into a multi-faceted approach to fingerprint generation». Основной интерес в данной работе представляет обзор существующих подходов к решению описанной задачи. Также описаны этапы возможной реализации.
  • Shumeet Baluja, Michele Covell: «Audio Fingerprinting: Combining Computer Vision & Data Stream Processing». Статья, написанная коллегами из Google, описывает подход на основе вейвлетов с использованием методов компьютерного зрения.
  • Arunan Ramalingam, Sridhar Krishnan: «Gaussian Mixture Modeling Using Short Time Fourier Transform Features For Audio Fingerprinting» (2005). В данной статье предлагается описывать фрагмент аудио с помощью модели Гауссовых смесей поверх различных признаков, таких как энтропия Шеннона, энтропия Реньи, спектрольные центроиды, мэлкепстральные коэффициенты и другие. Приводятся сравнительные значения качества распознавания.
  • Dalibor Mitrovic, Matthias Zeppelzauer, Christian Breiteneder: «Features for Content-Based Audio Retrieval». Обзорная работа про аудио-признаки: как их выбирать, какими свойствами они должны обладать и какие существуют.
  • Natalia Miranda, Fabiana Piccoli: «Using GPU to Speed Up the Process of Audio Identification». В статье предлагается использование GPU для ускорения вычисления сигнатур.
  • Shuhei Hamawaki, Shintaro Funasawa, Jiro Katto, Hiromi Ishizaki, Keiichiro Hoashi, Yasuhiro Takishima: «Feature Analysis and Normalization Approach for Robust Content-Based Music Retrieval to Encoded Audio with Different Bit Rates.» MMM 2009: 298-309. В статье акцентируется внимание на повышении робастности представления аудиосигнала на основе мел-кепстральных коэффициентов (MFCC). Для этого используется метод нормализации кепстра (CMN).

habrahabr.ru

EchoPrint — открытая система распознавания музыки / Хабрахабр

Наверняка многие из вас слышали и знают про системы идентификации музыки вроде TrackID, Shazam, MusicBrainz или онлайновой Audiotag.info, позволяющие по записанному отрывку песни узнать ее название. Все они в достаточной степени хороши, но имеют общий недостаток — закрытый код и, соответственно, ограниченную сферу применения. TrackID вы можете использовать только на телефонах Sony Ericsson, Shazam — тоже только на телефонах, хотя и на более обширном списке платформ, а Music Brainz вообще неясно, работает ли вообще.

Ребята же из компании Echo Nest, решили, что распознавание музыки должно быть таким же доступным миру явлением, как электронная почта или DNS :), и выпустили своё детище полностью под MIT License. А детище, надо сказать, у них очень серьёзное — еще бы, если основателями компании являются доктора наук из MIT Media Lab .

Тот зверьфункционал, который они выпустили на свободу, не ограничивается только распознаванием музыки по записанному отрывку, но и позволяет делать такие вещи, как поиски дубликатов музыки, массовое распознавание и заполнение тэгов в музыкальных коллекциях, проверка аудио/видео на содержание того или иного материала, синхронизация коллекций из различных музыкальных пространств (iTunes <-> Last.fm <-> Spotify, например) и много чего еще.

Как это работает?
Вкратце — на стороне клиента запускается кодогенератор, формирующий уникальный отпечаток записанной части песни, и отправляет его на сервер на опознание.
Клиент
Клиент, он же echoprint-codegen, поставляется в виде кроссплатформенной библиотеки и бинарника. Вот типичный пример использования — проверить 20 секунд из mp3 файла, начиная с 10-й секунды:echoprint-codegen ./recorded.mp3 10 20 | \ curl -F "[email protected]" http://developer.echonest.com/api/v4/song/identify?api_key=MY_API_KEY{"response": {"status": {"version": "4.2", "code": 0, "message": "Success"},"songs": [{"tag": 0, "score": 66, "title": "Creep", "message": "OK (match type 6)","artist_id": "ARH6W4X1187B99274F", "artist_name": "Radiohead", "id": "SOPQLBY12A6310E992"}]}} А если вы хотите использовать это в своей программе, то тоже несложно:Codegen * pCodegen = new Codegen(const float* pcm, uint numSamples, int start_offset); string code = pCodegen->getCodeString();  Как становится ясно, прикрутить это к своему любимому языку/проекту совсем несложно — лишь бы фантазии хватило. Кстати, для самых активных ребята устроили даже конкурс с призом в 10000$ на самое интересное и новаторское музыкальное приложение, использующее возможности EchoNest API в полной мере. А API у них довольно обширное, связывающее музыкальные композиции по всем мыслимым и немыслимым связям — от основного географического расположения и года рождения артиста до уровня танцевальности композиции.

Для получения цифрового отпечатка песни используется собственный алгоритм, The Echo Nest Musical Fingerprint aka ENMFP, который компания давно и успешно использует для других своих сервисов — вроде поиска похожих песен, подсчета BPM и прочего. Сами ребята заявляют, что они собаку съели именно на анализе песен (не просто звуков, а именно музыкальных композиций). Про API подробнее можно узнать на портале для разработчиков.

Сервер
Код серверной части также находится в открытом доступе на github, так что, при желании, можете поднять собственный сервер — Echo Nest даже выложили в общий доступ несколько гигабайт уже обработанных данных. Движок сервера основан на базе поискового сервера Apache Solr, в качестве базы данных используется Tokyo Tyrant.

Пока что данных на их сервере сравнительно немного — около 150 000 песен, но по заявлениям компании, они импортируют многомиллионную коллекцию 7digital, активно сотрудничают с MusicBrainz (который даже поднял свой echoprint-сервер для интеграции со своими данными), а также предоставляют функционал для загрузки новых песен пользователями.

Использование
Разумеется, одной из основных функций использования остается все таки распознавание услышанной музыки. Услышал хорошую песню, достал телефон, нажал кнопку — и узнал кто поёт. Я быстренько написал echoprint-клиент для Maemo/Meego, и в ходе тестирования пока могу сказать следующее:
  • некоторые исполнители распознаются с очень большой вероятностью, а некоторые через раз
  • 20 секунд это минимальный период записи. увеличение времени записи повышает шанс распознавания
  • громкость почти не влияет на результат — алгоритм достаточно хорошо нормализирует звук
  • Metallica распознается лучше, чем Бетховен :-D
  • Иногда ошибается :(
Более того, они даже утверждают, что алгоритм позволяет найти похожие версии — вроде Live выступлений или похожих каверов. Пока что, конечно, рано называть echoprint убийцей Shazam'а, но это лишь дело времени. Такие проекты, будучи выпущены на свободу, начинают развиваться на порядки быстрее.
Выводы
Главное, что мне хотелось бы донести, помимо простого обзора этого замечательного open-source проекта — это тот факт, что компания действительно создает нечто важное (не для всех конечно). Это не просто «ещё один алгоритм обработки музыки», это целая энциклопедия музыки, позволяющая найти, описать и объединить все когда либо выпущенные композиции. В отличие от того же Shazam, в базе данных Echo Nest может быть информация и о малоизвестных группах — хоть свои собственные песни загружайте. Кроме того, один из проектов, под кодовым названием Rosetta Stone, призван объединить различные пространства идентификаторов — например, той же MusicBrainz ID или Napster Artist ID.

Вобщем, своего рода музыкальная Wikipedia, которая благодаря открытости обещает вырости в нечто поистине грандиозное.

habrahabr.ru

Как найти песню, не зная её названия

Знакомая ситуация: в голове крутится одна и та же композиция, но вспомнить название, хоть убей, не получается? Лайфхакер поможет определить трек, если вы помните хотя бы пару слов, услышали знакомую мелодию по радио или в состоянии напеть мотив.

Если вы помните текст

Самая простая ситуация. Если вы помните слова песни (хотя бы парочку), можно найти её название через любой поисковик.

  • Введите в строку поиска запомнившуюся фразу.

  • Не помогло? Введите ту же строку с дополнительным запросом «текст песни» или «слова песни».

  • Если композиция на иностранном языке, составляется запрос со словом lyrics.

  • Язык композиции вам не знаком? Попробуйте поискать транслитерацию: запишите слова так, как услышали. Возможно, вам повезёт.

Если вы помните, где услышали песню

Вы переключаете радиостанции одну за другой и внезапно слышите последние ноты той самой — любимой и желанной — песни. А диджей тем временем включает следующую композицию, безжалостно забыв озвучить название предыдущей. Что делать в этой ситуации?

  • Запоминаем название радиостанции и точное время, когда звучала искомая песня.
  • Если станция популярна, у неё точно есть сайт. А на сайте нередко дублируют плейлист, прозвучавший в эфире.
  • В плейлисте найдите название песни, игравшей в те часы и минуты, которые вы запомнили. Готово!
  • Если сайта нет (но найти песню вам требуется позарез), действуйте решительно: позвоните в офис и спросите напрямую. Мы, конечно, не советуем обрывать телефоны местных радиостанций, но если нужда крайняя…

Чтобы вам было удобнее, вот ссылки на плейлисты популярных российских радиостанций:

Если вы помните мелодию

Когда иные методы не помогают, но музыка в голове не замолкает, пора браться за тяжёлую артиллерию — программы для распознавания мелодий.

Как найти песню с помощью компьютера

  • AudioTag.info. Распознаёт композицию онлайн по загруженному файлу или URL. Поможет, если у вас есть микрофон или надо идентифицировать безымянный Track01.mp3. Интерфейс простой и понятный: выгружаете музыкальный файл, вводите капчу, получаете результат.
  • Midomi. На главной странице сайта нажмите на кнопку Click and Sing or Hum и, собственно, напойте или намычите запомнившийся отрывок песни. Результаты поиска вы можете отфильтровать по жанру и языку исполнения. Как показал личный эксперимент, сервис лучше работает с иностранными композициями.
  • Пользователи macOS и Windows могут подключить к поиску песен десктопную версию Shazam. Утилита работает в фоновом режиме и позволяет узнать название любой композиции, звучащей поблизости.
  • MooMa.sh — специальный онлайн-сервис для распознавания саундтреков из видео на YouTube или Vimeo. Лайфхакер уже тестировал MooMa.sh и остался доволен.

Как найти песню с помощью телефона

  • Shazam. Установите приложение на свой смартфон, откройте, нажмите кнопку на главном экране и напойте мотив. С вероятностью более 90% искомая композиция будет найдена.

Developer: Shazam Entertainment Ltd

Price: Free

  • SoundHound. Не отстаёт по популярности от предыдущего приложения, но отличается некоторыми тонкостями. Этот сервис позволяет искать музыку по известным строчкам текста, а в своей базе данных содержит чуть больше малоизвестных и андеграундных исполнителей.

Developer: SoundHound Inc.

Price: Free

lifehacker.ru

Программы для распознавания музыки по звучанию

Программы и приложения

30.11.2017 | | 442

Иногда при езде в автомобиле или на отдыхе в кафе человеку может понравиться услышанная песня, однако он не знает, как она называется и кто ее поет. Поиск по некоторым вырванным словам из теfкста может ни к чему не привести. Используя одно из специальных приложений (как для стационарных компьютеров, так и для телефонов, планшетов), трек можно распознать по короткому фрагменту, записанному на диктофон. Рассмотрим популярные программы для распознавания музыки, а также сервисы для решения подобной задачи.

Magic MP3 Tagger

Одно из наиболее популярных десктопных приложений. С его помощью вероятность нахождения той или иной песни составляет 97 %, что говорит о высоком качестве поиска, что позволяет практически всегда отыскать нужный трек. Для скачивания необходимо перейти по ссылке. Инсталлированная программа составляет всего лишь 5 Мб дискового пространства. После открытия главного окна пользователю остается лишь кликнуть по кнопке Add mp3z, после чего выбрать отрывок композиции, и приложение отыщет нужную песню.

Из значительных недостатков можно отметить отсутствие русскоязычной версии, а также непонимание кириллической раскладки, но треки все равно находятся, и пользователь может их сохранить (добавить в трек лист).

AudioTag

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

Shazam

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

Специально для Android, начиная от 4-й версии, разработан Sound Search for Google Play. К его особенностям можно отнести наличие виджета, который ставится на рабочий стол, и человеку не нужно долго искать приложение, призванное распознавать музыку по отдельному фрагменту.

comments powered by HyperComments

tdblog.ru

программы, онлайн, по словам, телефон

Человек садится в общественный транспорт, заходит в магазин, идет на работу – и музыка сопровождает его повсюду. Некоторые песни не удается запомнить сразу, но так хотелось бы найти их и добавить в личный плей-лист!

И это осуществимо, если знать, как и где искать полюбившиеся композиции и их исполнителей.

Программы для поиска названия песни и исполнителя

Tunatic

Tunatic одна из немногих программ для поиска с русскоязычной локализацией. Для ее работы нужен только исправный микрофон (см. Как выбрать и настроить микрофон) и доступ в интернет. Tunatic «слушает» музыку из радио или ролика на Youtube, делает акустический отпечаток и ищет совпадения на своем сервере.

Если ничего не нашлось в базе приложения, запрос посылается на сайт allofmp3.com. Процедура занимает до 15 секунд. По окончании поиска программа дает опции на выбор: скачать как рингтон, сохранить в iTunes, искать через Google.

Функция Auto-Tag в плеере WinAmp выдает название и дополнительные теги. Опция доступна в Pro-версии проигрывателя.

MusicBrainz Picard

MusicBrainz Picard кросс платформенный продукт, который ищет все интересующие данные о композиции по одному фингерпринту файла (аудио-отпечаток TRM). База данных программы обширная и не ограничивается одним каталогом.

Добавляем аудио файл, если в свойствах не содержится информация, увидите тоже что и на скрине

кликаем правой кнопкой мыши по файлу, выбираем → сканировать

после завершения, файл исчезнет из окошка, а в правой части программы отобразиться результат, кликаем по результату ниже появиться расширенная информация

Созданная в MusicBrainz технология автоматического распознавания используется другими программными продуктами:

  • Picard Tagger – определяет точную информацию об аудиодорожках по файлам в разных форматах: mp3 и mp4, wma и wav, mpc, vorbis и flac.
  • Jaikoz Tag Editor – работает по аналогичному принципу, но с подключением еще одной базы – от MusicDNS.
  • Magic MP3 Tagger – ищет название, альбом и исполнителя, но только по mp3-файлу.

Поиск названия и исполнителя песни онлайн

Распознавание композиции по ссылке или файлу.

Audiotag.info – популярный сервис для определения детальной информации о треке, если в распоряжении пользователя ПК оказалась неизвестная аудиодорожка.

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

Чем качественнее и продолжительнее аудио, тем скорее система справляется с его обработкой.

EchoPrint. Проект на стадии тестирования и развития. Он умеет искать метаданные по аудио-отпечатку. Создано пробные клиенты для ПК. Сервис планирует стать крупной музыкальной энциклопедией, в базе данных которой будут и популярные хиты, и малоизвестные песни. Каталог уже вмещает музыку разных направлений и времен выпуска.

Когда запомнилась только мелодия.

На помощь придет ресурс midomi.com. Можно скачать Midomi в качестве приложения на телефон или использовать его на компьютере. Мелодия для распознавания напевается, проигрывается или настукивается на клавиатуре. Чем ближе и точнее будет ритм, тем проще сервису выдать результат.

Внимание! Для работы с сайтом требуется установленный флеш плеер и микрофон.

В утилиту встроили форму поиска по отрывкам из композиции. Midomi работает быстро и отлично справляется с поиском зарубежных хитов и их исполнителей, но с русскоязычными треками работает неохотно.

Ritmoteka.ru предлагает простучать на клавиатуре или напеть через микрофон мелодию зарубежного хита. Чем песня популярней, тем проще ее найти через этот сервис.

Еще один помощник – сайт musipedia.org. Песню можно проиграть на фортепиано, насвистеть, простучать на клавиатуре или напеть (желательно, одним слогом, например «тра-та-та», «на-на-на» и т.п.).

Как узнать, что за песня играет с помощью телефона

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

Утилита «слушает» напеваемую или транслируемую с любого источника музыку, а через несколько секунд выдает все, что нужно и даже больше: название, автора, альбом, обложку, дискографию исполнителя и расписание его будущих концертных туров, ссылки на покупку трека через Amazon. Тут же есть опция для отправки находки в соцсети.

Подобным образом работает приложение Sound Hound.

Поиск песен по нескольким словам

Findmedia.ru. Вводится отрывок, который удалось запомнить, а система выдает готовый результат в виде ссылок на страницы с полным текстом песни.

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

Songfind.ru. Русскоязычный проект с обширным перечнем функций. Преимущества: песню легко найти, просмотреть текст, прослушать или добавить в плейлист (доступно после регистрации на сайте). Есть список ссылок, откуда можно скачать найденную музыку.

Успех в поиске аудиодорожки зависит от того, насколько она популярна. Хиты находить быстрее и проще, чем свежие композиции малоизвестных групп или отдельных певцов. Распознавать песни по файлу или ссылке проще – базы акустических отпечатков, с которыми работают программы и онлайн-сервисы неустанно совершенствуются.

При желании добавить неизвестный трек в плейлист своего проигрывателя, запомните о нем максимум информации. Когда и где слышали, чей это был голос? Вспомните хоть два-три слова из припева или, по крайней мере, мелодию. Вооружайтесь этой информацией, подключайтесь к подходящему ресурсу, и получайте то, что вам нужно. Ведь музыка – это жизнь!

Читайте также:

  • 7 сервисов для извлечения музыки из видео Для редактирования и монтажа собственных видеороликов. Не тратьте время на поиски исходника – сразу «доставайте» песню или озвучку с помощью онлайн сервисов или специальных программ. Для […]
  • Как скачать аудио и видео с Rutube Rutube - российский видеохостинг, аналог YouTube, на котором хранится и просматривается видео. Проблема, с которой часто сталкивается пользователь – невозможность скачать аудио- и […]

pchelp.one


Смотрите также