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

Welcome to Cisco Support Community. We would love to have your feedback.

For an introduction to the new site, click here. And see here for current known issues.

New Member

H323: Who is responsible for using an MTP?

Does anybody which end of a call is resonsible for using an MTP?

Is it the caller?

..... the called part?

..... or always Call Manager?

I am trying to troubleshoot a one way audio issue on inbound calls after call is placed on hold and then resumed.

We have an integration between CCM4.3(2) and a Nortel CS2K Softswitch. The Cisco IP Phones are using G729a 20ms and the Nortel CS2K Softswitch is using G711alaw 10ms. Consequently, we have deployed a Cisco 3825 SP Services 12.4(16b) as a hardware transcoder.

We can establish successfully inbound and outbound calls. However, when the inbound call is modified (placed on hold) we get one way audio.

Traces show that outbound calls utilise hardware MTP but inbound calls do not.

Furthermore, packet traces also show that there are duplex G711 A LAW RTP streams between the xcoder and Nortel softswitch before and during the call is placed on hold. But after a Resume softkey is pressed, the xcoder starts sending G711 U LAW RTP packets to the softswitch. This is successfully relayed to the phone on the softswitch but the RTP stream from the Nortel switch, still G711 A LAW to the xcoder is not relayed to the IP phone.

Obviously, we have a codec mismatch, but can not tell why it changes to ULAW after placing a call on hold. Is this a defect with the IOS or is there something wrong with our configuration?



PSTN <- Nortel H323 Softswitch (G711alaw 10ms) <- c3825-spservicesk9-mz.124-16b (XCODER/HW MTP) <- CCM 4.3(2) <- (G729a 20ms) CP7941

Outbound call from IP Phone to PSTN is successfully established. One transcoder session and one hardware MTP session is used. When call is placed on hold by IP phone and then resumed a two way audio stream is re-established.



PSTN -> Nortel H323 Softswitch (G711alaw 10ms) -> c3825-spservicesk9-mz.124-16b (XCODER) -> CCM 4.3(2) -> (G729a 20ms) CP7941

Inbound call from PSTN to IP Phone is successfully established. One transcoder session is used but no hardware MTP session is used (for some reason). However, when call is placed on hold by IP phone and then resumed there is audio from IP phone to PSTN but not PSTN to IP Phone.

Any help much appreciated.

Kind regards


New Member

Re: H323: Who is responsible for using an MTP?

A couple of general questions to start with.

1. Do you have the applicable codecs assigned to the transcoder profile.

2. Do you have the transcoder and MTP in a MRGL assigned to both the phones and the gateway

New Member

Re: H323: Who is responsible for using an MTP?

Hi e.huntley

Thank you for your quick response.

1. Yes we have G711 a and u law plus G729a.

dspfarm profile 1 transcode

codec g711alaw

codec g729ar8

codec g711ulaw

maximum sessions 85

associate application SCCP


2 Yes, the phone and H323 Trunk both use the same MRGL which contains the same xcoder and HW MTP.

Kind regards


New Member

Re: H323: Who is responsible for using an MTP?


I will try to give you some points of thoughts to look at it the way you like and please tell me the result

What is the Transcoder MTP being defined on the CUCM it IOS MTP or IOS enhanced MTP ?? it should be Enhanced MTP.

As it is on 38xx ISR so I suppose it is PVDM2 [if it is on the Motherboard ] so try to make the Codec complexity to be FLEX not medium [ also specify if it is on NM or not]

Try Also to check The "MTP required" check box on the CCM H225 trunk configuration [ Try it and see if it makes a difference ]

Normally the DSP should transparently comply with G711u/a law ...although it is not a normal behavior to begin streaming in U law , but it is normal in some cases as the Main codec coded in the DSP firmware is to stream U law

Tell me what is the DSPware version ? try to change it to another one [ with IOS 12.4(15)Tx ) is good

New Member

Re: H323: Who is responsible for using an MTP?

Hi Abdel,

Thank you for your response.

Yes I can confirm that we are using IOS Enhanced MTP's and that the codec complexity is flex. The PVDM2's are on a NM-HDV with no voice port. The "MTP required" is ticked, hence it using it for outbound calls.

The DSPware version is 4.4.26. We did try 12.4(15)T5 but that didnt make any difference. The MTP was still not used for inbound calls. Consequently, when the call was placed on hold, the codec between the IP phone and the transcoder changed from alaw to ulaw.

Kind regards


New Member

Re: H323: Who is responsible for using an MTP?

MTP is checked to Support Suppelemntry services with 3rd party H323 , or softswitch , and also forces the use of MTP in the Call flow

so does it matter if you MTP checked or Not ?

Another thing

try to make Two MRGs , With Two MRGL put the the Same Xcoder in both and assign one to the GW and the other to the IP phone

try it

New Member

Re: H323: Who is responsible for using an MTP?

Tell me , Any result of the Testing

Did you able to solve the Issue?

New Member

Re: H323: Who is responsible for using an MTP?

Hi Abdel,

The issue is still outstanding.. we are progressing with a TAC case.

The current status is that the xcoder is changing the codec because an MTP is not being invoked for inbound calls.

We have found from the CCM traces that the the MTP is getting allocated...

