[Freeswitch-users] FS conference limitations

Bote Man bote_radio at botecomm.com
Tue Jan 12 21:00:23 MSK 2016

Now that I’m back home I am happy to report that FreeSWITCH didn’t break a sweat with 16 of 22 conferees having “relations” with each other (nothing kinky, mind you). I did not get a chance to perform rigorous tests, but a quick glimpse at the “top” command showed FS using about 11% of cpu time on a bare metal Debian 8.2 installation on a new Dell R320 server. 


When I get remote access to that system I hope to be able to observe some more metrics, but once I decided to bite the bullet and mute all 16 speakers relative to each other it sounded clean as a hound’s tooth, no feedback and no echo cancellers chopping in and out on those Algo8180 speakers. Smiles all around. 




Thanks. I’ll be in touch J





From: Michael Jerris
Sent: Wednesday, 06 January, 2016 12:21
Subject: Re: [Freeswitch-users] FS conference limitations


Just talking through how it works with Tony, sounds like the vast majority of additional compute with relate happens as soon as you do even one relate command, there should be minimal additional load for more than 1.  Specifically, once you do any relate commands, it will be creating a muxed copy of the audio for each participant instead of optimizing by using a single muxed frame and subtracting your own audio out.



On Jan 6, 2016, at 12:00 PM, Bote Man <bote_radio at botecomm.com> wrote:


I'll let ya know :-)



On Wed, Jan 6, 2016 at 11:55 AM, Michael Jerris <mike at jerris.com> wrote:

Honestly I don’t think we have ever really stressed relate as far as number of members to see how it performs with a lot of them, maybe chad has experience in that?  I was totally going to mention the couple pull requests in the works to make this easier too, but the performance question still stands,

On Jan 6, 2016, at 10:00 AM, Bote Man <bote_radio at botecomm.com> wrote:


Thanks! I actually found a very helpful Lua tutorial on YouTube from a guy named Tyler Neylon. It got me up to speed rapidly without a lot of b.s. so I'm gonna take a stab at it. It will be very quick and dirty with hard-coded relations, but it is a fixed application so once it is tweaked it should never need to be changed so I can live with that.

But we're still talking about ME so don't stray too far from that irc client today, OK? :-)

I'm up against a huge time crunch so even though I did build this FS installation from source code I just can't take the time for experimentation at this point. (Also, I hope to perform one other simple conference function in the script while I'm already at it). I'm a big user of mod_conference so when I get back home under calmer circumstances I'll have to take a look at it as this could prove very useful in certain niche applications.

Thanks again!



On Wed, Jan 6, 2016 at 8:59 AM, Chad Phillips <chad at apartmentlines.com> wrote:

If you can compile FS for your use case, this PR I have pending might simplify things for you: https://freeswitch.org/jira/browse/FS-8685


Basically allows you to form multiple relations with one command. Note that it doesn't reduce the amount of relations core forms, just the number of individual relate commands you need to issue from the Lua script.


I'm also pretty good with Lua, if you're interested in going the bounty route. You can probably catch me in #freeswitch today, nick hunmonk.




On Tue, Jan 5, 2016 at 7:37 PM, Bote Man <bote_radio at botecomm.com> wrote:

This is probably best answered by Anthony or Mike J.

I need to make extensive use of the "relate" conference API command to eliminate feedback between a bunch of VoIP speakers that have microphone talkback capability.

Is there a practical limit on how many "relations" I can set up to mute conferees from hearing each other? I have 16 endpoints in one building and probably 8 to 10 of them need to be muted relative to their nearest neighbors so that list can get fairly large I imagine. I just don't know how far I can push it.

Then I have to become a wizard at Lua script programming in a matter of a few hours to make this all work. Pointers to help are greatly appreciated. If I get stuck look for a bounty request :-)

I'm thinking I can set up a linked-list populated with the extension number (which I know and is fixed) paired with the conference user id (which varies with each call, but is used by the 'relate' command). I'm just going to make it very simple with everything defined in the script header since it won't change.


Once this is done I hope to donate it back to the community in the rare chance that somebody else finds it useful.





-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20160112/65a51dd6/attachment-0001.html 

Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list