[asterisk-dev] Volume Control

Matthew Jordan mjordan at digium.com
Sat Dec 27 18:11:24 CST 2014


On Thu, Dec 25, 2014 at 11:53 AM, Murthy Gandikota <mgandikota at nts.net>
wrote:

>  Thank you for your kind comments. I have blown up my connection with ISP
> every time I tried writing frames using ast_write for the equivalent of
> echo. I am copying the relevant code fromconference.c  for elucidation.
> Kindly forgive me for bringing up the App Konference  code here.
>
>
>
> // loop over member list and retrieve incoming frames
>
>         for (listentry = conf->listheaders->speakerlistheader.next;
> listentry != &conf->listheaders->speakerlistheader; listentry =
> listentry->next)
>
>         {
>
>                 ast_conf_member *member = (ast_conf_member
> *)((char*)listentry - offsetof(ast_conf_member, speakerlistentry));
>
>                 member_process_spoken_frames(conf,member,&spoken_frames,
>
>                                              &listener_count,
> &speaker_count);
>
>         }
>
>
>
>         // mix incoming frames and get batch of outgoing frames
>
>         conf_frame *send_frames = spoken_frames ? mix_frames(conf,
> spoken_frames, speaker_count, listener_count) : NULL;
>
>
>
>         // loop over member list and send outgoing frames
>
>         for (listentry = conf->listheaders->memberlistheader.next;
> listentry != &conf->listheaders->memberlistheader; listentry =
> listentry->next)
>
>         {
>
>                 ast_conf_member *member = (ast_conf_member
> *)((char*)listentry - offsetof(ast_conf_member, memberlistentry));
>
>         /* ********************************************************this
> blows up the ISP connection
>
>                   conf_frame * sendFrame=NULL;
>
>                 for(sendFrame=send_frames; sendFrame != NULL;sendFrame =
> send_frames->next) {
>
>                         ast_write(member->chan, sendFrame->fr);
>
>                 }
>
>         */
>
>                 member_process_outgoing_frames(conf, member);
>
>         }
>
>
>
> member_process_outgoing_frames queues the frames to be sent out to the
> listeners. What I don't understand is why the ISP drops the connection.
>

Since this code is not licensed back to the Asterisk project - and, more
importantly, since it is a module that I am unfamiliar with - I am not
going to be able to help you with it.

I highly encourage you to contact the maintainers of that module and ask
them for assistance.

-- 
Matthew Jordan
Digium, Inc. | Engineering Manager
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20141227/0eb2f849/attachment.html>


More information about the asterisk-dev mailing list