Sponsor: VoiceMeUp - Corporate & Wholesale VoIP Services

VoIP Mailing List Archives
Mailing list archives for the VoIP community
 SearchSearch 

[Freeswitch-users] Codec negotiation. Totally confused


 
Post new topic   Reply to topic    VoIP Mailing List Archives Forum Index -> freeSWITCH Users
View previous topic :: View next topic  
Author Message
igorolhovskiy at gmail...
Guest





PostPosted: Sun Mar 06, 2016 2:53 am    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

Hi!I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log


2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes


2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec sofia/internal/10@consertis.securenetvox.net (10@consertis.securenetvox.net) G722/8000 20 ms 160 samples 64000 bits 1 channels



And when switches to external profile, I see


2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/00972543279009 sending invite version: 1.6.6 git d2d0b32 2016-01-11 20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv





The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or other codec-related stuff


Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]


internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=btgJek49 options='' application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template [${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext}]
manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]

tls-bind-params [transport=tls]
tls-sip-port [5061]



Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks


--
Best regards,Igor
Back to top
igorolhovskiy at gmail...
Guest





PostPosted: Sun Mar 06, 2016 4:49 am    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

Main question - why it’s ignores outbound-codec-prefs on external profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Hi!I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log


2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes


2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec sofia/internal/10@consertis.securenetvox.net (10@consertis.securenetvox.net) G722/8000 20 ms 160 samples 64000 bits 1 channels



And when switches to external profile, I see


2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/[url=tel:00972543279009]00972543279009[/url] sending invite version: 1.6.6 git d2d0b32 2016-01-11 20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv





The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or other codec-related stuff


Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]


internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=btgJek49 options='' application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template [${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext}]
manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]

tls-bind-params [transport=tls]
tls-sip-port [5061]



Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks


--
Best regards,Igor








--
Best regards,Igor
Back to top
igorolhovskiy at gmail...
Guest





PostPosted: Sun Mar 06, 2016 5:27 am    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

Working only when I’m setting 

export nolocal:absolute_codec_string=${outbound_codec_prefs}





2016-03-06 11:47 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Hi!I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log


2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes


2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec sofia/internal/10@consertis.securenetvox.net (10@consertis.securenetvox.net) G722/8000 20 ms 160 samples 64000 bits 1 channels



And when switches to external profile, I see


2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/[url=tel:00972543279009]00972543279009[/url] sending invite version: 1.6.6 git d2d0b32 2016-01-11 20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv





The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or other codec-related stuff


Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]


internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=btgJek49 options='' application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template [${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext}]
manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]

tls-bind-params [transport=tls]
tls-sip-port [5061]



Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks


--
Best regards,Igor










--
Best regards,Igor







--
Best regards,Igor
Back to top
lexxua at gmail.com
Guest





PostPosted: Sun Mar 06, 2016 3:47 pm    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

Hi Igor,
If you want to do transcoding try to set media_mix_inbound_outbound_codecs=true. This is described in detail here : igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)> wrote:
Quote:
Working only when I’m setting 

export nolocal:absolute_codec_string=${outbound_codec_prefs}





2016-03-06 11:47 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Hi!I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log


2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes


2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec sofia/internal/10@consertis.securenetvox.net (10@consertis.securenetvox.net) G722/8000 20 ms 160 samples 64000 bits 1 channels



And when switches to external profile, I see


2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/[url=tel:00972543279009]00972543279009[/url] sending invite version: 1.6.6 git d2d0b32 2016-01-11 20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv





The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or other codec-related stuff


Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]


internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=btgJek49 options='' application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template [${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext}]
manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]

tls-bind-params [transport=tls]
tls-sip-port [5061]



Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks


--
Best regards,Igor










--
Best regards,Igor







--
Best regards,Igor




_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Back to top
igorolhovskiy at gmail...
Guest





PostPosted: Sun Mar 06, 2016 4:53 pm    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

Hi!Thanks, but transcoding is also working with option absolute_codec_string.
What I’m trying to understand - what I’ve missed and why with profile settings, external profile totally ignores outbound-codec-prefs and takes ONLY FIRST from incoming call to internal profile.


2016-03-06 22:45 GMT+02:00 Volodymyr Fedorov <lexxua@gmail.com (lexxua@gmail.com)>:
Quote:

