About FreeADSP
FreeADSP, acronym for "Free Audio-oriented Digital Signal Processor" is a free, modular, audio-oriented, real-time, cross-platform DSP software system aimed at becoming a reliable replacement to pedal boards and stomp boxes for music players, as well as being suitable for any other kind of real-time sound processing.
The project is not being developed at the moment since it will depend on the features offered by the NASPRO framework, which is itself in an early state of development. If you're really interested, you can take a look at the Development page.
Here's a wishlist of features for the next release (0.1.0):
- Freedom of use: the FreeADSP package is already released under the GNU General Public License version 2 or later, which means that you are given permission to copy, modify and redistribute it (under the terms of license, of course). Things will not change from this point of view.
- Modularity: as it goes for NASPRO, whenever it makes sense to modularize some feature, that would be the path to follow.
- Portability: the language used for FreeADSP development is C, which is, on its own, quite universal and portable at the moment. The source code will strictly follow the ISO/IEC 9899:1990 (aka ANSI/ISO C and C89) standard and use the NASPRO OS abstraction layer.
- NASPRO support: FreeADSP will probably be the first choice NASPRO host for real-time/live sound processing, so it will inherit all good things NASPRO is going to introduce (most notably "processing object" standard independence and interoperability, fast and multi-threaded processing).
- Device support: this is one of the key features. What will make FreeADSP truly different from 'direct competitors' (which really are not) like Om, GNUitar or JACK Rack is that it will let you use any kind of device (when I say any I mean ANY, not only MIDI or OSC stuff) via device driver-like modules to interact with each part of a preset, or even with the program itself (bypass mode, next/prev preset, next/prev bank, etc.)
- Presets, banks, livesets: you will be able to make up not only chains of effects, but even complicated networks of processing objects with feedbacks. Each of these networks is a preset. Then you'll be given the possibility to group them in banks (much like it happens with pedal boards) and finally these can be arranged in livesets.
- Configurability: a software system which pretends to work on many machines and in a very generalistic fashion, obviously needs a high degree of configurable options. This is the case.
- Internationalization: Not much to say about this... this software will speak your own lingua if such a translation will be available.
- Documentation: my intent is to provide both Doxygen auto-generated code documentation as well as an 'handwritten' GNU Texinfo manual for users and developers.
- Community support: of course, this can all be possible if and only if a community of artists, users and developers support this project... Did you really think I'm so crazy to think of doing all of that on my own?
Too much? Only time will tell! ;-) And of course if you want to help, you're more than welcome!