Aglaophone 080102
by Steve Holland

No Download Available

Operating System:
File Size: 22 MB
License Conditions:


System Requirements:
  • 500 MHz Pentium or equivalent
  • Kernel 2.0 or better
  • ALSA sound drivers v0.9.x
  • an mp3 encoder -- required for real-time mp3 comparison - bladeenc, lame
Last Updated: 2002-08-01
For more detail about software : Software Description
  View Aglaophone 080102 Screenshot

Software Description

Source Code for a system of interconnectable modules for the recording, processing, and playback of real-time audio.

What does it do?

Anything you want, provided you write modules

Modules with the following functionality are included:

  • soundcardio -- recording/playback with an off-the-shelf soundcard.
    Supports oversampling and oversampling anti-alias/anti-image filtering.

  • spectr -- real time spectrogram and oscilloscope display
  • bits -- increase the amount of quantization (decrease the number of bits) of a signal.
  • rawread -- read unformatted sample data
  • rawwrite -- read unformatted sample data
  • mp3gate -- gateway to an MP3 compressor/decompressor
  • splitter -- generate two outputs from one input
  • syncswitch -- switches between two inputs. Supports 'blind test' mode.
  • upsamplefilter -- upsample and then filter a signal
  • filterdownsample -- filter and then downsample a signal
  • adder -- add two signals together

These can be connected in any way you please. A typical connection might be:

  soundcardio(record) -> bits -> spectr -\
    (play)\-    <-     <-     <-      <--/

Writing additional modules

If the modules included with the Agalophone distribution don't do what you
need, go ahead and write more! There is a utility library in the lib/
directory which is full of convenient routines. You can also use pre-existing
modules as examples. For a signal processing module, "bits" is probably the
best example.

If you do write additional modules, I request (but do not require) that you
do the following things:

  1. Use portable API's when possible. Especially, use Java over a pipe to
    build GUI's (see Bits for an example), and use OpenGL with Glut for
    graphics (see spectr for an example).

  2. Avoid C++ unless you get a real benefit from its capabilities. It
    usually adds unneeded complexity and makes porting difficult because
    of differences between compilers. To make matters worse, the
    C++ standards committee has Pentagon syndrome.

  3. Send me a copy (preferably GPL Licensed) so I can include it with
    the distribution.

Syndicate content