Hello, I've talked about CNG, VAD with Anthony and Brian already but I still have a mess in it and don't really know how it works. Could anybody explain the practical side of these magic options? 1. What does suppress_cng=true do exactly? (yep, I know it suppresses CNG, but what does this mean? Won't send out the CN/8000 rtpmap in SDP?) 2. What do VAD settings do in sofia profile? I've read http://wiki.freeswitch.org/wiki/Sofia.conf.xml <!-- <param name="vad" value="in"/> --> <!-- <param name="vad" value="out"/> --> <!-- <param name="vad" value="both"/> --> What do these options do in practice? Can FS detect silence (e.g. no RTP?) and than what can it do with? 3. I found undocumented options rtp_enable_vad_in, rtp_enable_vad_out for sofia which might be the per call settings for point 2. ? If this is correct, what will this do? <action application="set" data="rtp_enable_vad_in=true"/> <action application="set" data="rtp_enable_vad_out=true"/> <action application="bridge" data="sofia/....."/> 4. What will FS do when one side of the bridge supports CN but the other doesn't? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN Would it be possible to turn on comfort noise generation in FS for the side which cannot handle CN? 5. Is it possible to let FS detect silence and on one leg send CN packets insted of RTP? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN, but for saving bandwidth it would be good to have silence detection and in case of silence FS lets send CN instead of RTP. Sorry for my dump questions, I would like to understand the whole picture. I would like to add the clarification to FS wiki to lets other have less troubles (with endpoints on one side supporting VAD/CNG and endpoints on other side not supporting VAD/CNG, e.g. CallWeaver) Thanks in advance! Regards, Tamas
Hello, Thanks for guys on IRC channel, now things around VAD/CNG are more clear for me. I've started a wiki documentation about the topic as there is no such page yet and I hope it will be a good startup: http://wiki.freeswitch.org/wiki/VAD_and_CNG I'm aware of that some parts might be inaccurate and even wrong, so bear with me, I just took the time to start document this part. I would like to ask the gurus (anthm, bkw, coppice, etc.) to review the page and correct my mistakes. Thanks! Regards, Tamas Tamas írta:
Hello,
I've talked about CNG, VAD with Anthony and Brian already but I still have a mess in it and don't really know how it works.
Could anybody explain the practical side of these magic options?
1. What does suppress_cng=true do exactly? (yep, I know it suppresses CNG, but what does this mean? Won't send out the CN/8000 rtpmap in SDP?)
2. What do VAD settings do in sofia profile? I've read http://wiki.freeswitch.org/wiki/Sofia.conf.xml
<!-- <param name="vad" value="in"/> --> <!-- <param name="vad" value="out"/> --> <!-- <param name="vad" value="both"/> -->
What do these options do in practice? Can FS detect silence (e.g. no RTP?) and than what can it do with?
3. I found undocumented options rtp_enable_vad_in, rtp_enable_vad_out for sofia which might be the per call settings for point 2. ? If this is correct, what will this do? <action application="set" data="rtp_enable_vad_in=true"/> <action application="set" data="rtp_enable_vad_out=true"/> <action application="bridge" data="sofia/....."/>
4. What will FS do when one side of the bridge supports CN but the other doesn't? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN Would it be possible to turn on comfort noise generation in FS for the side which cannot handle CN?
5. Is it possible to let FS detect silence and on one leg send CN packets insted of RTP? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN, but for saving bandwidth it would be good to have silence detection and in case of silence FS lets send CN instead of RTP.
Sorry for my dump questions, I would like to understand the whole picture.
I would like to add the clarification to FS wiki to lets other have less troubles (with endpoints on one side supporting VAD/CNG and endpoints on other side not supporting VAD/CNG, e.g. CallWeaver)
Thanks in advance!
Regards, Tamas
Hello, to answer for my own email - for other who might be interested... Tamas írta:
Hello,
I've talked about CNG, VAD with Anthony and Brian already but I still have a mess in it and don't really know how it works.
Could anybody explain the practical side of these magic options?
1. What does suppress_cng=true do exactly? (yep, I know it suppresses CNG, but what does this mean? Won't send out the CN/8000 rtpmap in SDP?)
suppress-cng and suppress_cng are used to manage the sending of CN RTP packets after agreement through SDP.
2. What do VAD settings do in sofia profile? I've read http://wiki.freeswitch.org/wiki/Sofia.conf.xml
<!-- <param name="vad" value="in"/> --> <!-- <param name="vad" value="out"/> --> <!-- <param name="vad" value="both"/> -->
What do these options do in practice? Can FS detect silence (e.g. no RTP?) and than what can it do with?
When VAD is turnd on, FS checks on the given channel for incoming or/and outgoing channel (depends on the settings) and when detects silence, stops sending out RTP.
3. I found undocumented options rtp_enable_vad_in, rtp_enable_vad_out for sofia which might be the per call settings for point 2. ? If this is correct, what will this do? <action application="set" data="rtp_enable_vad_in=true"/> <action application="set" data="rtp_enable_vad_out=true"/> <action application="bridge" data="sofia/....."/>
These settings are the same as in 1. but can be used per call.
4. What will FS do when one side of the bridge supports CN but the other doesn't? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN Would it be possible to turn on comfort noise generation in FS for the side which cannot handle CN?
When on side does not support CN, FS simply won't forward CN RTP packets. Comfort noise generation into media channel in FS is possible with bridge_generate_comfort_noise=true added in r9543. More about on http://wiki.freeswitch.org/wiki/VAD_and_CNG
5. Is it possible to let FS detect silence and on one leg send CN packets insted of RTP? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN, but for saving bandwidth it would be good to have silence detection and in case of silence FS lets send CN instead of RTP.
Yes, possible. VAD has to be turned on that channel and both sides have to agree on CN RTP packets (in SDP).
Sorry for my dump questions, I would like to understand the whole picture.
I hope I'm on the right way :)
I would like to add the clarification to FS wiki to lets other have less troubles (with endpoints on one side supporting VAD/CNG and endpoints on other side not supporting VAD/CNG, e.g. CallWeaver)
Check http://wiki.freeswitch.org/wiki/VAD_and_CNG
Thanks in advance!
Regards, Tamas
Tamas
thank you very much Tamas, i found this infos very useful :) -----Ursprüngliche Nachricht----- Von: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] Im Auftrag von Tamas Gesendet: Samstag, 13. September 2008 14:31 An: freeswitch-users@lists.freeswitch.org Betreff: Re: [Freeswitch-users] VAD and CN question Hello, to answer for my own email - for other who might be interested... Tamas írta:
Hello,
I've talked about CNG, VAD with Anthony and Brian already but I still have a mess in it and don't really know how it works.
Could anybody explain the practical side of these magic options?
1. What does suppress_cng=true do exactly? (yep, I know it suppresses CNG, but what does this mean? Won't send out the CN/8000 rtpmap in SDP?)
suppress-cng and suppress_cng are used to manage the sending of CN RTP packets after agreement through SDP.
2. What do VAD settings do in sofia profile? I've read http://wiki.freeswitch.org/wiki/Sofia.conf.xml
<!-- <param name="vad" value="in"/> --> <!-- <param name="vad" value="out"/> --> <!-- <param name="vad" value="both"/> -->
What do these options do in practice? Can FS detect silence (e.g. no RTP?) and than what can it do with?
When VAD is turnd on, FS checks on the given channel for incoming or/and outgoing channel (depends on the settings) and when detects silence, stops sending out RTP.
3. I found undocumented options rtp_enable_vad_in, rtp_enable_vad_out for sofia which might be the per call settings for point 2. ? If this is correct, what will this do? <action application="set" data="rtp_enable_vad_in=true"/> <action application="set" data="rtp_enable_vad_out=true"/> <action application="bridge" data="sofia/....."/>
These settings are the same as in 1. but can be used per call.
4. What will FS do when one side of the bridge supports CN but the other doesn't? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN Would it be possible to turn on comfort noise generation in FS for the side which cannot handle CN?
When on side does not support CN, FS simply won't forward CN RTP packets. Comfort noise generation into media channel in FS is possible with bridge_generate_comfort_noise=true added in r9543. More about on http://wiki.freeswitch.org/wiki/VAD_and_CNG
5. Is it possible to let FS detect silence and on one leg send CN packets insted of RTP? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN, but for saving bandwidth it would be good to have silence detection and in case of silence FS lets send CN instead of RTP.
Yes, possible. VAD has to be turned on that channel and both sides have to agree on CN RTP packets (in SDP).
Sorry for my dump questions, I would like to understand the whole picture.
I hope I'm on the right way :)
I would like to add the clarification to FS wiki to lets other have less troubles (with endpoints on one side supporting VAD/CNG and endpoints on other side not supporting VAD/CNG, e.g. CallWeaver)
Check http://wiki.freeswitch.org/wiki/VAD_and_CNG
Thanks in advance!
Regards, Tamas
Tamas _______________________________________________ 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
A big thanks to Tamas and Steve Underwood for putting this new page together: http://wiki.freeswitch.org/wiki/VAD_and_CNG Mike On Sep 15, 2008, at 5:14 AM, Sluschny, Thomas wrote:
thank you very much Tamas, i found this infos very useful :)
-----Ursprüngliche Nachricht----- Von: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org ] Im Auftrag von Tamas Gesendet: Samstag, 13. September 2008 14:31 An: freeswitch-users@lists.freeswitch.org Betreff: Re: [Freeswitch-users] VAD and CN question
Hello,
to answer for my own email - for other who might be interested...
Tamas írta:
Hello,
I've talked about CNG, VAD with Anthony and Brian already but I still have a mess in it and don't really know how it works.
Could anybody explain the practical side of these magic options?
1. What does suppress_cng=true do exactly? (yep, I know it suppresses CNG, but what does this mean? Won't send out the CN/8000 rtpmap in SDP?)
suppress-cng and suppress_cng are used to manage the sending of CN RTP packets after agreement through SDP.
2. What do VAD settings do in sofia profile? I've read http://wiki.freeswitch.org/wiki/Sofia.conf.xml
<!-- <param name="vad" value="in"/> --> <!-- <param name="vad" value="out"/> --> <!-- <param name="vad" value="both"/> -->
What do these options do in practice? Can FS detect silence (e.g. no RTP?) and than what can it do with?
When VAD is turnd on, FS checks on the given channel for incoming or/ and outgoing channel (depends on the settings) and when detects silence, stops sending out RTP.
3. I found undocumented options rtp_enable_vad_in, rtp_enable_vad_out for sofia which might be the per call settings for point 2. ? If this is correct, what will this do? <action application="set" data="rtp_enable_vad_in=true"/> <action application="set" data="rtp_enable_vad_out=true"/> <action application="bridge" data="sofia/....."/>
These settings are the same as in 1. but can be used per call.
4. What will FS do when one side of the bridge supports CN but the other doesn't? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN Would it be possible to turn on comfort noise generation in FS for the side which cannot handle CN?
When on side does not support CN, FS simply won't forward CN RTP packets. Comfort noise generation into media channel in FS is possible with bridge_generate_comfort_noise=true added in r9543. More about on http://wiki.freeswitch.org/wiki/VAD_and_CNG
5. Is it possible to let FS detect silence and on one leg send CN packets insted of RTP? E.g. softphone->FS->GW (sends CN packets) the softphone does not support CN, but for saving bandwidth it would be good to have silence detection and in case of silence FS lets send CN instead of RTP.
Yes, possible. VAD has to be turned on that channel and both sides have to agree on CN RTP packets (in SDP).
Sorry for my dump questions, I would like to understand the whole picture.
I hope I'm on the right way :)
I would like to add the clarification to FS wiki to lets other have less troubles (with endpoints on one side supporting VAD/CNG and endpoints on other side not supporting VAD/CNG, e.g. CallWeaver)
Check http://wiki.freeswitch.org/wiki/VAD_and_CNG
Thanks in advance!
Regards, Tamas
Michael Jerris wrote:
A big thanks to Tamas and Steve Underwood for putting this new page together:
Indeed. Two questions: 1) Does VAD apply fully, partially or not at all when it comes to on-hold music containing vocals? 2) Are you avoiding or are we include references to external sites documentating matters? Example in case: Shouldn't "Voice Activity Detection" be a link to the Wikipedia page on the matter, for further reading? Perhaps external references to the bottom of the page? Can't find a decision on this if one has been made. James
James Green wrote:
Michael Jerris wrote:
A big thanks to Tamas and Steve Underwood for putting this new page together:
Indeed. Two questions:
1) Does VAD apply fully, partially or not at all when it comes to on-hold music containing vocals?
2) Are you avoiding or are we include references to external sites documentating matters? Example in case: Shouldn't "Voice Activity Detection" be a link to the Wikipedia page on the matter, for further reading? Perhaps external references to the bottom of the page? Can't find a decision on this if one has been made.
The last time I looked Wikipedia had a completely useless page for VAD. It looks like they have now replaced it with a perfectly reasonable page. Steve
participants (5)
-
James Green
-
Michael Jerris
-
Sluschny, Thomas
-
Steve Underwood
-
Tamas