Home / codesounding / codesounding1.5
Name Modified Size InfoDownloads / Week
Parent folder
readme.txt 2010-09-20 2.8 kB
codesounding-embedded-1.5.jar 2010-09-20 1.9 MB
codesounding1.5_src.zip 2010-09-20 9.2 MB
Totals: 3 Items   11.2 MB 0
In the release 1.5, in order to allow a greater control on realtime sound synthesis, we add to CodeSounding the capability to interact with some unit generator-based solutions:
    * with JSyn programming-oriented people can trigger sinusoids, filters, etc. without leaving the Java environment. Note that JSyn is not an open source software.
    * musicians and GUI-oriented people can use either Max/MSP (commercial) or Pure Data (open source) in order to make visual patches and exploiting the existing objects. The interactions with CodeSounding are based on UDP packets, sent to different ports, so the sonification can live on a different machine. In any case it stayes on a separated process.


*** Examples ***

An example of Max/MSP interaction (http://sourceforge.net/projects/codesounding/files/codesounding/codesounding_maxmsp.zip/download):
* java2demo.jar, for every instruction executed, will send an UDP message to the patch, which will trigger several oscillators (see a live on http://www.youtube.com/watch?v=8v9qCnaPwgw).
Also, Max/MSP enabled the auralization of several sorting algorithm’s execution path: every instruction triggers an oscillator, tuned to a specific pitch: http://www.youtube.com/watch?v=ol5ml9e2THw

Several JSyn examples (http://sourceforge.net/projects/codesounding/files/codesounding/codesounding_jsyn_examples.zip/download):
 * GrainScaledSkipperProcessor: Every thousandth Java istruction the class triggers an enveloped oscillation (of 50 ms), with each instruction having a different frequency. They are finally added and reverberated. Faders enable you to change the oscillators's frequencies, how many instructions are skipped and the grains's envelope. Furthermore the skipped instructions scale the amplitude of each oscillator.
 * GrainSkipperProcessor: An implementation similar to GrainScaledSkipperProcessor, with a larger envelope and without scaling.
 * OneSampleProcessor: Every Java instruction queues just one sample. Every 200s they are played by a sampler. A fader enables the change of the sampling frequency.
 * OctaveProcessorWithFilter: Similar to GrainScaledSkipperProcessor, here the output is band-pass filtered in a bank tuned to MIDI's C60, ..., F77 pitches.
 * InstrumentProcessor: Here I'm just joking with instruments exported from SoftSynth's Wire; the same effects (that is, skipping instructions and playing them with short, equal tempered notes) can be obtained through mere MIDI - see for example the JMusic based SynthSyncopate.java class.
 * JaVoiceProcessor: The Java trace is translated into an "image", then converted into sound. The core algorithm is quite the same as hificode.c's, published in JavOICe (http://www.seeingwithsound.com/javoice.htm). The audio is rendered by JSyn.
Source: readme.txt, updated 2010-09-20