Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A basic setup framework for audio visualizations in Processing
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
data
AudioFramework.pde
AudioSetup.pde
FFTOctaveAnalyser.pde
README
Render.pde
drawFFT.pde
drawOctBands.pde
drawSamples.pde

README

Following several requests at the Bathcamp talk I did I've cleaned up my basic starting point for playback and analysis of audio files for realtime visuals with a boolean switch to allow a render of image sequences.  It includes the basic three visualizers I showed in the talk as examples.

I'm not a developer by any stretch of the imagination so there are bound to be silly mistakes and oddities in the code that would have a seasoned developer shudder in terror I'm sure but it's a solid starting point and it works. 

Requires the Krister ESS library -> http://www.tree-axis.com/Ess/ and is working in Processing 1.1 (Build 110)

Make sure you amend the audioFilename variable below and make sure the file is in the data directory (to copy a file you can just drag and drop it onto this window "File Added" will appear in the grey status bar below when it's copied and apple+k will show this sketches directory

To switch from realtime playback to rendering an image sequence edit the 'render' boolean to true under the AudioSetup tab
The image sequence will appear in a directory in the sketch folder call 'out'

The three renderers (drawFFT, drawOctBands, drawSamples) are just examples of how to read the different data ESS and the OCT classes output. You can delete them when you have your own renderers set up, don't forget to remove the lines in the main sketch, in setup() and in render() in the Render tab or Processing will have a hissy fit.

Have fun! 

http://stefangoodchild.com/
http://vimeo.com/stefangoodchild
http://twitter.com/stefangoodchild/
Something went wrong with that request. Please try again.