Home

Awesome

Processing Sound library

Release License Documentation Javadoc

The new Sound library for Processing provides a simple way to work with audio. It can play, analyze, and synthesize sound. The library comes with a collection of oscillators for basic wave forms, a variety of noise generators, and effects and filters to alter sound files and other generated sounds. The syntax is minimal to make it easy for beginners who want a straightforward way to add some sound to their Processing sketches!

How to use

The easiest way to install the Sound library is through Processing's Contribution Manager. The library comes with many example sketches, the full online reference can be found here.

If you have questions or problems using the library, the best place for help is the Processing Discourse. Bugs can be reported on the Github issues page, advanced users can also have a look at the library's full JavaDoc documentation.

For detailed changelogs, have a look at the Github releases page.

Playing back sound files

Audio files loaded with the SoundFile class are fully loaded into raw memory. That means your sketch will require ~20MB of RAM per minute of stereo audio.

Multi-channel audio interface support

The newest release of the Sound library adds support for multi-channel audio output. Most audio interfaces should work out of the box, for sake of completeness we have assembled a list of devices that have been tested to be working (for the devices marked with *, see below). If you have troubles getting any audio interface to be recognized correctly, please report them in this Github issue.

Devices marked with a * work out of the box on MacOS, on Windows they are recognized but show up as several stereo devices, rather than one multi-channel device. To be able to use them as one multi-channel devices, you will need to install ASIO drivers and add an explicit call to MultiChannel.usePortAudio() at the beginning of your sketch.

Contributing

Pull requests for bug fixes as well as new features and example sketches are always welcome! Check CONTRIBUTING.md for help on how to get started.

Thanks to the following community members for their contributions:

License

LGPL v2.1