Open Source Toolkit Documentation:

Audio Echo Example

License / Documentation home / Help and feedback


Description

We have assembled an example which allows the user to test the CATS audio server in all its various modes. The user input is routed to the audio echo server, which returns the audio to CATS.

Note. The audio echo server must run in threaded mode, because it's possible for a pair of single-threaded servers to deadlock trying to contact each other for brokering. (It's actually any ring of mutually brokering servers which causes the problem, but the likelihood of deadlock decreases significantly with every server you add to the ring). In order to compile the appropriate server, execute make thread in audio_io/audio_echo/src.


Starting up

Unix

% <OSTK_HOME>/examples/cats_echo/script/cats.csh

Windows

We do not yet have a MSVC workspace file for the audio echo server, which this demo requires. To run this demo on Windows, you'll need to have a Unix machine to run the audio echo server on, and you'll also need to pass a value for the -locations command line argument of the Hub to inform the Hub where to find the server. For instance, if you're running the audio echo server on a machine named foobar, you'll add -locations audio_echo@foobar:5000 to the Hub command line.

GC_HOME must be set in your environment. This command line assumes that OSTK is also set, and that Python is in your path. Also,  make sure the MDTM library is accessible to the CATS executable by following the Windows runtime notes.

C:\> python.exe %GC_HOME%\contrib\MITRE\tools\src\process_monitor\process_monitor.py %OSTK%\examples\cats_echo\script\cats.config -- %OSTK%


Running

Start the servers in order. When the Hub connects to the audio GUI server, two windows will appear. See the audio GUI server documentation for more details about how to use this GUI. Note especially that the audio GUI may require JDK 1.4 in order to run reliably, especially on Windows. Keep in mind that the value of JDK_HOME that the process monitor uses is inherited from the core GCSI installation; if you need to change it to JDK 1.4, just modify the command line in the process monitor.

Once all the servers are up and the audio GUI is started, press the "Off Hook" button on the keypad. The initial configuration is full-duplex, streaming, with barge-in and VAD enabled. You should be able to control each of these parameters in the controller GUI.


License / Documentation home / Help and feedback

Last updated October 4, 2002