an extensive open-source Python framework
for data sonification research and auditory display

HOME    intro low-level medium-level high-level conversion  



Sound: Medium-Level Rendering

Name   PySndObj
Description   PySndObj is Victor Lazzarini's python wrapper for his own object-oriented audio processing SndObj (the Sound Object Library). SndObj is a collection of code 'objects' that can be used to build sound-rendering applications for data sonification where it is necessary to have direct control of the sound at a relatively low-level, such as might otherwise be implemented with Csound or SuperCollider Unit Generators.
Principal Reference   sndobj on Sourceforge.
Documentation   A PDF of the Sound Object Library is available as a Sourceforge download. It requires some 'interpreting' for PySndObj as it is of the C++ Library Classes.
Version   1.0.2. Available for OSX, Linux and win32.
License LGPL
Download   Sourceforge download
Dependencies   SndObj 2.6.4.
Examples   In addition to the document referred to in Documentation, above, there a PySndObj.pdf of some example code which should get you started. A direct link will display the document in your browser.
Warnings   None really. Audio tasks are turned on and off directly.
Initial Comments   Excellent tool, thoroughly documented.

Speech Sound: PySpeak. Another option is Festival which is potentially more powerful but requires more work.

Name   PySpeak 
Description   PySpeak is a SoniPy adaption of espeak. An extendable library version is currently under development.
Principal Reference   Sourceforge provides and overview of espeak.
Documentation   TBA. See espeak's Sourceforge link for a taste...
Version   TBA
License TBA
Download   Sourceforge for the original code.
Dependencies   espeak - Linux and msWin only at present, which depends on portaudio. See Comments, below.

Until a dynamic library and python wrapper is built (se Warnings), we can use the "pipe of last resort" as illustrated in the following example. This technique is useful for any application which works with standard unix IO pipes:

Warnings   espeak will not compile "out of the box" on OSX. We plan to release OSX compiled binaries and python wrappers.
Initial Comments   Espeak is an object library implementation of speak, a modern phonenen synthesiser. We have selected speak as the first text-to-speech tool for data sonification primarily because of the simplicity and adaptability of it's architecture; It is feasible to control the whole process from phoneme specification using espeak's sister program espeakedit and synthesise mutiple simultaneous voices. At the time of writing, it does not have a python interface as is written with multiple audio threading on the windows platform in mind. We are adapting speak to take account of OSX's audio tools. In the mean-time it is possible to use the "pipe of last resort" as illustratd in the example.
HELP : components

user interfaces
Copyright © 2007-2009 David Worrall                                                                                          Last updated: 20090327