Hi Igor,
If you want to do transcoding try to set media_mix_inbound_outbound_codecs=true. This is described in detail here : igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)> wrote:

Quote:
Working only when I’m setting 

export nolocal:absolute_codec_string=${outbound_codec_prefs}





2016-03-06 11:47 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Hi!I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log


2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes


2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec sofia/internal/10@consertis.securenetvox.net (10@consertis.securenetvox.net) G722/8000 20 ms 160 samples 64000 bits 1 channels



And when switches to external profile, I see


2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/[url=tel:00972543279009]00972543279009[/url] sending invite version: 1.6.6 git d2d0b32 2016-01-11 20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv





The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or other codec-related stuff


Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]


internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=btgJek49 options='' application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template [${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext}]
manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]

tls-bind-params [transport=tls]
tls-sip-port [5061]



Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks


--
Best regards,Igor










--
Best regards,Igor







--
Best regards,Igor






_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org


_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org




--
Best regards,Igor
Back to top
idokan at gmail.com
Guest





PostPosted: Sun Mar 06, 2016 5:05 pm    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

With SIP/SDP the invite originator offer several codecs, but leg b is the one that set the selection.
The offer by leg b, is usually based on the priority of your offer vs their highest matched codecs, so if they offer g722 as 1st priority, and you offer it as 3rd priority, they will select g722 first.
Ido
On Mar 6, 2016 11:50 AM, "Igor Olhovskiy" <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)> wrote:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Hi!I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log


2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes


2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec sofia/internal/10@consertis.securenetvox.net (10@consertis.securenetvox.net) G722/8000 20 ms 160 samples 64000 bits 1 channels



And when switches to external profile, I see


2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/[url=tel:00972543279009]00972543279009[/url] sending invite version: 1.6.6 git d2d0b32 2016-01-11 20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv





The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or other codec-related stuff


Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]


internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch user=fusionpbx password=btgJek49 options='' application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template [${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext}]
manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]

tls-bind-params [transport=tls]
tls-sip-port [5061]



Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks


--
Best regards,Igor








--
Best regards,Igor




_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Back to top
sos at sokhapkin.dyndn...
Guest





PostPosted: Sun Mar 06, 2016 5:06 pm    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

<param name="inbound-late-negotiation" value="true"/>

?

On Sunday 06 March 2016 23:51:53 Igor Olhovskiy wrote:
Quote:
Hi!
Thanks, but transcoding is also working with option absolute_codec_string.
What I’m trying to understand - what I’ve missed and why with profile
settings, external profile totally ignores outbound-codec-prefs and takes
ONLY FIRST from incoming call to internal profile.

2016-03-06 22:45 GMT+02:00 Volodymyr Fedorov <lexxua@gmail.com>:
Quote:
Hi Igor,
If you want to do transcoding try to set*
media_mix_inbound_outbound_codecs=true.* This is described in detail here

https://freeswitch.org/confluence/plugins/servlet/mobile#content/view/2883
752 .

On Mar 6, 2016 11:28 AM, "Igor Olhovskiy" <igorolhovskiy@gmail.com> wrote:
Quote:
Working only when I’m setting
export nolocal:absolute_codec_string=${outbound_codec_prefs}

2016-03-06 11:47 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com>:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external
profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com>:
Quote:
Hi!
I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log

2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes

2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec
sofia/internal/10@consertis.securenetvox.net G722/8000 20 ms 160
samples 64000 bits 1 channels

And when switches to external profile, I see

2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/
00972543279009 sending invite version: 1.6.6 git d2d0b32 2016-01-11
20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv


The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or
other codec-related stuff

Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]

internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=btgJek49 options=''
application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template
[${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}
/${uuid}.${record_ext}] manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5061]

Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks

--
Best regards,
Igor

--
Best regards,
Igor

--
Best regards,
Igor

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Back to top
igorolhovskiy at gmail...
Guest





PostPosted: Sun Mar 06, 2016 5:31 pm    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

Yep, tried to play with it, same idea, on external profile call - only g722. Which is not even in outbound codec list. And, according to manual, FS should offer all codecs in list to next endpoint, which is not happens.That’s my main confusion…


2016-03-07 0:05 GMT+02:00 Sergey Okhapkin <sos@sokhapkin.dyndns.org (sos@sokhapkin.dyndns.org)>:
Quote:
<param name="inbound-late-negotiation" value="true"/>

?

