Getting started

We only support the MRCP recognizer service as a gateway to our ASR for users who need to leverage their legacy MRCPv2 tools.
Please keep in mind that this gateway only implements a sub-set of the MRCPv2 specifications that are compatible with our native ASR API: this isn't a port of our ASR engine to cover all of MRCPv2, in any way.

Input protocol

Commands

  • SET_PARAMS
  • GET_PARAMS
  • DEFINE-GRAMMAR (Only builtin grammars are supported, not custom grammars sent as SRGS XML)
  • RECOGNIZE (multiple active grammars supported without weights)
  • STOP
  • START_INPUT_TIMERS

Resource headers

  • Confidence-Threshold
  • No-Input-Timeout
  • Recognition-Timeout
  • Start-Input-Timers
  • Speech-Complete-Timeout
  • Speech-Incomplete-Timeout
  • Content-Type
  • Content-ID
  • Sensitivity-Level
  • Speech-Language (2-letter ISO codes, only "fr" and "en" for the moment)
  • Hotword-Min-Duration (RECOGNIZE method only)
  • Hotword-Max-Duration (RECOGNIZE method only)
  • Recognition-Mode (RECOGNIZE method only)

Output protocol

Output sample

MRCP/2.0 544 RECOGNITION-COMPLETE 2 COMPLETE
Channel-Identifier: 39ac4ea9750a4790@speechrecog
Completion-Cause: 000 success
Completion-Reason: success
Content-Type: application/x-nlsml
Content-Length: 331
<?xml version="1.0" encoding="UTF-8"?>
<result>
<interpretation grammar="session:demo-grammar-0" confidence="1.00">
<instance>je veux changer mon billet</instance>
<input mode="speech" timestamp-start="2020-12-22T11:11:45.620+01:00" timestamp-end="2020-12-22T11:11:47.060+01:00" confidence="1.00">je veux changer mon billet</input>
</interpretation>
</result>

Events

  • START-OF-INPUT
  • RECOGNITION-COMPLETE

Headers & statuses

  • Completion-Cause:

    • success
    • no-input-timeout
    • partial-match
    • no-match-maxtime
    • no-match
    • success-maxtime,
    • hotword-maxtime,
    • partial-match-maxtime
  • Completion-Reason

For GET-PARAMS replies:

  • Confidence-Threshold
  • No-Input-Timeout
  • Recognition-Timeout
  • Start-Input-Timers
  • Speech-Complete-Timeout
  • Speech-Incomplete-Timeout
  • Sensitivity-Level
  • Speech-Language

For STOP replies:

  • Active-Request-Id-List