- Распознавание и генерация речи в Android
- Программируем распознавание речи в Android
- Генерация речи в Android
- BlindDroid
- Навигация
- Android and Samsung
- Категории
- Загрузка компонента для распознавания речи офлайн.
- Pipemaker.ru
- Записная книжка без политики и религии
- Распознавание голоса в Андроиде
- Похожие записи:
- 17 Comments on «Распознавание голоса в Андроиде»
- Перевод речи в текст на Андроид — 10 способов
- Прямая расшифровка от Google
- Google Keep — заметки и списки
- Google Переводчик
- Яндекс Переводчик
- Speechnotes — Речь-в-Текст
- ListNote
- Голосовые заметки — быстрая запись идей и мыслей
- Голосовой блокнот — речь в текст на русском
- Запоминатор — календарь и списки задач
- Яндекс.Разговор: помощь глухим
- Выводы статьи
Распознавание и генерация речи в Android
Последнее время большой интерес у пользователей вызывает возможность распознавания речи в телефонах. Огромная заслуга в популяризации этого направления принадлежит компании Aple, однако Google также располагает подобными технологиями. Собственно этой теме и будет посвящена данная статья. Мы разработаем приложение, которое будет распознавать речь пользователя и воспроизводить результат с помощью голосового движка «Text To Speech» (TTS). Отметим, что распознавание происходит на серверах Google, поэтому для работы приложению необходимо разрешить использовать коммуникационные возможности. Кроме того, распознавание речи не работает на эмуляторе. Тестировать программу необходимо на реальном устройстве.
На самом деле работать с распознаванием и синтезом речи в Android очень просто. Все сложные вычисления скрыты от нас в довольно элегантную библиотеку с простым API. Вы сможете осилить этот урок, даже если имеете весьма поверхностные знания о программировании для Android.
Давайте создадим новый проект в Eclipse. Для наших нужд понадобится версия SDK не меньше 8. Опишем в общих чертах создаваемую программу. При запуске приложения пользователю будет показана кнопка, после нажатия на которую пользователю будет предложено надиктовать фразу. Затем будет осуществлено распознавание и будет показан список возможных вариантов. Поскольку технологии распознавания речи далеки от совершенства, программа не может ручаться за точность результата, именно поэтому будет предложено несколько вариантов. После того, как пользователь выберет один из них, будет запущен генератор голоса, который воспроизведет выбранную фразу.
Нам понадобится несколько текстовых строк, объявим их в фале «res/values/strings.xml»
Откроем файл «res/layout/main.xml» и зададим шаблон дизайна приложения. Для этого переключимся из графического в XML редактор и изменим содержимое файла
Добавим в Linear Layout элемент Text View
обратите внимание, TextView ссылается на строку intro, которую мы задали в файле strings.xml.
После Text View добавим кнопку
Пользователь будет нажимать эту кнопку, чтобы начать говорить. Кнопка имеет параметр id, через который ее можно вызвать из Java кода. После нажатия на кнопку пользователю показывается сообщение. Нам также понадобится TextView для вывода слов с предложениями
TextView будет использовать строковый ресурс. Нам также понадобится список для вариантов слов
ListView будет заполняться данными в процессе работы программы, поэтому для доступа к этому компоненту также требуется ID. Обратите также внимание на наличие ресурса drawable. Вы должны сохранить файл words_bg.xml в папке res
Ничего особенного. Вы можете настроить дизайн ListView по своему усмотрению. Нам осталось задать еще один элемент пользовательского интерфейса — шаблон для элемента ListView. Создайте новый файл res/layout/word.xml со следующим содержанием
Таким образом, каждый элемент списка представляет собой просто Text View.
Если Вы все сделали правильно, то при запуске должно получиться следующее
Программируем распознавание речи в Android
После того, как шаблон будущего приложения создан, можно перейти к кодированию. Откройте java файл главной Activity и добавьте в начало файла
Изменим немного декларацию главного класса
OnInitListener необходим для работы TTS движка. Внутри класса добавим объявления переменных перед методом onCreate
Внутри метода onCreate автоматически сгенерирован код, вызывающий метод родительского класса и устанавливающий главный контекст вывода.
Cоздадим переменные для работы с кнопкой и списком распознанных слов
Далее необходимо проверить поддерживается ли возможность распознавания голоса телефоном
Мы запрашиваем среду, поддерживается ли Recognizer Intent. Если поддерживается, мы говорим приложению, что нужно отслеживать щелчок пользователя по кнопке. Если интент не поддерживается, мы блокируем кнопку и выводим соответствующее сообщение пользователю.
Напишем код, обрабатывающий нажатие на кнопку. Внутри класса после метода OnCreate добавим метод OnClick.
Как видите, при нажатии на кнопку мы вызываем метод listenToSpeech().
Большая часть приведенного кода стандартна для программ, использующих распознавание голоса. Обратите внимание на параметр EXTRA_PROMPT. Он задает строку-приглашение для пользователя. Параметр EXTRA_MAX_RESULTS определяет максимальное число вариантов распознавания. В конце концов, мы вызываем startActivityForResult. Результат его работы будет передан в метод onActivityResult.
На следующем скриншоте показан экран в момент распознавания речи.
Определим метод onActivityResult
Обратите внимание, при проверке результата мы сравниваем переменную requestCode с константой VR_REQUEST, которую использовали ранее при вызове метода startActivityForResult. Таким образом, мы рассматриваем только результаты от нашего запроса. В метод возвращается 10 вариантов распознанных слов, которые мы записываем в список ArrayList. Этот список мы используем в ArrayAdapter компонента List View.
Если приложение справилось с задачей и смогло что-то распознать, вы увидите похожий н показанный на левом скриншоте результат. Если приложению не удалось распознать фразу, будет показано сообщение, как на правом скриншоте
Вот, собственно и все. Распознавание голоса в Android — довольно простая задача. Мы вызываем интент RecognizerIntent с требуемыми нами параметрами. Результат возвращается в onActivityResult.
Генерация речи в Android
Перейдем ко второй части нашего приложения, связанного с генерацией речи. Мы хотим, чтобы телефон проговаривал фразу из списка результатов. Мы должны определить строку, на которую щелкнул пользователь. Вернемся к методу onCreate и добавим в конец этого метода код
Мы используем метод setOnItemClickListener чтобы установить отслеживание щелчков для каждой строки. Внутри нового объекта OnItemClickListener мы описали метод onItemClick, который вызывается в ответ на щелчок по строке списка. Выбранная строка передается, как View в этот метод. Поскольку при проектировании шаблона приложения мы указали, что наш список состоит из TextView, мы преобразуем полученное значение в объект TextView и достаем из него строковое значение. Мы записываем это слово в лог и показываем пользователю Toast сообщение.
Если Вас не интересует процесс генерации речи, Вы можете остановиться и протестировать приложение.
Для генерации речи необходимо настроить движок TTS. Добавим код в конец метода onCreate
Как и в случае распознавания, результат интента возвращается в метод onActivityResult. В этом методе перед строкой super.onActivityResult(requestCode, resultCode, data); добавьте
Таким образом, мы проверяем наличие TTS движка, и если он не установлен — предлагаем пользователю установить соответствующую программу.
Чтобы завершить настройку TTS, добавим метод onInit, который вызывается при успешной инициализации TTS.
Здесь мы устанавливаем язык генератора речи.
Для того, чтобы заставить движок проговорить строку, нужно вызвать метод repeatTTS.speak. Вернемся к методу onCreate. Внутри метода onItemClick после строки Toast.makeText(SpeechRepeatActivity.this, «You said: «+wordChosen, Toast.LENGTH_SHORT).show(); добавьте следующий код
Таким образом, одновременно с Toast сообщением пользователь услышит сгенерированную речь. Отметим еще раз, что эмулятор не поддерживает распознавание речи, поэтому тестировать программу необходимо на телефоне.
Источник
BlindDroid
Навигация
Android and Samsung
- Октябрь (4)
- Август (2)
- Июль (7)
- Июнь (5)
- Май (5)
- Апрель (1)
- Март (2)
- Февраль (8)
- Январь (6)
Категории
Загрузка компонента для распознавания речи офлайн.
Чтобы распознавание речи работало офлайн, нужно на устройствах с версией Android 4.1 и выше, подгрузить русский голосовой офлайн пакет. Подчёркиваю, если версия Android ниже чем 4.1, то офлайн распознавание не было ещё Google предусмотрено, можете даже не стараться его искать.
Для загрузки компонента офлайн на ваше устройство, нужно пройти по пути:
- Для 4.1: Настройки тел\Язык и ввод\Голосовой поиск\Распознавание речи офлайн\Все,
- Для 4.3: Настройки тел\Моё устройство\Язык и ввод\Голосовой поиск\Распознавание речи офлайн\Все,
- Для 8.1: Настройки тел\Google\Поиск, Ассистент и голосовое управление\Голосовой поиск\Распознавание речи офлайн\Все,
В списке предлагаемых пакетов найти «русский (Россия)» и загрузить его. После этого действия, распознавание речи должно работать без подключения к интернету.
Внимание! Пути настроек были указаны на примере аппаратов Samsung, которые шли с версией ОС Android 4.1, 4.3, 8.1.
Ещё можно проверить настройку по пути:
- Для 4.1: Настройки тел\Язык и ввод\Распознавание голоса,
- Для 4.3: Настройки тел\Моё устройство\Язык и ввод\Распознавание голоса,
нужно чтобы там было отмечено «Google».
На некоторых устройствах иногда встречается так, что по указанному выше пути, вы можете не обнаружить раздел «Голосовой поиск». Связано это может быть с тем, что производители устройств не Предустановили сервис голосового поиска Google в операционную систему. Лечится это установкой приложения «Google поиск».
Если вдруг у кого-то, по какой либо причине не получается установить из play stor, тогда можно попробовать загрузить отсюда: Поиск Google (Google Search) — 4PDA.
Источник
Pipemaker.ru
Записная книжка без политики и религии
Распознавание голоса в Андроиде
В очередной раз обновив прошивку в своем HTC HD2 (там речь идет о NexusHD2 JellyBean 4.1.2. Сейчас я зафанател от Dark!dea JellyBean CyanogenMod10 ROM), столкнулся с неприятной штукой. В программе «Помнить все» никак не желали распознаваться голосовые напоминания. Пишет «на телефоне нет поддержки распознавания голоса» и баста.
Закатав рукава бросился на поиски решения. И нашел приложение «Voice Search (Русский голосовой поиск)». Установил — все заработало.
Так что если вдруг столкнулись с подобным — лечение есть!
Похожие записи:
17 Comments on «Распознавание голоса в Андроиде»
Спасибо огромное, скачал приложение на андроид 4.1 и все заработало, еще раз спасибо большое.
Не за что. Для того и писал, чтоб и у других работало.
У меня планшет андройд 4.0 захожу на гугл маркет пишет что войс не поддерживается на моем устройстве((((
Попробуйте с 4pda скачать и установить вручную.
Молодец! БАЛЬШОЕ СПАСИБО.
Не помогло, скачал и установил с гуглплэя и тоже самое вмё равно пишет Hts one.
Спасибо. На Explay Atom (Андрюша 4.2.2.) сразу всё заработало.
была та же проблема
Спасибо огромное, скачал приложение на андроид 4.2 и все заработало.
JIAYU 4S
Спасибо большое все заработало
Вам спасибо. Не зря писал значит.
Благодарю, все пашет. Для того же приложения и искал))
Привет.Выручайте. В маркете моих приложениях пишет установленно,но в меню значка нет,скачиваю любой другой голосовой поиск,пишет:»К сожалению у вас не установленна программа для распознования речи.(аппарат galaxy s4 mini)
Ровно такая же ерунда приключилась. Позавчера не смог его установить, при этом в google.play пишет, что установлено.
Здравствуйте,у меня планшет Acer и когда я вставляю наушники гугл начинает заваливать меня распознованием речи!сил больше нет-как отключить это,ибо я никогда этим голосовым поиском не пользуюсь!
Затрудняюсь сказать. Посмотрите в настройках.
Источник
Перевод речи в текст на Андроид — 10 способов
В некоторых ситуациях, пользователям необходим перевод голоса в текст на Андроид устройствах. Согласитесь, что это удобно: сохранить надиктованное голосом в мобильном устройстве сразу в текстовом виде, а не в аудио файле.
Перевод речи в текст на телефоне Андроид нужен, когда требуется получить тестовое содержимое речи собеседника, сохранить в тексте свою надиктованную речь. Распознавание речи из аудио источника в текстовый вид называется транскрибацией.
Обычно, для транскрибации используется аудио запись, которую расшифровывают, переводя в текст. Делать это можно вручную или автоматически, при помощи программ и онлайн сервисов.
Перевод аудио в текст на телефоне Андроид можно выполнить при помощи соответствующих приложений или сервисов. Программное обеспечение автоматически выполняет распознавание речи на мобильных устройствах Андроид, преобразовывая голос в текст.
Функция распознавания речи востребована людьми, имеющими проблемы со слухом. Благодаря переводу голоса собеседника в текстовый вид, они не станут испытывать затруднений во время разговора по телефону.
Благодаря развитию речевых технологий, пользователь имеет возможность надиктовать свои мысли и сразу получить их в текстовом виде, которые затем можно использовать в своих целях, например, сохранить в виде файла, послать по e-mail, поделиться в мессенджере, вставить в чат и т. п.
В этом руководстве вы найдете несколько инструкций, для решения вопроса преобразования речи в текст, при помощи специализированных приложений и онлайн сервисов в операционной системе Android.
Прямая расшифровка от Google
Приложение «Прямая расшифровка от Google» разработано для людей с ограниченными возможностями, в частности с нарушениями слуха. Программа автоматически распознает голос и звуки, выводит разговор на экран в виде текста.
Распознавание голоса на телефоне нам поможет перевести голос в текст, а результатом этого можно воспользоваться по своему усмотрению. Вы самостоятельно можете надиктовать текст в приложении, или получить в текстовом виде разговор со своим собеседником. Отвечать собеседнику можно с помощью клавиатуры или голосом.
Основные возможности приложения «прямая расшифровка от Google»:
- программа работает на мобильных устройствах, начиная с версии Android 5.0 (Lollipop);
- поддержка более 70 языков;
- поддержка внешних микрофонов;
- возможность ответа собеседнику с помощью экранной клавиатуры;
- виброотклик при начале разговора;
- расшифровка текста доступна только на вашем устройстве.
Установите программу из магазина Google Play по этой ссылке . После установки приложения, его необходимо активировать в настройках мобильного устройства.
На телефоне, работающем под управлением операционной системы Android 9 (Pie) это можно сделать следующим образом («чистый» Android):
- Войдите в настройки телефона.
- Выберите «Спец. возможности», нажмите на опцию «Прямая расшифровка».
- Предоставьте необходимые разрешения для этого приложения.
- В параметре «Use service» передвиньте кнопку переключателя в положение «Включено».
В нижнем правом углу экрана появится кнопка приложения в виде человечка с расставленными руками. Этот значок используется для запуска приложения «Прямая расшифровка» в любой программе на вашем мобильном устройстве.
Запустите приложение, войдите в настройки. Здесь можно выбрать подходящие параметры для работы приложения:
- размер шрифта;
- возможность для сохранения расшифровки в течение 3 дней;
- включить темную тему;
- выбрать основной и дополнительный язык;
- очистить историю;
- включить вибрацию при возобновлении речи;
- отмечать звуки, отличные от речи;
- скрывать непристойную лексику с помощью символов;
- показывать кнопку приостановки расшифровки.
Преобразование голоса в текст в приложении «Прямая расшифровка от Google» происходит следующим образом:
- Для запуска расшифровки голоса, нажмите на кнопку в нижней части экрана.
- Откроется окно приложения, в котором написано: «Готово к расшифровке».
- Начните говорить, речь отобразится в виде текста на экране смартфона.
Расстановка знаков пунктуации в русском языке не поддерживаются.
Распознанный текст можно скопировать в окно любой текстовой программы для дальнейшего редактирования или сохранить на устройстве в течении 3 дней, при условии, что включена данная опция. Отредактированный текст сохраните в файл на телефоне или отправьте адресату в мессенджер, в облачное хранилище, по электронной почте и т. д.
В приложении можно записывать телефонные разговоры.
Google Keep — заметки и списки
Приложение «Google Keep — заметки и списки» служит для создания заметок, которыми можно пользоваться на разных устройствах. Заметки автоматически синхронизируются.
Наряду с ручным вводом текста, в программе имеется голосовой ввод для создания голосовых заметок. Скачать приложение можно здесь .
Голосовой ввод текста проходит в несколько шагов:
- Откройте приложение «Google Keep — заметки и списки» на телефоне.
- Предоставьте необходимые разрешения для работы программы.
- В нижней части экрана нажмите на значок голосового ввода (микрофон).
- Надиктуйте голосовую заметку.
- После завершения, содержание заметки отобразится на экране телефона. Здесь можно прослушать запись заметки или отправить заметку адресату.
Google Переводчик
В операционной системе Android распознавание речи в текст могут выполнить переводчики. Используйте соответствующее приложение или онлайн версию переводчика на веб-сайте в браузере, установленном на телефоне. Во втором случае, можно не использовать приложение, сохранив некоторую часть места и ресурсов на своем устройстве.
Перевести речь в текст можно следующим образом:
- Откройте Переводчик Google, выберите язык перевода, в нашем случае — русский язык.
- Нажмите на значок микрофона (Голосовой ввод).
- Предоставьте доступ к микрофону.
- Говорите, в окне переводчика отобразится ваш текст и перевод на английский язык.
Для того, чтобы воспользоваться переводом на русском языке, нажмите справа на переводимый язык «английский», а потом выберите русский язык. После этого, окно перевода станет на русском языке. Теперь вы можете скопировать перевод в нужное место.
Яндекс Переводчик
Приложение Яндекс Переводчик имеет функцию преобразования речи в текст. Пользователь может надиктовать голосом, а программа переведет сказанное в текст. Заодно можно получить перевод на иностранный язык, если это нужно.
Распознавание голоса в текст в Яндекс Переводчике:
- Откройте Яндекс Переводчик, выберите направление перевода.
- Нажмите на значок голосового ввода (микрофон).
- Говорите, приложение будет вводить текст параллельно на русском (исходный текст) и иностранном языке (перевод).
Для того, чтобы у вас появилась возможность поделится получившимся текстом или сохранить его в удобном месте, измените направление перевода, в нашем случае с английского на русский. После этого, у вас появятся два одинаковых текста на русском языке. В поле для перевода станут доступными кнопки «Отправить с помощью» и «Сохранить».
Speechnotes — Речь-в-Текст
Speechnotes — программа перевода голоса в текст для Андроид. Это популярное бесплатное приложение для создания заметок.
Основные возможности Speechnotes:
- Отсутствует необходимость в регистрации.
- Поддержка Bluetooth.
- Установка знаков препинания с помощью уникальной запатентованной клавиатуры или голосовой команды.
- В премиум версии можно использовать настраиваемые клавиши с заранее заготовленными шаблонами текста (подпись, имя, поздравление и т. п.).
Создание заметки проходит следующим образом:
- Нажмите на микрофон, диктуйте слова и знаки препинания.
- Итоговый текст можно сохранить на устройстве, отправить адресату, на печать/экспорт в PDF и т. д.
ListNote
Приложение ListNote предназначено для создания заметок при распознавании речи в текст. Для работы программы необходимо наличие на устройстве Google Voice Search (голосовой поиск Google), который установлен на большинстве смартфонов или планшетов.
Особенности программы ListNote:
- Запуск одной кнопкой.
- Текстовый редактор.
- Защита заметок паролем.
- Фильтрация заметок по цвету и категориям.
- Экспорт заметок в SMS, по e-mail, в другие приложения, принимающие текст.
- Возможность продолжить заметку в другое время.
- Поддержка ввода голосом знаков пунктуации.
Выполните следующие действия:
- Нажмите на кнопку «Распознавание речи».
- Надиктуйте заметку голосом.
- Приложение отобразит текст из вашей речи.
Голосовые заметки — быстрая запись идей и мыслей
Приложение «Голосовые заметки — быстрая запись идей и мыслей» можно скачать из Google Play Market здесь . В программе есть два варианта преобразования надиктованного: аудиозапись и распознавание речи в текст. Приоритетный вариант нужно выбрать в настройках приложения.
В приложении имеются следующие функции:
- Аудиозапись заметки.
- Напоминания.
- Редактирование полученного текста.
- Разделение заметок на категории.
- Выбор цветовых схем.
- Экспорт или импорт в машинном формате (JSON) или в текстовом формате (TXT).
Для добавления заметки, пройдите шаги:
- Нажмите на кнопку в правом нижнем углу экрана.
- Выберите тип заметки: аудиозапись или распознавание речи в текст. После выбора опции по умолчанию, этого шаг в дальнейшем не будет отображаться.
- Добавьте заметку в категорию, поделитесь, сохраните на телефоне или отредактируйте заметку.
Голосовой блокнот — речь в текст на русском
Приложение «Голосовой блокнот» загружается на устройство с этой страницы Google Play. Для работы приложения требуется установка функции «Голосовой ввод от Google».
Для поддержки работы приложения без интернета установите локальный языковый пакет.
- Непрерывный режим диктовки.
- Поддержка управления заглавными буквами.
- Экспорт заметки в локальный файл на устройстве, или в «облако» в интернете.
- Импорт текстовых документов из файловых менеджеров и Google Диска.
- Вырезание и вставка заметок.
- Счетчик слов и символов.
- Откат последнего голосового ввода.
Работа в приложении проходит таким образом:
- Нажмите на кнопку голосового ввода (микрофон).
- Надиктуйте в смартфон заметку.
- Отредактируйте полученный текст.
- Нажмите на кнопку «Настройки» для дальнейших действий с этой заметкой.
Запоминатор — календарь и списки задач
Приложение Запоминатор — органайзер для напоминаний с голосовым набором текста, синхронизированный с Google. Для комфортной работы в приложении, необходимо исключить программу из режима экономии батареи мобильного устройства.
Запоминатор имеет следующие особенности:
- Большое количество настроек напоминаний.
- Быстрый доступ к таймеру на короткое время.
- Голосовой набор даты и времени.
- Напоминание голосом.
- Список дел и заметок.
Выполните следующие действия:
- Откройте вкладку «Заметки», нажмите на микрофон.
- После появления оповещения начните говорить.
- Распознанный текст отредактируйте, а затем сохраните в программе.
Яндекс.Разговор: помощь глухим
Приложение «Яндекс Разговор: помощь глухим» можно установить с этой страницы магазина Google Play. Программа помогает глухим и слабослышащим людям общаться между собой.
Для получения функции распознавания речи, приложение могут использовать люди с нормальным слухом. Необходимые условия для нормальной работы приложения: разговор на русском языке с одним человеком в не шумном месте, наличие высокоскоростного интернета.
Возможности приложения Яндекс Разговор:
- Все, что вам говорят на смартфоне, программа отображает в виде текста на экране.
- Произношение текста вслух.
- Имеется набор готовых распространенных фраз.
- Сохранение записи диалогов в аудио и текстовом форматах.
Порядок действий в программе:
- На начальном экране приложения с готовыми фразами, нажмите на кнопку «Новый диалог».
- Нажмите на кнопку микрофона.
- Говорите с собеседником, его слова будут напечатаны текстом на экране.
- В ответ набирайте текст, а телефон произнесет набранную фразу.
Фразы можно развернуть на весь экран, чтобы собеседник мог прочитать на расстоянии. Для этого нажмите на нужный абзац текста.
При необходимости, фразы копируются в буфер обмена.
Выводы статьи
В операционной системе Android пользователи имеют возможность для использования функции распознавания речи в текст, которая реализуется при помощи онлайн сервисов и приложений. Произнесенная речь, с помощью технологий распознавания голоса, преобразуется в текст, отображающийся на экране мобильного устройства.
Источник