On Sunday 06 March 2016 23:51:53 Igor Olhovskiy wrote:
Quote:
Hi!
Thanks, but transcoding is also working with option absolute_codec_string.
What I’m trying to understand - what I’ve missed and why with profile
settings, external profile totally ignores outbound-codec-prefs and takes
ONLY FIRST from incoming call to internal profile.

2016-03-06 22:45 GMT+02:00 Volodymyr Fedorov <lexxua@gmail.com (lexxua@gmail.com)>:
Quote:
Hi Igor,
If you want to do transcoding try to set*
media_mix_inbound_outbound_codecs=true.* This is described in detail here

https://freeswitch.org/confluence/plugins/servlet/mobile#content/view/2883
752 .

On Mar 6, 2016 11:28 AM, "Igor Olhovskiy" <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)> wrote:
Quote:
Working only when I’m setting
export nolocal:absolute_codec_string=${outbound_codec_prefs}

2016-03-06 11:47 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external
profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Hi!
I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log

2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes

2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec
sofia/internal/10@consertis.securenetvox.net (10@consertis.securenetvox.net) G722/8000 20 ms 160
samples 64000 bits 1 channels

And when switches to external profile, I see

2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/
00972543279009 sending invite version: 1.6.6 git d2d0b32 2016-01-11
20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv


The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or
other codec-related stuff

Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]

internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=btgJek49 options=''
application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template
[${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}
/${uuid}.${record_ext}] manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5061]

Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks

--
Best regards,
Igor

--
Best regards,
Igor

--
Best regards,
Igor

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org





--
Best regards,Igor
Back to top
igorolhovskiy at gmail...
Guest





PostPosted: Sun Mar 06, 2016 5:44 pm    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

To be more clearwith inbound-late-negotitation and inherit_codec=true I assume this scenario:
I got a call to internal profile with codecs G722, PCMU and PCMA. Than, I’m dialing external with putbound-codecs-prefs=PCMU,PCMA,GSM. At this point I assume external profile will make an offer with PCMU and PCMA (accordint to restrictions), but I got offer from external only on G722, which is not supported by my provider.


2016-03-07 0:29 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Yep, tried to play with it, same idea, on external profile call - only g722. Which is not even in outbound codec list. And, according to manual, FS should offer all codecs in list to next endpoint, which is not happens.That’s my main confusion…


2016-03-07 0:05 GMT+02:00 Sergey Okhapkin <sos@sokhapkin.dyndns.org (sos@sokhapkin.dyndns.org)>:
Quote:
<param name="inbound-late-negotiation" value="true"/>

?

On Sunday 06 March 2016 23:51:53 Igor Olhovskiy wrote:
Quote:
Hi!
Thanks, but transcoding is also working with option absolute_codec_string.
What I’m trying to understand - what I’ve missed and why with profile
settings, external profile totally ignores outbound-codec-prefs and takes
ONLY FIRST from incoming call to internal profile.

2016-03-06 22:45 GMT+02:00 Volodymyr Fedorov <lexxua@gmail.com (lexxua@gmail.com)>:
Quote:
Hi Igor,
If you want to do transcoding try to set*
media_mix_inbound_outbound_codecs=true.* This is described in detail here

https://freeswitch.org/confluence/plugins/servlet/mobile#content/view/2883
752 .

On Mar 6, 2016 11:28 AM, "Igor Olhovskiy" <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)> wrote:
Quote:
Working only when I’m setting
export nolocal:absolute_codec_string=${outbound_codec_prefs}

2016-03-06 11:47 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external
profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com (igorolhovskiy@gmail.com)>:
Quote:
Hi!
I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log

2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes

2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio Codec
Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio Codec
Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set Codec
sofia/internal/10@consertis.securenetvox.net (10@consertis.securenetvox.net) G722/8000 20 ms 160
samples 64000 bits 1 channels

And when switches to external profile, I see

2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257 sofia/external/
[url=tel:00972543279009]00972543279009[/url] sending invite version: 1.6.6 git d2d0b32 2016-01-11
20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv


The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass media or
other codec-related stuff

Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=pass options='' application_name='freeswitch']
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]

internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=btgJek49 options=''
application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template
[${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}
/${uuid}.${record_ext}] manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5061]

Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks

--
Best regards,
Igor

--
Best regards,
Igor

