Примером такого решения является touchless-timer , основанное на pocketsphinx.js (также упоминается в посте Николая Шмырева).Чтобы ответить на ваши вопросы:
- он поддерживает простую грамматику будильника с ~ 60 словами (фразы типа "разбуди меня через пять минут");
- Мне удалосьзапустить его в Chrome Beta 32.0.1700.99 на Android 4.1.2 (на Samsung Galaxy S2), для этого требуется современный движок Javascript, но не требуется Flash;
- для него не требуется сервер, поскольку распознавание речи выполняетсяв автономном режиме в Javascript, и все необходимые файлы могут быть кэшированы с использованием ApplicationCache.
Для этого приложения грамматика была написана в Grammatic Framework и автоматически преобразована в модель конечного состояния исловарь требуется для pocketsphinx.js.Для простой грамматики «MP3 play / pause» вы можете легко написать FSA напрямую.
Английские акустические модели в этом приложении не очень хороши, то есть они могут запутаться из-за воспроизведения MP3 в фоновом режиме.Вы можете улучшить это, обучая лучшие модели.Однако более качественные модели могут быть больше (например,> 20 МБ в Javascript) и больше не помещаться в память или просто очень медленно запускать / загружать приложение.
Снимок экрана приложения, работающего на мобильном телефоне: