/mod_vad

a freeswitch mod

Primary LanguageCMIT LicenseMIT

mod_vad

a freeswitch mod

=======

This is an implementation of voice activity detection for FreeSWITCH.

Currently, in limited testing, we are about to get satisfactory results in determining what is a human and what is a machine, but there is much more to do:

  • Emit events when a decision is made (Not sure, Machine, or Human).
  • Make sure that we are unlocking and cleaning up where necessary.

Building

To build this module, all you need to do is type make, but because it relies on pkg-config and FreeSWITCH, you need to point pkg-config to where FreeSWITCH is installed before building:

host$ export PKG_CONFIG_PATH=/usr/local/freeswitch/lib/pkgconfig/
host$ make

Sample Configuration

Just put a file like this in your freeswitch installation, in conf/autoload_configs/vad.conf.xml

<configuration name="vad.conf" description="mod_vad Configuration">
  <settings>
    <param name="silence_threshold" value="256"/>
    <param name="maximum_word_length" value="5000"/>
    <param name="maximum_number_of_words" value="3"/>
    <param name="between_words_silence" value="50"/>
    <param name="min_word_length" value="100"/>
    <param name="total_analysis_time" value="5000"/>
    <param name="after_greeting_silence" value="800"/>
    <param name="greeting" value="1500"/>
    <param name="initial_silence" value="2500"/>
  </settings>
</configuration>