Subject: [AVT] RE: [Megaco] Regarding different payload types in local and remote descriptor for same codec

From: "Schwarz Albrecht" <[email-masked]>
Date: Thu, 27 Sep 2007 08:48:42 +0200

This is not an H.248 issue in my understanding, this relates to the "AVP
Profile", thus a RFC 3550 matter (I've Cc'ed [email-masked]) in my
understandning:
 
When RTP/AVP allows to use different PT codepoint values for the same
media format, then the SDP is correct.
When RTP/AVP does not allow to use different PT codepoint values for the
same media format, then the SDP is incorrect (and the MG must reply with
an error code because the ADD.request was incorrect).
 
-Albrecht
 
PS
Different media formats per traffic direction is possible (but this was
not the question).
 
PSS
I guess that PCMU is not used as "VBD codec" (i.e. with a dynamic PT
value). But if yes, then the SDP is incorrect. The SDP must then follow
V.152, see "a=" line ...

________________________________

	From: Prerna Nagar [mailto:[email-masked]] 
	Sent: Donnerstag, 27. September 2007 01:24
	To: [email-masked]
	Subject: [Megaco] Regarding different payload types in local and
remotedescriptor for same codec

	Hi All,
	 
	Consider a case when a Add request comes to media gateway and
the request looks like:
	 
	Add Request
	{Context = $ { Add = DS/1/1/2 { Media { LocalControl { Mode =
SendReceive } } } ,
	Add = $ { Media { LocalControl { Mode = SendReceive,
ReservedValue = OFF } ,
	Local {
	v=0
	c=IN IP4 $
	m=audio $ RTP/AVP $
	},Remote {
	v=0
	o=- 0 0 IN IP4 -
	s=-
	c=IN IP4 210.2.12.2
	t=0 0
	m=audio 16400 RTP/AVP 106 100
	a=rtpmap:106 PCMU/8000/1
	a=rtpmap:100 X-NSE/8000/1
	a=fmtp:100 192-194
	} } } }}
	 
	Here  "CHOOSE" in Local resolves to a list of codecs supported
by the gatway(PCMU will resolve to 0)
	Next intersection of codecs between local and remote takes
place.
	But here in Local  PCMU has a static value "0" and remote
understands "106" as PCMU (different payload types).
	 
	Question is : How the codec negotiation should work and how the
response should look like?
	 
	Should it look like :
	1. 
	a=tgwrtp/8079  { m { 
	Local {
	v=0
	o=- 0 0 IN IP4 -
	s=-
	c=IN IP4 210.2.12.2
	t=0 0
	m=audio 16400 RTP/AVP 0 100
	a=rtpmap:100 X-NSE/8000/1
	a=fmtp:100 192-194
	 } ,
	Remote{
	v=0
	o=- 0 0 IN IP4 -
	s=-
	c=IN IP4 210.2.12.2
	t=0 0
	m=audio 16400 RTP/AVP 106 100
	a=rtpmap:106 PCMU/8000/1
	a=rtpmap:100 X-NSE/8000/1
	a=fmtp:100 192-194
	 }}  } }}
	 
	or
	2.
	
	a=tgwrtp/8079  { m { 
	Local {
	v=0
	o=- 0 0 IN IP4 -
	s=-
	c=IN IP4 210.2.12.2
	t=0 0
	m=audio 16400 RTP/AVP 106 100
	a=rtpmap:100 X-NSE/8000/1
	a=fmtp:100 192-194
	 } ,
	Remote{
	v=0
	o=- 0 0 IN IP4 -
	s=-
	c=IN IP4 210.2.12.2
	t=0 0
	m=audio 16400 RTP/AVP 106 100
	a=rtpmap:106 PCMU/8000/1
	a=rtpmap:100 X-NSE/8000/1
	a=fmtp:100 192-194
	 }}  } }}
	 
	Regards,
	Prerna

_______________________________________________
Audio/Video Transport Working Group
[email-masked]
https://www1.ietf.org/mailman/listinfo/avt