--
Best regards,
Igor

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org (consulting@freeswitch.org)
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org (FreeSWITCH-users@lists.freeswitch.org)
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org







--
Best regards,Igor







--
Best regards,Igor
Back to top
sos at sokhapkin.dyndn...
Guest





PostPosted: Sun Mar 06, 2016 5:51 pm    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

What if you do NOT set inherit_codec=true and set inbound-late-
negotiation=true? This works perfect to me...

On Monday 07 March 2016 00:42:24 Igor Olhovskiy wrote:
Quote:
To be more clear
with inbound-late-negotitation and inherit_codec=true I assume this
scenario:
I got a call to internal profile with codecs G722, PCMU and PCMA. Than, I’m
dialing external with putbound-codecs-prefs=PCMU,PCMA,GSM. At this point I
assume external profile will make an offer with PCMU and PCMA (accordint to
restrictions), but I got offer from external only on G722, which is not
supported by my provider.

2016-03-07 0:29 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com>:
Quote:
Yep, tried to play with it, same idea, on external profile call - only
g722. Which is not even in outbound codec list. And, according to manual,
FS should offer all codecs in list to next endpoint, which is not happens.
That’s my main confusion…

2016-03-07 0:05 GMT+02:00 Sergey Okhapkin <sos@sokhapkin.dyndns.org>:
Quote:
<param name="inbound-late-negotiation" value="true"/>

?

On Sunday 06 March 2016 23:51:53 Igor Olhovskiy wrote:
Quote:
Hi!
Thanks, but transcoding is also working with option

absolute_codec_string.

Quote:
What I’m trying to understand - what I’ve missed and why with profile
settings, external profile totally ignores outbound-codec-prefs and

takes

Quote:
ONLY FIRST from incoming call to internal profile.

2016-03-06 22:45 GMT+02:00 Volodymyr Fedorov <lexxua@gmail.com>:
Quote:
Hi Igor,
If you want to do transcoding try to set*
media_mix_inbound_outbound_codecs=true.* This is described in detail

here


https://freeswitch.org/confluence/plugins/servlet/mobile#content/view/288
3

Quote:
Quote:
752 .

On Mar 6, 2016 11:28 AM, "Igor Olhovskiy" <igorolhovskiy@gmail.com>

wrote:
Quote:
Quote:
Quote:
Working only when I’m setting
export nolocal:absolute_codec_string=${outbound_codec_prefs}

2016-03-06 11:47 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com>:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external
profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com>:
Quote:
Hi!
I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log

2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes

2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216 Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
sofia/internal/10@consertis.securenetvox.net G722/8000 20 ms 160
samples 64000 bits 1 channels

And when switches to external profile, I see

2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257

sofia/external/

Quote:
Quote:
Quote:
Quote:
Quote:
00972543279009 sending invite version: 1.6.6 git d2d0b32

2016-01-11

Quote:
Quote:
Quote:
Quote:
Quote:
20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv


The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass

media or

Quote:
Quote:
Quote:
Quote:
Quote:
other codec-related stuff

Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=pass options=''

application_name='freeswitch']

Quote:
Quote:
Quote:
Quote:
Quote:
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]

internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=btgJek49 options=''
application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template

[${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}

Quote:
Quote:
Quote:
Quote:
Quote:
/${uuid}.${record_ext}] manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5061]

Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks

--
Best regards,
Igor

--
Best regards,
Igor

--
Best regards,
Igor

_________________________________________________________________________

Quote:
Quote:
Quote:
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users

Quote:
Quote:
Quote:
UNSUBSCRIBE:
http://lists.freeswitch.org/mailman/options/freeswitch-users

Quote:
Quote:
Quote:
http://www.freeswitch.org

_________________________________________________________________________

Quote:
Quote:
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users

Quote:
Quote:
UNSUBSCRIBE:
http://lists.freeswitch.org/mailman/options/freeswitch-users

Quote:
Quote:
http://www.freeswitch.org

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

--
Best regards,
Igor

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Back to top
sos at sokhapkin.dyndn...
Guest





PostPosted: Sun Mar 06, 2016 5:53 pm    Post subject: [Freeswitch-users] Codec negotiation. Totally confused Reply with quote

I also have <param name="outbound-codec-prefs"
value="$${outbound_codec_prefs}"/> in the profile settings.

