/1998

React Native proof of concept for ASR and TTS

Primary LanguageJavaScript

1998

https://www.reddit.com/r/pics/comments/5oyhfy/salt_squared/dcn6dk1/

A simple copycat app that will listen for what you say and repeat it back.

Run

npm install
npm link
react-native {run-ios || run-android} # NB asr and tts don't work in simulators

Lint

npm run lint

Motivation

The experiment had a two-fold purpose:

  1. Proof of concept for in-app companion voice support using react native.
  2. Explore platform support for a retail kiosk assistant.

Backend

The experiment relied on platform-provided ASR and TTS services, and did not attempt to implement such itself. The implementation was simply a copy cat (perform Automated Speech Recognition on via a microphone, and repeat the ASR'd speech back via Text to Speech). No natural language understanding was attempted.

NLU

Unimplemented

ASR

Platform-supplied. Tested using Google Voice and Apple Siri.

Other native ASR options: Alexa on Android, Pocketsphinx.

TTS

Platform-supplied. Tested using Google's Android.speech.tts and Apple Speech

Frontend

React Native, using React Native Voice and React Native TTS.

Other react options: React Native STT, React Native Speech, react-native-bluemix

Platforms

OS ASR TTS Status Devices
iOS 10, 11 Fully Supported iPhone 6S, iPad Mini 2
Android 7, 8 Fully Supported Google Pixel
FireOS 5.4 Android SpeechRecognizer unsupported because they want you to use AVS. Sideloaded Google Play + Google app adds Google ASR Kindle Fire 7
RTAndroid 7.1 Audio system unsupported Raspberry Pi 3
Geek Till It Hertz 7.1.1 Audio system unsupported Raspberry Pi 3
emteria.OS Audio system unsupported Raspberry Pi 3
Android Things 0.5.1 Voice system unsupported Raspberry Pi 3
Raspbian Linux Audio system unsupported Raspberry Pi 3

License

Copyright 2018 Pylon, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.