Освой Android играючи

Сайт Александра Климова

Шкодим

/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000

Распознавание речи

3-й курс/Закрытая зона


Обновлено 23 апреля 2024

Теория
Распознавание речи (Kotlin)
Распознавание речи (Java)
Синтез речи

Первоначально статья была написана под Java для старых версий Android (2-4). С тех пор утекло много воды. Появилось требование разрешений, Kotlin и другие вещи. Старый вариант статьи оставил в конце.

Android поддерживает распознавание речи и синтез речи. На основе этих замечательных технологий создадим проект под кодовым словом "Попугай" - пользователь будет говорить всякие нехорошие слова, программа будет пытаться распознать ваши ругательства и повторять за вами. Всё как в жизни.

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

Теория

Начиная с версии 1.5 (API 3) Android поддерживает голосовой ввод и распознавание речи с помощью класса RecognizerIntent. Этот API позволяет встраивать в приложения голосовой ввод, используя стандартное диалоговое окно.

Речь распознаётся с помощью метода startActivityForResult(), которому необходимо передать намерение, созданное с применением константы RecognizerIntent.ACTION_RECOGNIZE_SPEECH.

Раньше: Наше приложение должно вызвать специальное приложение, способное обрабатывать намерение для распознавания речи. Одним таким приложением является Google Voice Search, который скорее всего установлен на устройстве. Это сервис распознавания речи для Android, который поддерживает множество языков. Для его работы требуется подключение к Интернету, так как процесс распознавания речи осуществляется на серверах Google. Приложение имеет очень простой интерфейс, который информирует пользователей, когда они могут начать говорить. В тот момент, когда пользователь прекращает говорить, диалог закрывается, и наше приложение принимает массив строк с обнаруженными элементами речи.

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

Вы вошли на сайт, как гость.
Необходимо зарегистрироваться, чтобы прочитать статью

Реклама