On Sunday 06 March 2016 17:50:32 Sergey Okhapkin wrote:
Quote:
What if you do NOT set inherit_codec=true and set inbound-late-
negotiation=true? This works perfect to me...

On Monday 07 March 2016 00:42:24 Igor Olhovskiy wrote:
Quote:
To be more clear
with inbound-late-negotitation and inherit_codec=true I assume this
scenario:
I got a call to internal profile with codecs G722, PCMU and PCMA. Than,
I’m
dialing external with putbound-codecs-prefs=PCMU,PCMA,GSM. At this point I
assume external profile will make an offer with PCMU and PCMA (accordint
to
restrictions), but I got offer from external only on G722, which is not
supported by my provider.

2016-03-07 0:29 GMT+02:00 Igor Olhovskiy <igorolhovskiy@gmail.com>:
Quote:
Yep, tried to play with it, same idea, on external profile call - only
g722. Which is not even in outbound codec list. And, according to
manual,
FS should offer all codecs in list to next endpoint, which is not
happens.
That’s my main confusion…

2016-03-07 0:05 GMT+02:00 Sergey Okhapkin <sos@sokhapkin.dyndns.org>:
Quote:
<param name="inbound-late-negotiation" value="true"/>

?

On Sunday 06 March 2016 23:51:53 Igor Olhovskiy wrote:
Quote:
Hi!
Thanks, but transcoding is also working with option

absolute_codec_string.

Quote:
What I’m trying to understand - what I’ve missed and why with profile
settings, external profile totally ignores outbound-codec-prefs and

takes

Quote:
ONLY FIRST from incoming call to internal profile.

2016-03-06 22:45 GMT+02:00 Volodymyr Fedorov <lexxua@gmail.com>:
Quote:
Hi Igor,
If you want to do transcoding try to set*
media_mix_inbound_outbound_codecs=true.* This is described in
detail

here


https://freeswitch.org/confluence/plugins/servlet/mobile#content/view/2
88
3

Quote:
Quote:
752 .

On Mar 6, 2016 11:28 AM, "Igor Olhovskiy" <igorolhovskiy@gmail.com>

wrote:
Quote:
Quote:
Quote:
Working only when I’m setting
export nolocal:absolute_codec_string=${outbound_codec_prefs}

2016-03-06 11:47 GMT+02:00 Igor Olhovskiy
<igorolhovskiy@gmail.com>:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Main question - why it’s ignores outbound-codec-prefs on external
profile and use G722 as a first avail codec in list?

2016-03-06 9:51 GMT+02:00 Igor Olhovskiy
<igorolhovskiy@gmail.com>:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Hi!
I’m getting really strange things, or I’m just missed something.
My phone is dials to freeswitch with this this line in log

2016-03-06 08:31:56.681036 [DEBUG] sofia.c:6770 Remote SDP:
v=0
o=root 1697549695 1697549695 IN IP4 <EXTERNAL IP HERE>
s=call
c=IN IP4 <EXTERNAL IP HERE>
t=0 0
m=audio 26894 RTP/AVP 9 0 8
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=ptime:20
a=nortpproxy:yes

2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [G722:9:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [G722:9:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMU:0:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMU:0:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMU:0:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMA:8:8000:20:64000:1]/[PCMU:0:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4161
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMA:8:8000:20:64000:1]/[PCMA:8:8000:20:64000:1]
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:4216
Audio

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
Compare [PCMA:8:8000:20:64000:1] ++++ is saved as a match
2016-03-06 08:31:56.681036 [DEBUG] switch_core_media.c:2906 Set

Codec

Quote:
Quote:
Quote:
Quote:
Quote:
sofia/internal/10@consertis.securenetvox.net G722/8000 20 ms 160
samples 64000 bits 1 channels

And when switches to external profile, I see

2016-03-06 08:31:56.721010 [DEBUG] sofia_glue.c:1257

sofia/external/

Quote:
Quote:
Quote:
Quote:
Quote:
00972543279009 sending invite version: 1.6.6 git d2d0b32

2016-01-11

Quote:
Quote:
Quote:
Quote:
Quote:
20:16:12Z 64bit
Local SDP:
v=0
o=FreeSWITCH 1457219712 1457219713 IN IP4 10.0.20.71
s=FreeSWITCH
c=IN IP4 10.0.20.71
t=0 0
m=audio 29804 RTP/AVP 9 101 13
a=rtpmap:9 G722/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=rtpmap:13 CN/8000
a=ptime:20
a=sendrecv


The question is - why only G722 left?
Across dialplan there is no things like inherit_codec, bypass

media or

Quote:
Quote:
Quote:
Quote:
Quote:
other codec-related stuff

Profiles
external
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5081]
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
tls-verify-policy [all]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=pass options=''

