Open Source Toolkit Documentation:

The MITRE Festival Server

License / Documentation home / Help and feedback


The MITRE Festival server provides a Communicator-compliant interface to Festival. We've tested this server with version 1.4.1.



Status

History and plans

Stable implementation from Galaxy Communicator 3.2 distribution. Alan Black, the developer of Festival, contributed this wrapper. We hope to fold it in with wrappers from CSLR and CMU.

Version history


Usage

In order to use this server, you must have the real festival server running somewhere:
% $FESTIVAL_BIN/festival --server
By default, the Festival server listens on port 1314, and the MITRE Festival interface uses that port by default to contact it.

Command line

<OSTK_ROOT>/bin/festserv ...

Default port

15020

Command line arguments

static char *oas[] = {
  "-tts_host host", "host where the festival server (festival -server) is running (default: localhost)", FESTIVAL_DEFAULT_SERVER_HOST,
  "-tts_port port", "port on which festival server is running", NULL,
  "-text_mode mode", "Text mode used by festival (default: fundamental)", FESTIVAL_DEFAULT_TEXT_MODE,
  NULL
};
This server also accepts the standard server arguments. See the command-line argument parsing library in the Galaxy Communicator documentation for details.



 

Message set



speak_output takes a string and produces a waveform, and notifies the audio server of incoming audio.
 
  parameter type optional depends on description/constraints
IN: :reply_string string     string to be synthesized
:session_id string yes   if session IDs are being used, this should be the session ID of the current session

This message returns a frame.

reinitialize sets up the TrueTalk server for the connection.
 
  parameter type optional depends on description/constraints
IN: :encoding string yes   encoding for the audio. Legal values are linear16 (16 bit PCM) or mulaw255 (8 bit mu-law). Defaults to 8-bit mu-law. The encoding names are used for consistency with the MIT audio device message handle_synth_data.

CAUTION. Although this server is configured to handle both possible encodings, at the moment only 16 bit PCM is working.


Messages issued

The synthesis server issues a message to the Hub when there are waveforms to be read and presented on the audio device. This message has the following form:

Start of speech

When the audio server detects audio input, it dispatchs a broker request for another server to read the audio, which can be claimed by the recognizer. The broker request is of the form
{c synthesis
   :broker_port <integer>
   :call_id <string: broker connection ID>
   :synth_host <string: current host>
   :synth_port <integer: value of :broker_port>
   :sample_rate 8000
   :encoding_format [ linear16 | mulaw255 ]
}
The broker server accepts either GAL_BINARY (for 8-bit mulaw) or GAL_INT_16 (for 16 bit PCM) data, as well as the following control messages of type GAL_STRING, following the MIT audio playbox control protocol:

Known bugs

None yet.

License / Documentation home / Help and feedback

Last updated January 25, 2002