Boodler can generate audio output to several destinations, each of which is defined by a driver module:
file-- write file containing raw sample output
stdout-- write raw sample output to stdout
oss-- Open Sound System
esd-- Enlightened Sound Daemon
alsa-- Advanced Linux Sound Architecture
macosx-- MacOSX CoreAudio
vorbis-- write Ogg Vorbis file
shout-- Shoutcast or Icecast source
lame-- write MP3 file with LAME encoder
boodlePython package. This contains several Python modules which are used by Boodler.
boodle.cboodlemodule. This module performs the resampling, linear interpolation, and mixing operations which are at the heart of Boodler. It is written in C for efficiency.
Agentclass creates and controls an individual soundscape. When you start up Boodler, you select an
Agentto run. (Note that this is a directory full of Python modules, but it is not a true Python package -- it lacks an
Boodler requires two environment variables to be set:
/home/zarf/lib/boodler-snd, for example.)
/home/zarf/src/boodler/effects, for example.)
You may also want to make sure that Python's script directory is in
PATH. On most Unix systems, this will be
/usr/local/bin. However, on MacOSX, it is the (somewhat
This tries to figure out the configuration of your system, and compiles the Boodler modules which can be compiled.
This installs Boodler in the system's Python directory. The
sudo command will ask you for your password, which the
setup script needs to write to a system directory. If you want to
install to a different directory, you could instead type:
python setup.py install --prefix
boodler.py play.OneSound pure/stereotest.aiff
You should hear a seven-note series of test tones -- first alternating between left and right channels, and then playing in both.
You can now begin using Boodler.
/usr/local/bin/boodler.py, or (on the Mac)
boodler.py --list-driversto see a list, and then try adding
-o driverto your Boodler command line.
boodle.cboodlemodule was unable to open the sound device. The first line of the error message will have a more specific explanation.
/dev/dspis not found.
--deviceargument to indicate the correct location:
boodler.py --device /dev/whatever play.OneSound pure/stereotest.aiff
python configure.py --integerconfiguration option. This reduces the number of floating-point operations, at the cost of less accurate volume fading.
--define buffercount=countoption. The default is 6; increasing it to 12 or 16 should help:
boodler.py --define buffercount=12 play.OneSound pure/stereotest.aiff
alsamixer) to reduce the "PCM" component of your sound driver. You can compensate by turning up the "Master" component, or just turning up your speakers.
--masterargument to Boodler, giving it a master mixing volume less than the default of 0.5. Again, you can compensate with a mixer application or by turning up your speakers.