Программа, реализующая голосовое управление персональным компьютером на базе ОС Windows
Описание:
Номер в архиве: 2595
Версия .net 4.0, язык программирования C#, с применением технологии WPF и сервиса Yandex SpeechKit (по бесплатной лицензии упоминание о яндексе необходимо в рамках проекта, т.е. в разделе о программе и т.п.) поддерживаемые системы WinXP – Win10, с условием наличие среды выполнения .net 4.0.
Также в программе имеются недокументированные возможности использования сервиса от компании гугл. Данный сервис распознавания имеет более лучшие возможности распознавания, но поддержим отечественного производителя. Также гугл позволяет в бесплатном режиме только 50 запросов в сутки (против яндекса - 10 000 в сутки).
Программа имеет модуль автозагрузки при старте системы. При запущенном приложении в трее появляется иконка запущенного приложения. При клике правой кнопкой вызывается контекстное меню.
Контрастная тема оформления позволяет слабовидящим пользователям лучше ориентироваться в интерфейсе. При наведении мыши на соответствующий пункт происходит его подсвечивание и озвучивание
Раздел «Настройки»
Позволяет минимальные настройки (цитата: «Необходимо учитывать, что планируемая целевая аудитория – люди с нарушением зрения, двигательных функций и пенсионеры, не знакомые с компьютером»)
Раздел «Список команд» позволяет просмотреть и прослушать доступный список команд голосового управления (список можно расширять)
При наведении на один из пунктов происходит его подсвечивание и надиктовка диктором.
Голосовая функция активируется при помощи горячей глобальной клавиши F5. Почему горячая клавиша, а не как google now? Ответ: сложность реализации.
1. Постоянно пришлось бы мониторить состояние микрофона на наличие звука. Это не проблема, но достаточно большая нагрузка, плюс микрофон монопольно захватывается приложением т.е. не корректная работа в других приложениях.
2. При появлении звука необходимо обрабатывать. Здесь 2 пути решения проблемы, либо писать свой модуль распознавания фразы с нуля, либо слать на сервер для распознания. Первый затратный по времени, второй затратный по ресурсам т.к. при любом шуме будет забиваться канал, частые запросы также могут привести к блокированию api ключа.
3. Голосовое управление может не всегда потребоваться например при просмотре фильма.
Почему клавиша F5? Теоретически можно назначить на любую клавишу, любую комбинацию клавиш. Но клавиши глобальные, соответственно они не должны быть задействованы в других программах (противоречие F5 используется для обновление содержания страниц, папок и т.п.) однако если посмотреть на клавиатуру, данная клавиша находится в ряду обособленным блоком.
Тест:
Процессор: intel i5
Скорость Интернет: 35 Мбит/сек
Фраза: «Открыть настройки»
Количество команд: 4
Время от нажатия кнопки F5 до выполнения команды: 6 сек
Как работают команды
Команды прописываются в файле настроек, который располагается в файле вместе с программой
И представляет из себя обычный xml файл.
Посмотрим на его структуру.
Нас интересуют блоки VoiceCommands.
Раздел «Name» содержит имя, то которое будет отображаться в списке на странице настроек (см выше).
Раздел «Keywords» содержит ключевые фразы по которым будет происходить поиск, ключевые фразы разделяются запятыми. Т.е. здесь перечисляются фразы которые может сказать пользователь для выполнения соответствующего действия.
Раздел «ScriptPath» содержит ссылку на скрипт или тело скрипта которое нужно выполнить. Самописные скрипты рекомендовано ложить в папку script.
Раздел «SoundPath» путь к звуковому файлу озвучивающий в настройках, рекомендовано скачивать и располагать в папке script/sound т.к. практика показала что напрямую из интернета брать озвучивание достаточно длительный процесс, ответ от 1 сек до получения ответа.
Описание
Приложение выполнено с применением технологии .net.Версия .net 4.0, язык программирования C#, с применением технологии WPF и сервиса Yandex SpeechKit (по бесплатной лицензии упоминание о яндексе необходимо в рамках проекта, т.е. в разделе о программе и т.п.) поддерживаемые системы WinXP – Win10, с условием наличие среды выполнения .net 4.0.
Также в программе имеются недокументированные возможности использования сервиса от компании гугл. Данный сервис распознавания имеет более лучшие возможности распознавания, но поддержим отечественного производителя. Также гугл позволяет в бесплатном режиме только 50 запросов в сутки (против яндекса - 10 000 в сутки).
Программа имеет модуль автозагрузки при старте системы. При запущенном приложении в трее появляется иконка запущенного приложения. При клике правой кнопкой вызывается контекстное меню.
Контрастная тема оформления позволяет слабовидящим пользователям лучше ориентироваться в интерфейсе. При наведении мыши на соответствующий пункт происходит его подсвечивание и озвучивание
Раздел «Настройки»
Позволяет минимальные настройки (цитата: «Необходимо учитывать, что планируемая целевая аудитория – люди с нарушением зрения, двигательных функций и пенсионеры, не знакомые с компьютером»)
Раздел «Список команд» позволяет просмотреть и прослушать доступный список команд голосового управления (список можно расширять)
При наведении на один из пунктов происходит его подсвечивание и надиктовка диктором.
Голосовая функция активируется при помощи горячей глобальной клавиши F5. Почему горячая клавиша, а не как google now? Ответ: сложность реализации.
1. Постоянно пришлось бы мониторить состояние микрофона на наличие звука. Это не проблема, но достаточно большая нагрузка, плюс микрофон монопольно захватывается приложением т.е. не корректная работа в других приложениях.
2. При появлении звука необходимо обрабатывать. Здесь 2 пути решения проблемы, либо писать свой модуль распознавания фразы с нуля, либо слать на сервер для распознания. Первый затратный по времени, второй затратный по ресурсам т.к. при любом шуме будет забиваться канал, частые запросы также могут привести к блокированию api ключа.
3. Голосовое управление может не всегда потребоваться например при просмотре фильма.
Почему клавиша F5? Теоретически можно назначить на любую клавишу, любую комбинацию клавиш. Но клавиши глобальные, соответственно они не должны быть задействованы в других программах (противоречие F5 используется для обновление содержания страниц, папок и т.п.) однако если посмотреть на клавиатуру, данная клавиша находится в ряду обособленным блоком.
Тест:
Процессор: intel i5
Скорость Интернет: 35 Мбит/сек
Фраза: «Открыть настройки»
Количество команд: 4
Время от нажатия кнопки F5 до выполнения команды: 6 сек
Как работают команды
Команды прописываются в файле настроек, который располагается в файле вместе с программой
И представляет из себя обычный xml файл.
Посмотрим на его структуру.
Нас интересуют блоки VoiceCommands.
Раздел «Name» содержит имя, то которое будет отображаться в списке на странице настроек (см выше).
Раздел «Keywords» содержит ключевые фразы по которым будет происходить поиск, ключевые фразы разделяются запятыми. Т.е. здесь перечисляются фразы которые может сказать пользователь для выполнения соответствующего действия.
Раздел «ScriptPath» содержит ссылку на скрипт или тело скрипта которое нужно выполнить. Самописные скрипты рекомендовано ложить в папку script.
Раздел «SoundPath» путь к звуковому файлу озвучивающий в настройках, рекомендовано скачивать и располагать в папке script/sound т.к. практика показала что напрямую из интернета брать озвучивание достаточно длительный процесс, ответ от 1 сек до получения ответа.