Can PJSIP_MEDIA_OFFER Work Like SIP_CODEC?

Home » Asterisk Users » Can PJSIP_MEDIA_OFFER Work Like SIP_CODEC?
Asterisk Users 4 Comments

hi:
when using chan_sip, I can use set SIP_CODEC in dialplan to change the codec of endpoint. this method didn’t work with pjsip in asterisk
12/13.

I found asterisk 12/13 has a new function PJSIP_MEDIA_OFFER. according to the description, it seems can set codec, but the document didn’t offer any example. i try to use something like PJSIP_MEDIA_OFFER(alaw) but didn’t work.

can someone give an example for the function? thanks for the help.

Regards, tbskyd

4 thoughts on - Can PJSIP_MEDIA_OFFER Work Like SIP_CODEC?

  • Am 27.09.2014 17:28, schrieb d tbsky:

    Not a programmer here, just grep -r’ed through the code, but maybe try one of these:

    G711A
    G711_ALAW

  • 2014-09-28 14:01 GMT+08:00 Markus :

    thanks a lot for help!! I tried both but none works. maybe this function can not work like the old channel variable “SIP_CODEC”, which can change inbound call codec. but I do notice something different between chan_sip and chan_pjsip.

    I use zoiper softphone for testing:

    when I dialout sip trunk with chan_sip, the remote peer rings, and zoiper now shows what codec to use. if I use “SIP_CODEC” before dial to change the codec, zoiper will use the new CODEC, but asterisk internal won’t change and still transcoding in the middle.(at least
    “core show channel sip/xxxxx” told me transcoding)

    when I dialout sip trunk with chan_pjsip, the remote peer rings, but zoiper didn’t show what codec to use. only after the callee answer the phone, zoiper shows what codec to use. so it seems chan_pjsip have better chance to do the right thing without transcoding. it’s sad that chan_pjsip won’t select best codec match two peers automatically without transcoding. but I hope it at least can provide a magic function or channel variable like “SIP_CODEC/SIP_CODEC_INBOUND” to make correct codec selection.

    Regards, tbskyd

  • The function should work on whatever channel it was set on. If you are going to use it on an outbound channel, then you should use a pre-dial handler to apply it to that channel.

    Matt

  • 2014-09-30 23:52 GMT+08:00 Matthew Jordan :

    it sounds good. could you give out an one line dialplan example so I
    can try to use it? and the real thing I want to change is the inbound codec, can it work like the chan_sip channel variable SIP_CODEC_INBOUND?

    thanks a lot for your help!!

    Regards, tbskyd