CUBE codec problem

Unanswered Question
Aug 27th, 2008


I'm having problems with a CUBE used as IPIP h323 to h323 gateway and transcoder (Cisco 2811). In my incoming voip dial-peer I use a voice-class with codecs g711 and g729 declared as follows:

voice class codec 3

codec preference 1 g711ulaw

codec preference 2 g729r8

My scenario is:

Phone A (g711) calls phone B (g729) through CUBE. Then phone A transfers the call to phone C (g729). That's why I need both codecs.

But during the transfer, in TCS h245 message from CUBE I see TCS(g729A,g729), and there is no g711. If I remove g729r8 from voice class, I see TCS(g729A,g711u).

I also thought to declare codecs within the dial-peer configuration section, but it seems to me it is possible to declare only one codec.

Can you help me?



I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
andreasalas8282 Mon, 09/08/2008 - 08:17

Hi Pengke11,

thanks for your reply.

I read those docs, but I still can't understand the point.

It seems to me that CUBE fills H245 TCS message in strange ways, and the call can't be completed.


-> TCS(g711,g729) ->

<- TCS(g729A,g729) <-

and I want the call to be setup in G711 (but I need also g729 in TCS for next call transfer). The voice class contains both g711 and g729, in this order, but the CUBE does not care of g711 and declares 29.

The other part of the call (outbound respect to CUBE) must be only g729.

Where should I look in those docs?

Michael Owuor Mon, 09/08/2008 - 10:20


Try adding the following command in the CUBE configuration:


voice service voip


h245 passthru all


You might also try with 'codec transparent' specified on both the inbound and outbound dial-peers in CUBE in order to allow CUBE to send through all codecs it receives without influencing the codec selection.


dial-peer voice xxx voip

codec transparent


Hope this helps.



andreasalas8282 Mon, 09/08/2008 - 22:53

Hi Micheal,

thanks for your reply.

"codec transparent" command cannot help me, because CUBE must influence codec selection.

The scenario is illustrated in the attached ppt slide. In the first part of the call I want cube to allocate a transcoding resource, to convert g711 (inbound codec, cube perspective) to g729 (outbound codec, cube perspective). After the transfer is done, the call should be all g729. So, if I use codec transparent I am not able to set up first part of the call in g711: cube must force g711 codec on the south, but needs also to allow g729 for the second part of the call.

I hope to have explained it well. If not, please ask me.



m.shchekotilov Thu, 04/29/2010 - 08:20

I wonder if anyone have found an answer to this problem. I'm having the same issue and currently can't make it work with neither CUBE registered transcoder nor CUCM registered transcoder.

andreasalas8282 Fri, 04/30/2010 - 00:40

I did't found a solution to this problem. I ended up by using another

architecture which didn't involve CUBE.


m.shchekotilov Fri, 04/30/2010 - 01:47

What solution did you use, if you don't mind me asking?

As far as CUBE goes, I think I have the answer. It can be done only using 2 transcoders.

CUBE can't add or remove transcoder mid-call, and while CUCM can add a transcoder during transfers it seems it can't remove a transcoder mid-call. So in our case during the transfer the xcoder just signals media error and drops the call.

The solution is to use one transcoder on CUBE (CME registered) - this one will always xcode the incoming call from g729 to g711, then there needs to be another xcoder on CUCM - CUCM will use it during transfer to transcode between the CUBE call leg (g711) and phone C call leg (g729).

BTW, I need this functionality in UCCE environment with Outbound Dialer and VoIP connection to PSTN (g729 only).


This Discussion