application_name='freeswitch']

Quote:
Quote:
Quote:
Quote:
Quote:
track-calls [true]
inbound-codec-negotiation [greedy]
debug [0]
user-agent-string [FreeSWITCH]
sip-trace [no]
sip-capture [no]
rfc2833-pt [101]
sip-port [5080]
dialplan [XML]
context [public]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [PCMU,PCMA,GSM]
hold-music [local_stream://default]
zrtp-passthru [true]
rtp-timer-name [soft]
local-network-acl [localnet.auto]
manage-presence [false]
nonce-ttl [60]
auth-calls [false]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
ext-rtp-ip [10.0.20.71]

internal
tls-cert-dir [/usr/local/freeswitch/conf/ssl]
tls-passphrase []
tls-verify-date [true]
tls-verify-depth [2]
tls-verify-in-subjects []
tls-version [tlsv1]
nonce-ttl [60]
auth-calls [true]
inbound-reg-force-matching-username [true]
auth-all-packets [false]
ext-rtp-ip [10.0.20.71]
ext-sip-ip [10.0.20.71]
rtp-timeout-sec [300]
rtp-hold-timeout-sec [1800]
tls-verify-policy [all]
multiple-registrations [contact]
enable-timer [false]
dbname [share_presence]
send-presence-on-register [true]
inbound-codec-negotiation [greedy]
NDLB-force-rport [safe]
challenge-realm [auto_to]
outbound-proxy [10.0.20.70]
track-calls [true]
odbc-dsn [pgsql://hostaddr=127.0.0.1 port=5432 dbname=freeswitch
user=fusionpbx password=btgJek49 options=''
application_name='freeswitch']
nat-options-ping [true]
liberal-dtmf [true]
all-reg-options-ping [true]
force-publish-expires [true]
unregister-on-options-fail [true]
user-agent-string [FreeSWITCH]
debug [0]
sip-trace [no]
sip-capture [no]
watchdog-enabled [no]
watchdog-step-timeout [30000]
watchdog-event-timeout [30000]
log-auth-failures [true]
forward-unsolicited-mwi-notify [false]
context [public]
rfc2833-pt [101]
sip-port [5060]
dialplan [XML]
dtmf-duration [2000]
inbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
outbound-codec-prefs [G7221@32000h,G7221@16000h
,G722,PCMU,PCMA,OPUS,SILK]
rtp-timer-name [soft]
rtp-ip [10.0.20.71]
sip-ip [10.0.20.71]
hold-music [local_stream://default]
apply-nat-acl [nat.auto]
aggressive-nat-detection [true]
apply-inbound-acl [domains]
local-network-acl [localnet.auto]
record-path [/usr/local/freeswitch/recordings]
record-template

[${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}

Quote:
Quote:
Quote:
Quote:
Quote:
/${uuid}.${record_ext}] manage-presence [true]
presence-probe-on-register [true]
manage-shared-appearance [true]
tls [false]
tls-only [false]
tls-bind-params [transport=tls]
tls-sip-port [5061]

Tried with indbound-late-negotiation=false, also not helps…
Can you please, point, what is missing? Thanks

--
Best regards,
Igor

--
Best regards,
Igor

--
Best regards,
Igor

_______________________________________________________________________
__

Quote:
Quote:
Quote:
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users

Quote:
Quote:
Quote:
UNSUBSCRIBE:
http://lists.freeswitch.org/mailman/options/freeswitch-users

Quote:
Quote:
Quote:
http://www.freeswitch.org

_______________________________________________________________________
__

Quote:
Quote:
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users

Quote:
Quote:
UNSUBSCRIBE:
http://lists.freeswitch.org/mailman/options/freeswitch-users

Quote:
Quote:
http://www.freeswitch.org

_______________________________________________________________________
__
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-user
s
http://www.freeswitch.org

--
Best regards,
Igor

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Back to top
Display posts from previous:   
Post new topic   Reply to topic    VoIP Mailing List Archives Forum Index -> freeSWITCH Users All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group

VoiceMeUp - Corporate & Wholesale VoIP Services