Вопрос

Я пишу приложение, которое будет вести себя похоже на существующее распознавание голоса, но будет отправлять звуковые данные в запатентованную веб-службу для выполнения части распознавания речи. Я использую стандартную Mediarecord (который должен быть закодирован AMR-NB), который, кажется, идеально подходит для распознавания речи. Единственные данные, предоставляемые этим, это амплитуда через getmaxamplite () метод.

Я пытаюсь обнаружить, когда человек начинает говорить так, что когда человек перестает говорить около 2 секунд, я могу приступить к отправке звуковых данных в веб-сервис. Прямо сейчас я использую порог для амплитуды, если он пройдет по значению (т.е. 1500), то я предполагаю, что человек говорит. Моя проблема заключается в том, что уровни амплитуды могут варьироваться в зависимости от устройства (т.е. Nexus one v droid), поэтому я ищу более стандартный подход к этому, который может быть получен из значения амплитуды.

PS Я посмотрел на Графическая амплитуда Но это не обеспечивает способ сделать это только с амплитудой.

Это было полезно?

Решение

Ну, это может быть не очень поможет, но как насчет начать с измерения смещения шума, захваченного микрофоном устройства приложением, и динамически примените порог на основе этого? Таким образом, вы сделаете его адаптируемым к микрофонам разных устройств, а также к окружающей среде, пользователь использует его в данном времени.

Другие советы

1500 слишком низкий номер. Измерение изменения амплитуды будет работать лучше. Тем не менее, это все равно приведет к обнаружению мисс.

Я боюсь единственного способа решения этой проблемы - выяснить, как распознать простое слово или тонус, а не просто обнаруживать шум.

Большинство смартфонов поставляются с датчиком близости. Android имеет API для использования этих датчиков. Это было бы адекватно для работы, которую вы описали. Когда пользователь перемещает телефон рядом со своим ухом, вы можете записать приложение, чтобы начать запись. Это должно быть достаточно легко.

Класс датчика для Android

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top