05/16/2008 13:40:50.595 CCM|DeviceManager::findDeviceInfoGivenKey - Name=PKR_MTP1 Key={7224403E-A4ED-4D7F-9290-672A85A8379C} Pid=(3,62,33)|

But the MTP doesn't support G729 (capBcount is the cap count for the MTP which is only so this looks to be software MTP with G711a/ulaw)

05/16/2008 13:40:50.595 CCM|RegionsServer::MatchCapabilities -- kbps=64, capACount=3, capBCount=2|

05/16/2008 13:40:50.595 CCM|RegionsServer::MatchCapabilities -- kbps=8, capACount=9, capBCount=2|

05/16/2008 13:40:50.595 CCM|MediaTerminationPointControl(33)::waiting_AllocateMtpResourceReq - ERROR - mismatch cap. match1=1, match2=0|

So this explains why MTP is not being used for inbound calls.

So we are left to reconfigure out hardware MTP to support G729. Currently it is...

dspfarm profile 2 mtp

codec g711alaw

maximum sessions hardware 86

associate application SCCP

But we are unable to set any other codec on the ISR.

New Member

Re: H323: Who is responsible for using an MTP?


Your are right the CCM trace Doesnt Allocate the Correct MTP resource for Transcoding and Media Termination

Normally in PVDM2 , DSPFARM profile for the Xcoder supports the MTP functionality with diverse codecs .

Define the DSPFARM for Xcoder not MTP and Allow the G729ar8 put it in a seperate MRG called "HW_XCODER_MTP" and creat a MRGL specially for the IP phone and put it on the Device level

Also put the other MRGL to the GW...

I know it is all the Same HW MTP , but try to see the difference in the Trace when you do that

New Member

Re: H323: Who is responsible for using an MTP?

Hi Christopher,

your issue is interesting for me as the description is exactly the same as an issue I've seen on a voip network I've installed.

I've opened a severity 1 case with TAC because a callcenter connected behind the CUCM with a H323 trunk was having very big troubles and one way voice because of the codec problems with MTP.

Through the case I've learned the following:

- Check if your calls are going through the default dialpeer 0.

( seen with sh voice call status). When it is the case, add an inbound voip dialpeer with incoming called number 0T (the same as the outgoing pstn pots destination pattern) and add a voice class codec list with the needed codecs.

- Fact: Default dialpeer is using G729 in one direction#

- Fact: g711alaw/ulaw transcoding is hard coded and should not use any ressources in the dsp pool. Tha't why the target should be to not use MTP on the Gwy config in cucm as ressources are burned.

My solution:

- use H323 slow start under voice service voip

- use only mtp maximum sessions sw (hw not needed as transcoding ressources are used when needed)

- unckeck MTP on gwy config in cucm

- keep video call as audio call checked ( because existing video clients such as video adv. are transmitted in "unrestriced digital" on the isdn if not checked.

- use MRG and MRGL with only the router resoures included and cucm moh and annunciator (because it is ever needed)

- use a voice class codec list in the following order : g711ulaw (most used into the voip network, g711alaw for fax/modem or pstn calls europe, g729.

In my case, after this config I could see that no more unnecessary resources on the router were used, and if MTP was necessary for some pstn features like external tranfers to a pstn mobile phone, the sw mtp's were used.

What I've seen also is that if you are trying to use cucm resources instead of router resources, you will rapidely have critical system messages about exhausting mtp/transcoding resources on the cucm.

I did no find out how the limitation on the cucm is and if it is possible to increase the threshold on the cluter.

It would be very interesting for me to know how you did resolve the issue as I've find also the use of transcoding and of mtp's a little bit strange...

For your information: pstn is located in germany and switch type is isdn primary net 5



New Member

Re: H323: Who is responsible for using an MTP?

Hi Jacky,

Thank you for taking the time to respond to my query.

I too have an open Cisco TAC case. It is currently with the developers as we think I may have hit CSCeb75407 (which is not publically assessible!!)

I am not using any dial peers as this is a H323 Gatekeeper controlled trunk directly between Call Manager and the Nortel Soft switch. The transcoders are only signalled via Skinny.

I agree with you, if an call is passed through a transcoder then an MTP is not required as it should be able to support both roles. However, I was finding that on outbound PSTN calls it used a MTP with the xcoder (and worked perfectly). But when it was an inbound PSTN call it didnt use an MTP with the transcoder. Consequently, the transcoder somehow changed codecs from G711alaw to G711ulaw as soon as the call was hold/resumed and I got one way audio.

It is interesting that you mentioned H323 slow start though. I am using fast start as directed by some previous interop testing. But I will give that a try.

It appears (again due to another defect) that Hardware DSP's can only support G711 MTP mode. Since the my original post, I have switched to using IOS Software MTP's. This gives me (on a 3825 ISR) a maximum of 200 sessions, against the default ceiling of 24 on a Call Manager.

My issue is still outstanding. As a work around, I have changed the codec of the IP phones and the Nortel softswitch to G729a 10ms, thus matching the capabilities and temporarily eliminating the need for the transcoder. As soon as I did that MTP's were being invoked in both directions, with one exception!!!! When an inbound PSTN call is ultimately forwarded to a Unity Connection box, it doesnt use an MTP and I get one way audio again. Arrrgh!! I suspect is because the capabilities dont match again and I need a transcoder - here we go again!!

Thanks for help.

Kind regards