01 / 01
Architecture buro


FCC tools v.01 (Open Music)

FCC tools v.01

Open Music patches  to produce, filter, transform and evaluate data.

The Open Music(1) patches in these folders have been used to produce, filter, transform and evaluate data (lists, midi, sdif) over years of composing.

Some of them may be hopefully useful in computer-aided musicology toolkits as well.

Transformation_others includes:
midifile<->(pitch onset dur vel) lists<->voice converters,
dur.pattern->voice converter
sdif(1TRC)<->(pitch onset dur vel) lists converter
after Roger Dannenberg, “The Interpretation of MIDI Velocity,” in Georg Essl and Ichiro Fujinaga (Eds.), Proceedings of the 2006 International Computer Music Conference, November 6-11, 2006 (San Francisco: The International Computer Music Association), pp. 193-196.

Analysis includes:
– Chord ordering based on standard deviation
– Consonance/dissonance ordering of chords
after  Moore, B. C., & Glasberg, B. R. (1996). A revision of Zwicker’s loudness model. Acta Acustica united with Acustica, 82(2), 335-345; MacCallum, J., & Einbond, A. (2007, August). Real-time analysis of sensory dissonance. In International Symposium on Computer Music Modeling and Retrieval (pp. 203-211). Springer, Berlin, Heidelberg.
– Repetition, duration and velocity ordering of midi notes

Less_then_trivial_examples includes:
– Pitch set expansion and reduction
– Rythmic consonance/dissonance in durational pattern interpolation
– Microtonal approximation based on dissonance analysis.
– OM/Lisp implementation of the Douglas-Peucker algorithm
(i.e curve decimation of a curve composed of line segments to a similar curve with fewer points)
after Ramer, U. (1972). An iterative procedure for the polygonal approximation of plane curves. Computer graphics and image processing, 1(3), 244-256.

The code in these folders is provided as it is, without any warranty.
It is freely available for everyone to download and modify as they see fit.

I would highly appreciate to receive:
– comments and bugs-reports
– examples to be used in future tutorials
– Max implementations (!)

I’m sorry for the poor documentation; I might extend it in the next release on your  feedback.

Particular thanks are due to Michele Tadini and Conservatoire National Supérieur Musique et Danse de Lyon for inviting me to share my stuff.


Fabio Cifariello Ciardi