Galaxy Communicator Open Source Toolkit:

Toplevel Index

License / Documentation home / Help and feedback


The Galaxy Communicator Open Source Toolkit (OSTK) is a suite of wrappers and servers which you can use to help construct end-to-end voice- and telephone- enabled dialogue systems. This suite exploits the Galaxy Communicator software infrastructure (GCSI), an open source distributed, message-based infrastructure optimized for dialogue system design. This release of the OSTK requires Galaxy Communicator 4.0 or later. We hope in the long run that all elements of this toolkit will run on Sparc Solaris, Intel Linux and Windows, but we don't yet provide consistent support for all platforms.

The MITRE contributions to the OSTK are distributed under the same license as the GCSI. Other contributions may have slightly different open source licenses.



Components of the toolkit

In these tables, we describe the servers which are currently available and also those which we hope to release in the future. We don't have documentation for a number of the available servers yet, for which we apologize. The distribution also contains scripts for running some server configurations. All these servers require the relevant GCSI server libraries (that is, the C library for C servers, the Java library for Java servers, etc.).

Note that we have not yet identified any appropriate language generation tools.

Currently available and supported

Package Category Version number Platforms supported Server or wrapper? Other software required Developed by Supported by Status
MITRE I/O podium Text input/output 1.1 all platforms server Python MITRE MITRE Stable Python implementation from internal MITRE effort.
audio echo Audio 1.1 Sparc Solaris, Intel Linux server none MITRE MITRE The audio echo server can be used to test audio devices. It copies audio from an incoming broker connection to an outgoing broker connection.
audio GUI server Audio 0.9 all platforms server JDK 1.3 (or 1.4) MITRE MITRE This is an audio control GUI which works with CATS. It includes a telephone keypad simulator.
CATS PortAudio server Audio 1.0beta2 Sparc Solaris, Intel Linux, Windows wrapper PortAudio, MDTM MITRE and others (in development) N/A We are using the PortAudio audio I/O library to build an audio server which actually works on multiple platforms. We intend to fold in telephony support; we have a very preliminary implementation for the ComputerFone, and we're hoping to incorporate support for other platforms developed by third parties.
SoX wrapper Audio 0.1 Sparc Solaris, Intel Linux (we hope) wrapper SoX 12.17.3 MITRE MITRE We have built a wrapper around the SoX audio conversion library. This is very preliminary work.
SoX GUI
Audio
0.1
Spar Solaris, Intel Linux
server
Python
MITRE
MITRE
This Python GUI provides control for all features of the SoX wrapper, including playing and recording files and adding effects.
MIT dialogue tools Dialogue included in Galaxy Communicator distribution all platforms server library none MIT MIT MIT continues to develop these dialogue tools and uses them in all their dialogue systems. They have been part of the Galaxy Communicator distribution from the very beginning.
PostGres wrapper Database 1.0 Intel Linux wrapper PostGres MITRE MITRE Stable implementation from Galaxy Communicator 3.2 distribution.
Festival wrapper Synthesis 1.0 Intel Linux wrapper Festival MITRE/University of Edinburgh MITRE Stable implementation from Galaxy Communicator 3.2 distribution. Alan Black, the developer of Festival, contributed this wrapper. CSLR distributes a different wrapper as part of its Communicator-compliant dialogue system toolkit, available on an open-source basis for noncommercial use, and CMU distributes an analogous wrapper as part of its Communicator-compliant system under a full open-source license. MITRE is making arrangements to distribute a wrapper based on as many of these sources as possible.
Hub visualization server Utilities 1.0 all platforms server JDK 1.3 (or 1.4) MITRE MITRE This tool supports the API for remote Hub displays (see the -gui argument of the Hub executable). This tool is under active development.

Currently available but unsupported

Package Category Version number Platforms once supported Server or wrapper? Other software required Developed by Supported by Status
MITRE UI server Text input/output 1.0 Sparc Solaris, Intel Linux server none/Python MITRE MITRE Stable C and Python implementations from Galaxy Communicator 3.2 distribution. Superseded, by and large, by the MITRE I/O podium.
JSAPI wrapper Speech recognition 0.1 Windows wrapper IBM ViaVoice or other JSAPI-compliant recognizer, JDK MITRE unsupported A number of years ago, MITRE attempted to abstract from a number of sources a proposed message set for speech input and output. As part of this effort, we developed a JSAPI wrapper which we demonstrated working with IBM ViaVoice. This code (and the accompanying standardization effort) is dormant, but we're providing it in case someone finds it useful. 
Oracle wrapper Database 1.0 Sparc Solaris wrapper Oracle 7, 8, perhaps later MIT/MITRE not supported Stable implementation from Galaxy Communicator 3.2 distribution.
TrueTalk wrapper Synthesis 1.0 Sparc Solaris wrapper TrueTalk (Entropic synthesizer, no longer produced) MITRE not supported Stable implementation from Galaxy Communicator 3.2 distribution.
Frame transducer Utilities 0.1 all platforms server Python MITRE not supported This tool is a general-purpose frame transducer for Galaxy Communicatof frames. The transduction language is not well-documented, and development has stopped on this tool.

Not yet available

