Media bugs are used to hook into the call and provide decoded audio to the module. That requires transcoding, naturally. See stress_callback which is called for each audio frame plus some init/cleanup hooks, and read up on the API at http://docs.freeswitch.org/group__mb1.html.

I suspect read vs write would correspond to the speaking/listening directions of the channel. Read from caller, write to caller? The names come from the media bug API. The read/write options will add the corresponding media bug, stop will remove them.

SWITCH_ADD_APP tells you it's a dialplan application - it's started from dialplan, although you can also trigger dialplan apps on a channel via ESL using uuid_broadcast.

The FFT algorithm is used to extract the frequencies present in the sample (the power spectrum). The algorithm then tries to detect stressed based on that. Looks like the algorithm at least in part attempts to look for tremor in the voice. More tremor indicates more stress. Over a threshold it raises an event.

Bear in mind that as it's pattern recognition (and little tested at that) you'll get a lot of false positives and false negatives. It's also looking for something in the voice that may or may not be there - some people might be able to speak with an unstressed voice when they're actually quite stressed.

-Steve




On 22 January 2013 11:19, Peter Steinbach <lists@telefaks.de> wrote:
Hello Anthony,

although it may be incomplete, it may be useful for us. Can you give us some basic explanation, how this works?
I can see in the code that there is a stress command with read|write|stop parameter.
Is this to be issued via event socket or is it a dialplan application? I suspect that "read" somehow starts the detection and "stop" somehow stops the detection. For "write"  I currently have no idea.

I would be happy to test this and report my configuration, explanations and examples in the wiki.

Best regards
Peter



On 01/22/13 00:30, Anthony Minessale wrote:
That module is incomplete we made it several years ago to test some code that was supposed to pick up on stress in your voice in a media bug so we could fire events and whisper "lie" to the caller as he talked to the guy.



On Mon, Jan 21, 2013 at 4:56 PM, Peter Steinbach <lists@telefaks.de> wrote:
I am also wondering, what this module does in detail.

Regarding the source code, I can see that FFT's are made in order to to
get some sort of frequency profile.
But the code and remarks do not give me a clue how this module actually
works.

Best regards Peter



On 05/26/12 15:05, BF wrote:
> Hello,
>
> I'd like to know what the "stress write" from mod_stress module does. I have hard time finding documentation or an example about mod_stress module.
>
> Anyone?
>
> Thank you.
>
> Eric
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting@freeswitch.org
> http://www.freeswitchsolutions.com
>
> FreeSWITCH-powered IP PBX: The CudaTel Communication Server
> http://www.cudatel.com
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> Join Us At ClueCon - Aug 7-9, 2012
>
> 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
>


--
With kind regards
Peter Steinbach

Telefaks Services GmbH
mailto:lists (att) telefaks.de
Internet: www.telefaks.de


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

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
http://www.cudatel.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.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



--
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
Twitter: http://twitter.com/FreeSWITCH_wire

AIM: anthm
MSN:anthony_minessale@hotmail.com
GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:888@conference.freeswitch.org
googletalk:conf+888@conference.freeswitch.org
pstn:+19193869900


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

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
http://www.cudatel.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.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


-- 
With kind regards
Peter Steinbach 

Telefaks Services GmbH
mailto:lists (att) telefaks.de
Internet: www.telefaks.de


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

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
http://www.cudatel.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.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