Cisco Support Community
Showing results for 
Search instead for 
Did you mean: 
New Member

Codec negotiation when a MTP is involved

I need to connect CCM to a 3rd party H.323 gateway. The gateway supports G.729A. If I do not set the gateway in CCM to require a MTP, G.729 is negotiated. of course then hold or transfer drops the call.

If I do set MTP required, the rtp stream is sent to a transcoder resource, which shows a G729A <> G729 session.

Can I force CCM to offer only G729A, or better yet configure the IOS MTP to passthrough the rtp if the codec mismatch is limited to G729A/G729?

New Member

Re: Codec negotiation when a MTP is involved

A transcoder can be used as MTP but no viceversa.

The negotiation will depend on the Endpoint you are using.

Lets say we have the following:

A --> MTP --> B

When MTP is selected and there is a codec missmatch between MTP and either A/B, CCM will connect the call as long as there is a common codec between A/B.

This is because. CCM will always try to preserve the call.

IP phones 7940/60/70/IPC support:






Afaik, there is no way you force CCM to use only G729A, according to the IETF G729 and G729A are compatible, when Devices are registering to CCM, they will announce their Capabilities, CCM will update DB with codecs supported. You can force to use only G729 to speak with the MTP (either G729 or G729A, but not only one).

Not sure about the last question, but I think that answer is No.

New Member

Re: Codec negotiation when a MTP is involved

I fully understand the difference between Transcoders and MTP. What struck me as odd was that Phone -> CCM -> H.323 gateway would negotiate 729A, but Phone -> CCM -> MTP -> H.323 gateway would mismatch and a trascoder would be triggered.

I think you did clue me in on a possible answer though. If I use the "SCCP codec XXX mask" command to configure the MTP, I can filter out the codecs I do not want serviced by the MTP, thereby forcing the 729A to 729A matchup I want.

New Member

Re: Codec negotiation when a MTP is involved

Using 'sccp codec XXX mask' almost did the trick, or at least is uncovered what the real problem is.

Both CCM and the gateway are set to use a 30ms packet size for G.729.

router>show dspfarm sessions

sess_id conn_id stype mode codec pkt ripaddr rport sport

33559628 19870145 xcode sendrecv g729a 60 18186 23006

33559628 19870129 xcode sendrecv g729a 30 18094 19858

I ran 'debug sccp events' and the log clearly shows

both sides being setup with 30ms packet sizes.

So I either have found a bug in the MTP code in IOS 12.3(11)T3, or I seriously do not understand the debug log.

CreatePlease to create content