cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
347
Views
0
Helpful
3
Replies

Codec problem with one gateway

bgibson
Level 1
Level 1

I am having a very strange problem with one of my gateways. No matter how I set up my regions and device pools I continue to have all calls go through this gateway as G729. This would be fine except that I can't do conference calls because of codec mismatches.

The gateway is a PRI running H323. CM 3.2.2(c) Gateway is a 3640 running 12.2.11(t)

All regions are currently set to G711.

I read something about a command under voice-port that sets the default codec. What I don't understand is, if this is what is causing it to go to G729, why is this the only gateway that ignores the regions.

Any help would be appreciated.

3 Replies 3

marinaibm
Level 4
Level 4

Cisco VoIP gateways support the codec negotiation feature. This feature provides the ability for a Cisco VoIP gateway to connect to other VoIP devices without necessarily knowing which codec is used for a call-setup. Also, this feature allows Cisco VoIP gateways to dynamically adjust to changes on remote devices. As long as the codec used by the remote VoIP device matches the capabilities-list of the Cisco VoIP gateway, the VoIP call is completed.

The following example shows how to configure codec negotiation:

Cisco-router# config t

Cisco-router(config)# voice class codec 1

!--- This sets up class 1 to be assigned to the dial peer.

Cisco-router(config-class)#codec preference 1 g723r63

Cisco-router(config-class)#codec preference 2 g729ar8

Cisco-router(config-class)#codec preference 3 g711ulaw

Cisco-router(config-class)#codec preference 4 g726r32 bytes 240

!--- These commands define the preferred codec list using 1,2,3, and 4 to set the preference.

Cisco-router(config)#dial-peer voice 1 voip

Cisco-router(config-dial-peer)#voice-class codec 1

!--- This assigns voice-class codec 1 to the dial-peer

Cisco-router(config-dial-peer)#destination-pattern 4723155

Cisco-router(config-dial-peer)#session target ipv4:192.168.100.1

Thanks for the response.

I'm familiar with the voice class command. However you can't assign a codec to an outbound dial-peer. I was under the impression that the CM was supposed to determine the appropriate codec.

I was under the same impression about outgoing dial-peer. However, it appears that CME uses the outgoing dial-peer (the one that cme uses to reach a device on callmanager) in call setup for calls from callmanger devices to the gateway in determining what codec to use.

You would need to use the voice-class codec command(s) on the same dial-peer that cme uses to reach the devices for a call from PSTN to a callmanager device.

Example:

voice class codec 1

codec preference 1 g711ulaw

codec preference 2 g729r8

codec preference 3 g729br8

dial-peer voice 100 voip

destination-pattern 5....

voice-class codec 1

session-target ipv4:10.1.1.1

dtmf-relay h245-alphanumeric

a call from extension 55555 -> gateway -> pstn should now be able to negotiate g729 as long as regions are set up correctly. You wouldn't think that this outgoing dial-peer would come into play on an incoming call (cme perspective), but it does.