Media Resource Control Protocol

Протокол управления медиа-ресурсами (MRCP) — это протокол передачи данных, используемый серверами для предоставления различных услуг (таких как распознавание речи и синтез речи) для своих клиентов. MRCP опирается на другие протоколы, в частности, потоковый протокол реального времени (протокол RTSP) или протокол установления сеанса связи (протокол SIP) для установления и управления сеансом аудиопотоков между клиентом и сервером.

MRCP использует похожий формат передачи сигналов с открытым текстом, как HTTP и многие другие интернет-протоколы, в которых каждое сообщение содержит 3 раздела: первая строка, заголовок и тело. Первая строка указывает на тип сообщения, а также коды отклика. Заголовок содержит ряд строк вида <Заголовок>: . Тело, длина которого указана в заголовке, содержит данные сообщения.

Как и HTTP, MRCP использует запросы и модели реагирования. Ответы могут просто подтвердить получение запроса или дать другую информацию, касающуюся его обработки. Например, MRCP клиент может запросить прислать аудиоданные для обработки (скажем, для распознавания речи), на что сервер может ответить с сообщением, содержащим соответствующий номер порта для отправки данных. Так, MRCP не поддерживает конкретно аудиоданные, поэтому данные будут обрабатываться посредством некоторых других протоколов, например, RTP-протокол.

MRCP-протокол версии 2 был утвержден в качестве стандарта RFC. Версия 2 использует протокол SIP для управления сеансами и аудиопотоками между серверами и клиентами, тогда как версия 1 не использовала определенного протокола для этих же нужд.

MRCP был принят множеством коммерческих голосовых приложений, таких как IBM WebSphere Voice Server, Microsoft Speech Server, LumenVox Speech Engine, Neospeech Speech Engine/Server, Nuance Recognizer и Nuance Vocalizer.