Clique Audio

The CliqueAudio device that ships with LSR combines the IBM text-to-speech engine with the FMOD audio library to support multichannel, concurrent speech and audio output with HRTF spatial sound processing using ALSA. The name CliqueAudio comes from the prototype audio display software I built for my thesis. The advanced audio output in LSR is a subset of this functionality. It will improve over time.

The remainder of this document describes how to configure your LSR installation to enable use of the CliqueAudio device. Such a configuration currently affords:

  1. dmix support so that LSR can speak while other applications are making noise

  2. audio file playback support for Perks that make use of such a feature
  3. concurrent speech support for Perks that can report more than one stream of information at a time without on interrupting another (e.g. typing a Gaim/Pidgin message when a new message arrives)

Install libraries

Install a copy of the IBM TTS engine. Currently, CliqueAudio only supports the default language on your install. Language switching will be added in a future update to CliqueAudio.

Install a copy of the latest version of the FMODEx library. The stable releases should work fine, though the developer releases are often quite stable and have more bug fixes. Decide how brave and daring you want to be.

Install Python bindings

Install the pyibmtts Python binding for IBM TTS. You need to have this installed even if you want to use IBM TTS directly without the FMOD mixer.

Also install the pySonicEx Python binding for FMODEx. Be sure to grab the Ex version, not just pySonic. You should compile this module against whatever version of FMODEx you decided to install. If you receive an error building or running, you may need to file a bug or hack the pySonicEx code to keep up with the latest FMODEx changes.

Test the install

Test your install of the four packages by running the Python interpreter at the prompt and importing both pyibmtts and pySonicEx.

[parente@pparent ~]$ python
Python 2.4.4 (#1, Oct 23 2006, 13:58:00) 
[GCC 4.1.1 20061011 (Red Hat 4.1.1-30)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyibmtts
>>> import pySonicEx
>>>

If no exception is raised, the install succeeded. Continue with the following directions. If not, get help.

Use CliqueAudio

By default CliqueAudio tries to load before all other audio output devices. Run lsr -l debug once and watch the messages about which output device loads successfully. If some device loads before CliqueAudio (i.e., you previously re-arranged the device load order), you can correct it with the following command:

lsr -a CliqueAudio -p user --index=0

Once you confirm that the CliqueAudio device is loading, you can return to running LSR using your preferred method.

[Anchor(help)]

Getting help

Join the #lsr channel in irc.gimp.net or email lsr-list@gnome.org for help troubleshooting this configuration.

Attic/LSR/CliqueAudio (last edited 2013-11-21 22:56:08 by WilliamJonMcCann)