MRCP
# MRCP

Le MRCP (Media Resource Control Protocol) est un protocole proposé par IETF qui a comme but de standardiser les dialogues informatiques entre les moteurs de reconnaissance vocale (Automatic Speech Recognition ou ASR en anglais) et de conversion texte vers voix (Text To Speech ou TTS en anglais) avec les serveurs vocaux interactifs (SVI).

Il s'agit d'un dialogue client-serveur. Le protocole définit les requêtes, les réponses et le contrôle du média. Il est également basé sur une base des protocoles RTSP (Real Time Streaming Protocol) et RTP (Real-time Transport Protocol) dans la version 1, sur SIP (Session Initiation Protocol) dans la version 2.

## Format

Le MRCP se rapproche du protocole HTTP ou d'autres protocoles Internet dans le sens où chaque message contient trois sections :

* la première ligne (first-line) indique le type du message ou des informations comme les codes de réponse ;
* l'entête (header) contient un nombre de lignes dans le format <header>: <data> ;
* le contenu (body) pour lequel la longueur est définie par l'entête contient le détail du message.

Comme plusieurs protocoles, MRCP utilise des requêtes (généralement émises par les clients) et des réponses qui peuvent simplement être des accusés de réception de la requête ou donnent des informations au sujet du traitement. Par exemple, un client MRCP peut faire une requête pour envoyer des informations audio à traiter (say pour la reconnaissance vocale). Le serveur pourra alors répondre en fournissant le port sur lequel fournir les informations (le MRCP ne gère pas directement les informations audio qui sont gérées par un autre protocole comme le RTP ou SIP).

