Unable to get rtp codec payload code for codec2

I am having two IP Doorphones connecting to asterisk server.

DoorPhone 1, when makes a call to other clients for instance 90701 there is no video , Audio is OK. On the cli the logs shows warnings about codecs. When 90701 calls DoorPhone 1 there are no issues and no warnings printed on cli.

 -- Executing [90701@fullrights:1] Dial("PJSIP/70701-00000033", "PJSIP/90701/sip:90701@5.162.30.188:28735;transport=TLS&PJSIP/90701/sip:90701@5.162.125.16:29299;transport=TLS") in new stack
    -- Called PJSIP/90701/sip:90701@5.162.30.188:28735;transport=TLS
    -- Called PJSIP/90701/sip:90701@5.162.125.16:29299;transport=TLS
[2022-06-08 06:21:12.897] WARNING[23914]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for codec2
[2022-06-08 06:21:12.898] WARNING[23914]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for testlaw
[2022-06-08 06:21:12.898] WARNING[23914]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:12.898] WARNING[23914]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:12.898] WARNING[23914]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:12.898] WARNING[23914]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:12.903] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for codec2
[2022-06-08 06:21:12.903] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for testlaw
[2022-06-08 06:21:12.903] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:12.903] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:12.903] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:12.903] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
    -- PJSIP/90701-00000034 connected line has changed. Saving it until answer for PJSIP/70701-00000033
    -- PJSIP/90701-00000035 connected line has changed. Saving it until answer for PJSIP/70701-00000033
    -- PJSIP/90701-00000035 is ringing
    -- PJSIP/90701-00000034 is ringing
       > 0x5d24d0 -- Strict RTP learning after remote address set to: 10.178.56.116:34966
       > 0xa73550 -- Strict RTP learning after remote address set to: 10.178.56.116:31050
    -- PJSIP/90701-00000034 answered PJSIP/70701-00000033
       > 0xa5ae90 -- Strict RTP learning after remote address set to: 192.168.71.204:6000
       > 0xa5d910 -- Strict RTP learning after remote address set to: 192.168.71.204:6200
    -- Channel PJSIP/90701-00000034 joined 'simple_bridge' basic-bridge <7e66bd81-578c-4f05-b9da-4b2253835b01>
    -- Channel PJSIP/70701-00000033 joined 'simple_bridge' basic-bridge <7e66bd81-578c-4f05-b9da-4b2253835b01>
       > 0xa5d910 -- Strict RTP switching to RTP target address 192.168.71.204:6200 as source
       > 0xa5ae90 -- Strict RTP learning after remote address set to: 192.168.71.204:6080
       > 0xa5d910 -- Strict RTP learning after remote address set to: 192.168.71.204:6280
       > 0xa5ae90 -- Strict RTP switching to RTP target address 192.168.71.204:6080 as source
       > 0x5d24d0 -- Strict RTP qualifying stream type: audio
       > 0x5d24d0 -- Strict RTP switching source address to 5.162.30.188:28769
       > 0xa5d910 -- Strict RTP learning after remote address set to: 192.168.71.204:6280
       > 0xa73550 -- Strict RTP qualifying stream type: video
       > 0xa5d910 -- Strict RTP switching to RTP target address 192.168.71.204:6280 as source
       > 0x5d24d0 -- Strict RTP learning complete - Locking on source address 5.162.30.188:28769
       > 0xa5ae90 -- Strict RTP learning complete - Locking on source address 192.168.71.204:6080
       > 0xa5d910 -- Strict RTP learning complete - Locking on source address 192.168.71.204:6280
    -- Channel PJSIP/90701-00000034 left 'simple_bridge' basic-bridge <7e66bd81-578c-4f05-b9da-4b2253835b01>
    -- Channel PJSIP/70701-00000033 left 'simple_bridge' basic-bridge <7e66bd81-578c-4f05-b9da-4b2253835b01>
  == Spawn extension (fullrights, 90701, 1) exited non-zero on 'PJSIP/70701-00000033'

