A compact self-contained realtime audio-synthesis engine
Lyd is meant to be used as an audio engine in games for realtime effects as well as background music. It is also a testbed for the original author to experiment with audio synthesis and various forms of composition.
Features
- library/engine
- Small binary footprint
- language binding friendly C API
- Realtime playback/mixing
- Custom audio synthesis language with vm/compiler, for doing subtractive, fm, additive and perhaps other forms of synthesis.
- patch databank (preloaded with FM-synthesis biased GM set)
- MIDI sequencer
- PCM (wav) audio sources and effects
- Audio output drivers for: ALSA, and jack
- audio daemon
- MIDI/OSC control
API documentation
Not much yet, the entire public API is defined in lyd.h, and simple examples of it's use can be seen in some small examples.
Sources
- lyd lives in git: git repo summary, browse code.
- lyd-master.tar.bz2
- lyd-master.zip
git clone git://pippin.gimp.org/lyd
Lyd binary / audio daemon
In addition to installing a library and public headers, lyd installs a commandline audio synthesis daemon that can be operated via MIDI or OSC (depending on library availability at compile time.
The OSC support needs rethinking, and probably re-integration with the midi support. Allowing repatching instruments used with MIDI on the fly from OSC.
The lyd binary will try to play back midi files passed in the first argument. Note that for voices with many tracks/simultanous voices, lyd is likely to become overpowered.
Roadmap/plans/todo/bugs (contributions welcome)
- Improve GM patch set
- The compiler contains a leak.
- Sequencer/Tracker UI
License
Lyd is licensed under the ISC license:
Copyright (c) 2010 Øyvind Kolås <pippin@gimp.org>
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
