Media Resource Control Protocol
Media Resource Control Protocol (MRCP) is a communication protocol used by speech servers to provide various speech services (such as speech recognition and speech synthesis) to its clients. Clients send MRCP messages to the server over a network usually by means of another protocol, such as Real Time Streaming Protocol (RTSP) or Session Initiation Protocol (SIP).
MRCP uses a similar style of clear-text signaling as HTTP and many other Internet protocols, in which each message contains 3 sections: a first-line, a header and a body. The first line indicates the type of message as well as information such as response codes. The header contains a number of lines, each in the format <header>: . The body, whose length is specified by the header, contains the details of the message.
Like HTTP, MRCP has requests (usually issued by the client) and responses, which may simply acknowledge receipt of the request or give other information regarding its processing. For example, an MRCP client may request to send some audio data for processing (say, for speech recognition), to which the server could respond with a suitable port to send the data, since MRCP does not have support for audio data specifically as this would have to be handled by some other protocol, such as Real-time Transport Protocol (RTP).
There are two versions of the MRCP protocol. Version 2 uses SIP as the control protocol, whereas version 1 uses RTSP.
External links
- RFC 4463, A Media Resource Control Protocol (MRCP)
- MRCP version 2 IETF draft specification, version 17
- UniMRCP, An open source cross-platform MRCP implementation