On the other hand , DoorPhone2 doesnt have any issue both ways below is the cli output for it although on call originating from the DoorPhone2 I still see the warnings.

Working

  == Setting global variable 'SIPDOMAIN' to 'asterisk'
  == Setting global variable 'SIPDOMAIN' to 'asterisk'
  == Using SIP RTP Audio TOS bits 184
  == Using SIP RTP Audio TOS bits 184 in TCLASS field.
  == Using SIP RTP Video TOS bits 136
  == Using SIP RTP Video TOS bits 136 in TCLASS field.
    -- Executing [90701@fullrights:1] Dial("PJSIP/163-00000036", "PJSIP/90701/sip:90701@5.162.30.188:28735;transport=TLS&PJSIP/90701/sip:90701@5.162.125.16:29299;transport=TLS") in new stack
    -- Called PJSIP/90701/sip:90701@5.162.30.188:28735;transport=TLS
    -- Called PJSIP/90701/sip:90701@5.162.125.16:29299;transport=TLS
[2022-06-08 06:21:34.753] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for codec2
[2022-06-08 06:21:34.754] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for testlaw
[2022-06-08 06:21:34.754] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:34.754] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:34.754] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:34.754] WARNING[2330]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:34.755] WARNING[2331]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for codec2
[2022-06-08 06:21:34.755] WARNING[2331]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for testlaw
[2022-06-08 06:21:34.755] WARNING[2331]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:34.756] WARNING[2331]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:34.756] WARNING[2331]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
[2022-06-08 06:21:34.756] WARNING[2331]: res_pjsip_sdp_rtp.c:1504 create_outgoing_sdp_stream: Unable to get rtp codec payload code for silk
    -- PJSIP/90701-00000038 connected line has changed. Saving it until answer for PJSIP/163-00000036
    -- PJSIP/90701-00000037 connected line has changed. Saving it until answer for PJSIP/163-00000036
    -- PJSIP/90701-00000037 is ringing
    -- PJSIP/90701-00000038 is ringing
  == Using SIP RTP Audio TOS bits 184
  == Using SIP RTP Audio TOS bits 184 in TCLASS field.
  == Using SIP RTP Video TOS bits 136
  == Using SIP RTP Video TOS bits 136 in TCLASS field.
    -- Executing [80701@fullrights:1] Dial("PJSIP/163-00000039", "PJSIP/80701/sip:80701@192.168.71.205:5060;line=a759f1989086f12") in new stack
    -- Called PJSIP/80701/sip:80701@192.168.71.205:5060;line=a759f1989086f12
       > 0xc12520 -- Strict RTP learning after remote address set to: 10.178.56.116:18690
       > 0x5d4f50 -- Strict RTP learning after remote address set to: 10.178.56.116:29138
    -- PJSIP/90701-00000037 answered PJSIP/163-00000036
       > 0xa5d910 -- Strict RTP learning after remote address set to: 192.168.1.26:6000
       > 0xc0faa0 -- Strict RTP learning after remote address set to: 192.168.1.26:6200
    -- Channel PJSIP/90701-00000037 joined 'simple_bridge' basic-bridge <5fcdf4ad-b368-442e-84ed-f6f81dbf2cc7>
    -- Channel PJSIP/163-00000036 joined 'simple_bridge' basic-bridge <5fcdf4ad-b368-442e-84ed-f6f81dbf2cc7>
  == Using SIP RTP Audio TOS bits 184
  == Using SIP RTP Audio TOS bits 184 in TCLASS field.
       > 0xc0faa0 -- Strict RTP switching to RTP target address 192.168.1.26:6200 as source
  == Spawn extension (fullrights, 80701, 1) exited non-zero on 'PJSIP/163-00000039'
  == Using SIP RTP Video TOS bits 136
  == Using SIP RTP Video TOS bits 136 in TCLASS field.
       > 0xa5d910 -- Strict RTP switching to RTP target address 192.168.1.26:6000 as source
       > 0xc12520 -- Strict RTP qualifying stream type: audio
       > 0xc12520 -- Strict RTP switching source address to 5.162.30.188:28794
       > 0x5d4f50 -- Strict RTP qualifying stream type: video
       > 0x5d4f50 -- Strict RTP switching source address to 5.162.30.188:28795
       > 0xc12520 -- Strict RTP learning complete - Locking on source address 5.162.30.188:28794
       > 0xc0faa0 -- Strict RTP learning complete - Locking on source address 192.168.1.26:6200
       > 0x5d4f50 -- Strict RTP learning complete - Locking on source address 5.162.30.188:28795
       > 0xa5d910 -- Strict RTP learning complete - Locking on source address 192.168.1.26:6000
    -- Channel PJSIP/90701-00000037 left 'simple_bridge' basic-bridge <5fcdf4ad-b368-442e-84ed-f6f81dbf2cc7>
    -- Channel PJSIP/163-00000036 left 'simple_bridge' basic-bridge <5fcdf4ad-b368-442e-84ed-f6f81dbf2cc7>
  == Spawn extension (fullrights, 90701, 1) exited non-zero on 'PJSIP/163-00000036'

