Continuous Speech Recognition

We are making use of Speech framework for recognising user's voice input in the iOS application. The requirement is to listen to user's voice continuously to detect a command from the input so that the required action can be performed without any manual intervention. For this we are listening to the user's voice continuously and the Speech framework provides us the best transcription. As this is a continuous process, it hits daily permitted limit as mentioned in the document (https://developer.apple.com/library/archive/qa/qa1951/_index.html#//apple_ref/doc/uid/DTS40017662). After 5 minutes or so, the application crashed with console logs as follows :





Console Logs :

PID: 2230



Event: wakeups

Action taken: none

Wakeups: 45001 wakeups over the last 275 seconds (163 wakeups per second average), exceeding limit of 150 wakeups per second over 300 seconds

Wakeups limit: 45000

Limit duration: 300s

Wakeups caused: 45001

Duration: 275.40s

Steps: 102

--------------------------------------------------------------------------------------------------------





This is a feature similar to 'Hey Siri'. We would like to know if there is any other way of achieving continuous speech recognition like 'Hey Siri' feature.

Hi,


I was wondering if anyone had an answer to this? It seems a very common question.


I've looked back over every question on this board and there's very little in the way of activity or responses to questions. That's odd given what a nice service it is.

Hi All, I use continuous speech recognition in an app I have for macOS by setting this bool on the request.

Code Block
recognitionRequest.requiresOnDeviceRecognition = true


Disadvantages
  • Results are not as good as server based results

  • Limited device support

Advantages
  • Works without an internet connection

  • No recognition limits

  • Better privacy for the user

Reference
    Cheers

    Are you running the app in the background? I can successfully record continuous speech for at least 50 minutes (in 1-minute chunks), but only if there aren't any long periods where no speech is recognized, like long pauses in a lecture.
    Continuous Speech Recognition
     
     
    Q