[asterisk-bugs] [JIRA] (ASTERISK-24314) ConfBridge Doesn't Deliver 48 kHz Audio

Rusty Newton (JIRA) noreply at issues.asterisk.org
Fri Sep 26 14:29:29 CDT 2014


    [ https://issues.asterisk.org/jira/browse/ASTERISK-24314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=222808#comment-222808 ] 

Rusty Newton edited comment on ASTERISK-24314 at 9/26/14 2:27 PM:
------------------------------------------------------------------

Well.. this is odd. Using Asterisk 12.4.0 (on both sides), your configs and swapping out only the necessary bits (IP addresses); I can't even get the Originate from server A to B working.

In my case, Asterisk claims it is adding slin48 to SDP, but it actually doesn't. INVITE goes out with no codecs and the other side replies with 488 Not acceptable here, due to no compatible codecs, due to no codecs in the SDP.

Below is a comparison of the INVITE SDP between the debug you attached to the issue and what I'm seeing at the console when testing with your AMI and configs.

In your debug:

{noformat}
[Sep 15 11:07:31] VERBOSE[5914] chan_sip.c: Adding codec 100025 (slin48) to SDP
<snip>
[Sep 15 11:07:31] DEBUG[5914] chan_sip.c: Done building SDP. Settling with this capability: (slin48)
<snip>
ÿm=audio 15248 RTP/AVP 120 101^M
ÿa=rtpmap:120 L16/48000^M
ÿa=rtpmap:101 telephone-event/8000^M
ÿa=fmtp:101 0-16^M
ÿa=ptime:20^M
ÿa=maxptime:70^M
ÿa=sendrecv^M
{noformat}

In my debug:

{noformat}
Adding codec 100025 (slin48) to SDP
<snip>
[Sep 26 14:03:43] DEBUG[27121]: chan_sip.c:13718 add_sdp: Done building SDP. Settling with this capability: (slin48)
<snip>
m=audio 13192 RTP/AVP 101
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=sendrecv
{noformat}

You can see in my case that slin48 doesn't get added. Which seems like a bug. What I'm wondering is how it is working in your scenario if it is a bug in my case?

Can you shed any further light on configuration that might be needed? Or any custom configuration you did for your Asterisk installation?


was (Author: rnewton):
Well.. this is odd. Using your configs and swapping out only the necessary bits (IP addresses); I can't even get the Originate from server A to B working.

In my case, Asterisk claims it is adding slin48 to SDP, but it actually doesn't. INVITE goes out with no codecs and the other side replies with 488 Not acceptable here, due to no compatible codecs, due to no codecs in the SDP.

Below is a comparison of the INVITE SDP between the debug you attached to the issue and what I'm seeing at the console when testing with your AMI and configs.

In your debug:

{noformat}
[Sep 15 11:07:31] VERBOSE[5914] chan_sip.c: Adding codec 100025 (slin48) to SDP
<snip>
[Sep 15 11:07:31] DEBUG[5914] chan_sip.c: Done building SDP. Settling with this capability: (slin48)
<snip>
ÿm=audio 15248 RTP/AVP 120 101^M
ÿa=rtpmap:120 L16/48000^M
ÿa=rtpmap:101 telephone-event/8000^M
ÿa=fmtp:101 0-16^M
ÿa=ptime:20^M
ÿa=maxptime:70^M
ÿa=sendrecv^M
{noformat}

In my debug:

{noformat}
Adding codec 100025 (slin48) to SDP
<snip>
[Sep 26 14:03:43] DEBUG[27121]: chan_sip.c:13718 add_sdp: Done building SDP. Settling with this capability: (slin48)
<snip>
m=audio 13192 RTP/AVP 101
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=sendrecv
{noformat}

You can see in my case that slin48 doesn't get added. Which seems like a bug. What I'm wondering is how it is working in your scenario if it is a bug in my case?

Can you shed any further light on configuration that might be needed? Or any custom configuration you did for your Asterisk installation?

> ConfBridge Doesn't Deliver 48 kHz Audio
> ---------------------------------------
>
>                 Key: ASTERISK-24314
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-24314
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Applications/app_confbridge
>    Affects Versions: 12.4.0
>            Reporter: Frankie Chin
>            Assignee: Frankie Chin
>         Attachments: confbridge_serverA.conf, extensions_serverA.conf, extensions_serverB.conf, full_serverA, sip_serverA.conf, sip_serverB.conf
>
>
> I have two servers registered to each other via SIP. I only enabled "slin48" codec in sip.conf of both servers. 
> Scenario 1 (Happy):
> I use AMI to originate a call to Server B. Once Server B answers the call, Server A will start playing a 48 kHz speech audio from a *.sln48 file. At Server B, the audio is recorded into another *.sln48 file. The recorded audio quality at Server B is basically the same as the original source.
> Scenario 2:
> Using another AMI application, it originates a call to Server B and puts it into a conference hosted in Server A. It then originates another call to a local channel in Server A and puts the local channel into the conference as well. The local channel then starts playing the same speech audio from the source *.sln48 file into the conference. The audio is also recorded at Server B. But this time, the recorded audio quality is much worse than the source audio.
> The following are the settings in my confbridge.conf which I think relevant:
> - internal_sample_rate = 48000
> - mixing interval = 20
> - dsp_drop_silence = yes
> - dsp_talking_threshold = 128
> - dsp_silence_threshold = 2000
> I have even tried setting the internal_sample_rate to 192000 but it didn't improve the recorded audio quality. My final objective is to be able to put multiple servers into a conference and get a local channel in one server to play the 48 kHz audio out to all the other servers.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list