RTCP and RTCP BYE

129 views
Skip to first unread message

Curatica

unread,
Jun 25, 2009, 11:57:34 PM6/25/09
to UniMRCP
I was surprised that a certain recognition server that I used for
testing, relies on two things:

1. The presence of RTCP messages between the client and the server.
2. Not only that, but they insist to receive an RTCP BYE at the end of
the RTP data. Otherwise, the recognition may fail.

To me this seems a misinterpretation of the standards.

Questions:

1. I believe that RTSP is optional. Is this true?
2. In case RTSP is present, I believe that RTSP BYE is optional.

Is RTSP implemented in UniMRP (with or without RTSP BYE)?

Thank you very much!

Arsen Chaloyan

unread,
Jun 26, 2009, 12:58:03 AM6/26/09
to uni...@googlegroups.com
Hi Vlad,

On Fri, Jun 26, 2009 at 8:57 AM, Curatica <Cura...@gmail.com> wrote:

I was surprised that a certain recognition server that I used for
testing, relies on two things:

1. The presence of RTCP messages between the client and the server.
2. Not only that, but they insist to receive an RTCP BYE at the end of
the RTP data. Otherwise, the recognition may fail.
 
The role of RTCP is to monitor the quality of service.That's it. I'm not aware of any implementation which actually requires RTCP support from far end, at least it's not reasonable to me.


To me this seems a misinterpretation of the standards.

Questions:

1. I believe that RTSP is optional. Is this true?
I believe you wanted to mention RTCP, but not RTSP here. RTCP is optional, while RTSP is required for v1.

2. In case RTSP is present, I believe that RTSP BYE is optional.
RTSP BYE is required, while RTCP BYE is optional even if RTCP is present.


Is RTSP implemented in UniMRP (with or without RTSP BYE)?
RTSP is implemented, while there is no support for RTCP yet.


Thank you very much!



--
Arsen Chaloyan
The author of UniMRCP
http://www.unimrcp.org

Vlad Socaciu

unread,
Jun 26, 2009, 6:36:56 AM6/26/09
to uni...@googlegroups.com
Sorry, Arsen, obviously all my questions referred to RTCP, not to RTSP.
 
So, I believe that you confirmed that:
 
1. RTCP is optional in any implementation that uses RTP.
2. Furthermore, RTCP-BYE is optional when RTCP is used.
3. UniMRCP did not implement RTCP.
 
Right? (I hope that I used the desired acronym everywhere this time; in English or in French "c" and "s" are sometimes easy to mix).
 
Best regards.

Vlad Socaciu

unread,
Jun 26, 2009, 6:45:52 AM6/26/09
to uni...@googlegroups.com
On Thu, Jun 25, 2009 at 9:58 PM, Arsen Chaloyan <acha...@gmail.com> wrote:
Hi Vlad,

On Fri, Jun 26, 2009 at 8:57 AM, Curatica <Cura...@gmail.com> wrote:

I was surprised that a certain recognition server that I used for
testing, relies on two things:

1. The presence of RTCP messages between the client and the server.
2. Not only that, but they insist to receive an RTCP BYE at the end of
the RTP data. Otherwise, the recognition may fail.
 
The role of RTCP is to monitor the quality of service.That's it. I'm not aware of any implementation which actually requires RTCP support from far end, at least it's not reasonable to me.
Apparently, Nuance server requires RTCP support, at least in the case of a certain functionality, related to the post-speech timeouts. This is weird, indeed. But it may be an uphill battle to demonstrate to them that they are wrong.



To me this seems a misinterpretation of the standards.

Questions:

1. I believe that RTSP is optional. Is this true?
I believe you wanted to mention RTCP, but not RTSP here. RTCP is optional, while RTSP is required for v1.

2. In case RTSP is present, I believe that RTSP BYE is optional.
RTSP BYE is required, while RTCP BYE is optional even if RTCP is present.


Is RTSP implemented in UniMRP (with or without RTSP BYE)?
RTSP is implemented, while there is no support for RTCP yet.


Thank you very much!
Thanks again!

Arsen Chaloyan

unread,
Jun 26, 2009, 7:34:09 AM6/26/09
to uni...@googlegroups.com
Vlad, my comments below,

On Fri, Jun 26, 2009 at 3:36 PM, Vlad Socaciu <cura...@gmail.com> wrote:
Sorry, Arsen, obviously all my questions referred to RTCP, not to RTSP.
 
So, I believe that you confirmed that:
 
1. RTCP is optional in any implementation that uses RTP.
Yes, but this mostly depends on my experience. I've just look through RFC3550 (RTP, RTCP) and RFC3551 (profile)  for the reference, but cannot find any definite statement there, whether RTCP  MUST, SHOULD or MAY be implemented.
Anyway, RTCP as a control mechanism is pretty useless in case RTP is used with higher level signaling protocols like SIP, RTSP, MGCP and MEGACO, ...
While RTCP might be still useful for monitoring: sender and receiver reports and the special case is extended reciever reports.


2. Furthermore, RTCP-BYE is optional when RTCP is used.
Again, I saw many implementations,  which didn't support RTCP at all. There were implementations, which supported RTCP reports but didn't send RTCP BYE.
I don't know why Nuance requires RTCP support, most probably they use RTCP BYE to trigger end of utterance. It should be indeed helpful, but it is a not universal solution at all.

3. UniMRCP did not implement RTCP.
Correct.

Christopher Rienzo

unread,
Jun 30, 2009, 10:28:49 AM6/30/09
to uni...@googlegroups.com
This issue has been confirmed on the Nuance knowledge base and their recommendation is to use a different client or to ask for RTCP to be added to the client.  Will RTCP be implemented in UniMRCP?

Also- the latest draft of MRCPv2 does mention RTCP in the description of the synthesizer resource's SPEECH-MARKER event, but not anywhere in the recognizer resource description.

Arsen Chaloyan

unread,
Jun 30, 2009, 11:24:03 AM6/30/09
to uni...@googlegroups.com
Well, RTCP can be useful in several scenarios, but I still don't think, it's a good idea to rely on and require RTCP support from peer.
From technical view point I see no problem behind RTCP implementation. Sooner or later I'll implement it, but the question is when and for what...

For now, I'd suggest to log this in the issue tracker.

Vlad Socaciu

unread,
Jun 30, 2009, 3:52:28 PM6/30/09
to uni...@googlegroups.com
My impression is that Nuance is dead wrong. First of all, I think that RTCP is optional. Furthermore, RTCP BYE seems to be optional in RTCP. Finally, like Arsen said, RTCP should not be used as a control mechanism.

In fact, Nuance system seemed to work fine if the audio data had enough silence at the end. But the operation of their "incompletetimeout" and "completetimeout" parameters is flawed.

I don't know if this is a perpetuation of a similar bug from Nuance 8.5, but I encouneted a similar problem in this version and their tech support acknowledged that those parameters were screwed up and have always been.

As far as the requirement of using of RTCP for synthesis or recognition, we should ask the MRCP authors; I believe that they are the ultimate authority.
Reply all
Reply to author
Forward
0 new messages