JAudioLibs is a collection of open-source audio utilities developed as part of
Praxis that are being released separately. The current releases consist of
JNAJack (a binding to
JACK) and the
AudioServer API. Other things are in active development.
JNAJack provides an alternative to JJack to use JACK from Java / Processing. Unlike JJack, it is designed to provide direct access to the various elements of the JACK API, works across all 3 JACK platforms (Windows, OSX and Linux), and is in active development.
The
AudioServer API provides a simple common callback API for audio (a kind of PortAudio for Java). There are currently backends for JACK and JavaSound (the JavaSound backend uses various hacks to get better performance than typical usage). Further backends are in development.
A number of other projects (such as Beads) are transitioning to use these libs, but I thought I'd post an announcement here as they might be of use to a few people directly. These are low-level audio API's, so be prepared to get down and dirty with multi-threading and lock-free communication!
It's been quite a while since I last used Processing, having moved on to working in plain Java, but it was really useful and important to me when I was first learning ...
Fast forward to 2011, and I'm currently working on a cross-media patcher-style application in Java called Praxis (
http://code.google.com/p/praxis/). I love patcher-style environments, though one of the downsides is obviously when the built-in components don't offer what you want(!), hence Praxis has live-coding possibilities built in as well. The Processing API was an obvious choice given it's quick and easy to work with, and people know it. This is a reimplementation though as it's built on top of Praxis' rendering pipeline.
It's new and under heavy development, so it's missing some better documentation, and there's some major omissions at the moment (transforms, text, etc.) as well as some things that work differently dues to the constraints of the environment and/or the fact that it's pure Java not Processing syntax. It also has a couple of extras (mainly blendMode() and animatable parameters).
There's a few examples on the code site, and I'll get on with adding documentation soon. I'll keep an eye on this thread if anyone's got any questions, or post the first question on Praxis' new discussion group!
Hope that's of interest to some of you. To the rest, apologies for the diversion, spam, etc