The Enpoint definations are as follows
DoorPhone1 - 70701


[70701]
type = aor
max_contacts = 1
remove_existing = yes
qualify_frequency = 60
maximum_expiration = 3600
minimum_expiration = 60
default_expiration = 120

[70701]
type = auth
username = 70701
password = 70701
nonce_lifetime = 200


[70701]
type = endpoint
context=fullrights
rtp_symmetric = yes
rewrite_contact=yes
dtmf_mode = rfc4733
message_context=some_context_that_does_nothing
disallow = all
allow = ulaw
allow = alaw
allow = gsm
allow = g726
allow = h264
allow = mpeg4
allow = vp8
allow = h263p
rtp_timeout = 30
timers = yes
direct_media = no
callerid=70701 <Door_5>
send_pai = yes
use_avpf = no
tos_audio = ef
tos_video = af41
auth = 70701
outbound_auth = 70701
aors = 70701

and that for DoorPhone2 is


[163]
type = aor
max_contacts = 5
remove_existing = yes
qualify_frequency = 60
maximum_expiration = 3600
minimum_expiration = 60
default_expiration = 120

[163]
type = auth
username = 163
password = 163163
nonce_lifetime = 200


[163]
type = endpoint
context=fullrights
rtp_symmetric = yes
rewrite_contact=yes
dtmf_mode = rfc4733
message_context=some_context_that_does_nothing
disallow = all
allow = ulaw
allow = alaw
allow = gsm
allow = g726
allow = h264
allow = mpeg4
allow = vp8
allow = h263p
rtp_timeout = 30
timers = yes
direct_media = no
callerid=163 <Door_3>
send_pai = yes
use_avpf = no
tos_audio = ef
tos_video = af41
auth = 163
outbound_auth = 163
aors = 163

That for 90701 is

[90701]
type = aor
max_contacts = 5
qualify_frequency = 60
maximum_expiration = 3600
minimum_expiration = 60
default_expiration = 120
remove_existing = yes

[90701]
type = auth
username = 90701
password = 90701

[90701]
type = endpoint
rewrite_contact=yes
context=fullrights
dtmf_mode = rfc4733
allow = all
rtp_timeout = 30
timers = yes
direct_media = no
callerid=90701 <Mobile Exten 90701>
send_pai = yes
auth = 90701
outbound_auth = 90701
aors = 90701
dtmf_mode=rfc4733
media_encryption=sdes
transport = transport-tls
rtp_symmetric=yes
force_rport=yes

full.log.txt (39.7 KB)

Don’t use “allow=all” in 90701, that will stop the message regarding codec2.

1 Like

what about not getting video ? will that also be solved?

I don’t know, but fixing the use of “allow=all” is a start.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.