Package Category Server or wrapper? Other software required Developed by Supported by Status
CSLR Dialogic audio telephony server Audio server none CSLR CSLR CSLR distributes this server as part of its Communicator-compliant dialogue system toolkit, available on an open-source basis for noncommercial use. MITRE and CSLR have plans ultimately to distribute this server as part of the OSTK under a full open source license.
Sphinx wrapper Speech recognition wrapper Sphinx CSLR and CMU CSLR and CMU CSLR distributes a wrapper for a modified version of Sphinx as part of its Communicator-compliant dialogue system toolkit, available on an open-source basis for noncommercial use. CMU distributes a similar wrapper as part of its Communicator-compliant system under a full open-source license. MITRE is making arrangements to distribute a wrapper based on either or both of these sources.
Mississippi State ISIP wrapper Speech recognition wrapper ISIP recognizer ISIP ISIP ISIP has constructed a Communicator-compliant wrapper for their speech recognizer. This wrapper is not yet publicly available, but we hope to make it available as part of the OSTK.
Phoenix wrapper Parsing wrapper CSLR Phoenix parser CSLR and MITRE MITRE CSLR distributes the Phoenix parser as a separate, open-source download, as well as a wrapper for it as part of its Communicator-compliant dialogue system toolkit, itself available on an open-source basis for noncommercial use. This wrapper produces strings which must be parsed with accompanying CSLR libraries in downstream servers. The MITRE wrapper produces output as frames instead. This wrapper is not yet correct; when it is, we will distribute it.
MITRE dialogue manager Dialogue server library Python MITRE (under development) N/A MITRE is developing some simple dialogue tools for use in proof-of-concept systems. This effort is still very preliminary, but we hope to expand it.
Speechify wrapper Synthesis wrapper Speechify CSLR N/A CSLR has constructed a wrapper for the SpeechWorks Speechfiy TTS product. In the future, MITRE may distribute this wrapper as part of the OSTK.

Examples

The OSTK also comes with some working examples of its functionality. All examples require the process monitor in the Galaxy Communicator distribution, which means that a working Python executable must be configured at compile time.
 
Example Dependent servers/wrappers Description
Audio echo CATS, audio GUI, audio echo (threaded version; do make thread in audio_io/audio_echo/src) This demo allows the user to try all the features of the CATS server. The user's audio is echoed back to the CATS server using the audio echo server.
SoX echo
CATS, audio GUI, SoX GUI, SoX wrapper
This demo is similar to the audio echo demo, except that the SoX wrapper substitutes for the echo server. The user has access to all SoX wrapper functions via the SoX GUI, including resampling, playing and recording audio files, and adding effects (!).
Toy travel visualization MITRE I/O podium, Hub visualization server This is a version of the toy travel demo from the core distribution which has been modified to use the I/O podium from the OSTK as its I/O monitor (and input device), and also shows how to set up and use the Hub visualization GUI.


Installation

Unix

This distribution requires the Galaxy Communicator software infrastructure (GCSI) 4.0 or later, and also requires GNU maketo compile on Unix.

Step 1

Copy GC_HOME.make.in to GC_HOME.make, and set the value of GC_HOME in GC_HOME.make to the root directory of your Galaxy Communicator software distribution.

Step 2

Create Makefile.settings.<ARCHOS> (see the Galaxy Communicator installation documentation for appropriate values for <ARCHOS>) either by copying it from another location or from Makefile.settings.in, or by executing make -f Makefile_settings.make, which will compute the correct ARCHOS value for you and create a default file.

Step 3

Populate the Makefile.settings.<ARCHOS> file as instructed to enable compilation of the various servers.

Step 4

Compile. The available compilation targets are identical to those available in the Galaxy Communicator distribution.

Windows

Only portions of OSTK currently run on Windows. The Java and Python servers and wrappers should run just fine, as long as GC_HOME is in your environment. See the individual documentation pages for more details. There is one C server which has a MSVC workspace built for it, namely, CATS. See the CATS documentation page for more details. Of the three examples, the audio echo example should run mostly on Windows, except that you'll need a Unix box to run the audio echo server; the SoX audio example is not yet guaranteed to run, and you'd need a Unix box to run the SoX wrapper; and the travel visualization example should run without problems.


Help and feedback

The instructions for help and feedback are similar to those for the core Galaxy Communicator distribution. The relevant sections are repeated here.

General instructions

There are two resources available to you: the bugs-darpacomm@linus.mitre.org bug queue and the public mailing lists. Please do not send messages directly to the individual developers. It's easier for us to track problems and respond promptly if you use the mailing lists or the bug queue. If you receive mail from an individual developer in response to a submission to the bug queue, feel free to reply, but please do not delete any "CC:" entries in the mail you receive.

We recommend that everyone who uses the Open Source Toolkit and the Galaxy Communicator infrastructure subscribe to the main public mailing list, for release announcements and other information you may find useful.

Getting help

If you need help with the Open Source Toolkit, please see if the answer to your question can be found in the core Galaxy Communicator documentation. If not, then by all means send a query to one of the addresses above.

Reporting a bug

It's best to send a message to the bugs-darpacomm@linus.mitre.org bug queue as described above.

Feature requests

Either the public mailing list or the bug queue is fine.


Other sources of GCSI-compliant software

See the links pageof the GCSI distribution.


License / Documentation home / Help and feedback

Last updated October 4, 2002