Поиск экземпляров звукового фрагмента в аудиофайле - PullRequest
7 голосов
/ 29 марта 2011

У меня есть два аудиофайла.Один длится примерно одну секунду, содержит очень скучный звуковой сигнал, а другой, длится около 60 минут, наполнен случайным звуком (разговором, шумом и т. Д.), А также экземплярами одного и того же звукового сигнала (примечание:«Звуковой сигнал» может возникать одновременно с другими звуками!).

Может кто-нибудь предложить мне простой способ написать программу, которая просматривает 60-минутный аудиофайл и возвращает временную метку для каждого экземпляра?это находит из "звукового сигнала"?Я искал, как это сделать, но у меня возникают проблемы с выяснением даже, какие термины искать / читать.

Я бы предпочел использовать Python, если это возможно, но я такжежелающих использовать C, C ++, Java или (что мне кажется наиболее очевидным) Matlab.Не стесняйтесь указывать мне на учебники, концепции или что-то еще, что, по вашему мнению, может помочь.Я готов сделать значительный объем обучения, чтобы понять, как это сделать.Любая помощь с благодарностью!

редактировать: название для ясности

Ответы [ 3 ]

1 голос
/ 26 сентября 2014

Технология, которую вы ищете, называется Audio Fingerprinting. Это описано в этом ответе .

1 голос
/ 29 марта 2011

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

0 голосов
/ 28 сентября 2014

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...