A Puredata real-time music analysis patch retrieving humanly sensitive information from a live audio stream by using various methods.
Streams Music Information Retrieval data over a LAN using OSC.
Pure Data is multiplatform, as is this patch: Linux, Mac & Windows.
Note: Click here to watch an older demo video
For the moment karmaSoundAnalyser's license is not clear. Particularly if you use it in a commercial project, please make sure to double-check the respective licenses of it's dependencies and their compatibility with the MIT license.
karmaSoundAnalyser is divided into several .pd
abstractions, each one handling the analysis of a particular musical aspect.
This Pure Data patch uses the excellent lib Aubio for onset and tempo detection. Alternatively you can use karmaFiddle using the native fiddle
object for onset detection.
Other features include an alternative onSet detection, pitch detection, silence detection, a 5-band equaliser, note detection, etc.
For a full list of MIR data, please refer to the OSC addresses table.
Note: Not all collected data is yet forwarded trough OSC.
Note: Configure Pd to load Aubio on launch or you'll have to open the pd patch twice.
- Pure Data
v0.47-1-64bit
- The host app for this patch. - Lib Aubio Pd plugin
v0.4
- A Pd plugin for detecting tempo and more. (Warning: GNU/GPL licensed) - Recomended: A wired LAN for better performance.
- Optional: MrPeach Pd externals.
sudo apt-get install puredata pd-aubio pd-cyclone pd-mrpeach
add /usr/lib/pg/extra/cyclone to your pb library search paths (from pd preferences)
Start Pd with /usr/bin/pd -rt -oss -audiooutdev "2,3,4,5,6" -outchannels "2,2,2,2,2"
.
Installing Jack on linux can also be useful for routing audio.
sudo-apt-get install jackd qjackctl
Follow the Linux installation notes. Feel free to add additional setup notes in a pull request. :-)
On mac you need Pd-vanilla 0.47-1-64bit and Aubio 0.4, then it should work out of the box. Later versions should also work.
Optional: You can install the MrPeach externals via: Pd < Help < Find Externals, then type mr peach
and install it.
Hint: To get started quickly, use VLC to play a track and output it trough SoundFlower (2ch), then set the Pd sound input to Soundflower accordingly. Alternatively use Jack OSX to route audio.
Sorry, windows is yet untested but there's no reason it won't work.
Feel free to add setup notes in a pull request. :-)
Simply open karmaSoundAnalyser-PdVanilla.pd
with Pure Data.
You can right click < open each abstraction to see what's happening within.
I recommend reading the Pd Floss Manuals if you're not familiar with Pd. ( French version here )
- Julien Rancoeur (Fx23 / ADN )
- François Parra
- Clément Sablé( Nëru )
Brewed by Daan de Lange within the Karma Kusala lab.