Enabling Silence Suppression and changing codec payload size

Dear All,

I am using Asterisk1.8. I want to enable silence suppression(VAD) in order to reduce bandwidth consumption on incomming and outgoing voice calls(TX/RX: to softphone or trunk/from softphone or trunk). For example, in Quintum DX2030, We simple enable silince suppression option from IPRG.
Then I need to change codec payload size for g.729. Default value is 20(ms). I need to make this 40. Purpose is to reduce bandwidth consumption per voice call. For example , in Quintum DX2030, we just go to voice codec prompt then enter the following command: set cps 40.

This is urgent. I am looking forward to hearing from you all.

Thanks in advance.

Zahid Hasan

Codec payload size can be set by setting something like:


in the SIP peer definition.

Silence Suppression isn’t supported by Asterisk.

Dear Sir,

Thank you very much for your reply.

I have configured as you advised. This is working but in one way. For example, when I call from xlite(registered to asterisk server) to a trunk gateway, then I see it works in the following direction:

1.it works(40ms payload) on the direction from gsm gw(trunk with asterisk) to asterisk server. But does not work in 40ms payload in the direction from asterisk server to gsm gw.

call 1 TX(Asterisk to gsm gw): 20ms
call 1 RX(GSM gw to asterisk): 40ms

Please help me how can I implement this on both direction of a call.


XLite is both limited and nobbled. We have found that some versions don’t even reject re-invites properly. I wouldn’t use it for any experiment like this where you are doing unusual things with SDP.

As this is unusual, and I’ve not had cause to look at the code in detail, this is speculation, but:

  1. Asterisk isn’t going to send anything to the gateway that it doesn’t think the gateway can handle, so the gateway will probably need to be configured to to request large frames. Basically, in the SDP exchange, each side tells the other what is is able to accept.

  2. if it doesn’t need to transcode, I’m not sure if it is going to merge frames from the X-Lite, so that may have to transmit large frames (that is rather more speculative). It is possible that a frame size difference triggers a null transcoding operation.

The SDP parameter that appears to control this appears to be only a recommendation for encoders and the X-Lite may well choose to ignore the recommendation, if sent to it.

What does the SDP contain in both directions, on both interfaces?

Dear Devid55,

Thank you very much.
How can I check SDP on both direction on both interfaces?
Please forgive me for my sily question.


sip set debug on
and look for the SDP, or use wireshark, or similar.