Модуль распознавания звука для мобильного приложения

Цена договорная • наличный расчёт, безналичный расчёт, электронные деньги
06 июня 2017, 13:44 • 3 отклика • 39 просмотров
Необходимо сделать модуль, цель которого находить в непрерывном звуковом потоке заранее заданные звуковые примеры.
Звуковые примеры постоянно доступны на локальном устройстве в виде файлов. Это звуковые файлы длительностью звучания до 5 секунд. Возможно, следует использовать не сами звуковые файлы, а т.н. «звуковые отпечатки» для сокращения объёма хранимой и обрабатываемой информации. Количество звуковых примеров будет около 20. Но потенциально ограничивать это количество не следует.
Модуль должен непрерывно прослушивать звуковой поток через микрофон устройства. Если он услышит наличие звука одного из примеров, должен вернуть информацию о том, какой из звуковых примеров был услышан. Эта работа похожа на принятие голосовых команд «окей гугл», «слушай яндекс» и т.п., с тем исключением, что самих команд несколько, они могут быть длиннее и содержать не только голос, но и другие звуки и звуковые сигналы. Звуковой пример в потоке должен полностью содержаться, от начала до конца, чтобы модуль определил его наличие.
Звуковые примеры будут звучать в звуковом потоке точ-в-точь, т.е. это будет не воспроизведение голосом, примерно и т.п. Анализируемый звук будет состоять из постороннего шума (речь, шум улицы, посторонние звуки) а также воспроизводимого громкоговорителями звука со звуковыми примерами. Громкость воспроизведения звуковых примеров будет достаточной, чтобы их отчётливо слышал человек. Поэтому устройство также должно их воспринимать.
Должно быть создано приложение для проверки работы модуля.
Приложение делает 2 функции: 1) создаёт звуковые примеры (кодирует, шифрует и т.п., задаёт имя файла); 2) После включения режима прослушивания, начинает слушать и сигнализировать о нахождении звукового примера.
Создание звуковых примеров должно быть из заранее подготовленных файлов формата mp3. Запрашиваем файл на устройстве, обрабатываем его и сохраняем в отдельную папку приложения.
Нахождение звукового примера в потоке должно сигнализироваться тем, что на экране приложения показывается и держится 5 сек. имя найденного фрагмента.

Нужны 2 платформы: Android и iOS. Но начинать будем с Андроида. Когда модуль будет сделан и протестирован, тогда можно будет сделать и второй.

Хотел бы услышать, каким способом планируется эту задачу решать?

Цены предлагайте. Бюджет специально не выделялся, т.к. нет понимания того, какого порядка будут цифры.