[Clam-devel] GSoC Ideas

Michael Chinen mchinen at gmail.com
Tue Mar 25 14:15:06 PDT 2008


I am interested in participating in gsoc through CLAM.  I have heard a
lot of good things about UPF MTG projects and the work you folks do
overlaps with my own research, so I think CLAM makes the best fit for
me out of all the GSoC groups.

About me: I am a graduate student in electro-acoustic music at
Dartmouth College.  My undergraduate degrees are from the University
of Washington and are in computer science and musical composition.  I
have been involved in 3 sourceforge audio projects under the handle
mchinen.  I've worked for a few small companies on big c++/C#
projects, and one big bad one working on audio dsp. On the creative
side, I have worked in a game company to do sound effects.  The music
I write is experimental and algorithmic computer music in
supercollider or lisp.  However in the past few years all my music
(including mixing) has been done in C++ and cocoa.  This is why CLAM
is intersting to me.

I wanted to ask for some feedback on a my idea.

-C++ Documentation by Musical Code Samples/Tutorials
  While many parts of CLAM are useful for MIR, a lot of it can also be
used for music composition.  I propose to write well documented
musical pieces in C++ that demonstrate the C++ library aspect of CLAM.
 Having well documented samples at several levels of complexity is
very helpful for the beginning user, even if he or she is well versed
in C++.  It provides a starting point as well as shows off what the
library is capable of.
  A typical musical code sample will be a completely contained C++
program that links to CLAM and outputs a wav file of the composed
piece.  It will contain a readme that explains which parts of the
library are being used to compose this piece, and the code inside will
be well commented.  The music itself will focus on taking advantage of
a CLAM component in a clever way.
  The intent is to have many small and simple examples that show how
the individual CLAM components work, and also to have two or three
larger examples that are more complex and explore what is possible
with the CLAM framework.

I have looked at CLAM and found it to be promising, but I have not yet
programmed in it.  To select how many examples that I would make, I
think I should discuss with the developers to find out which they
believe to be the most interesting.  Please note that the parts of
CLAM used in these musical examples don't have to be just synthesis or
effects - it could be about some analysis/feature extraction tool as
well - the musical output could be based on the analysis features of
some other musical input, for instance.

While doing this project I can also make sure the CLAM headers are
well documented and understandable for those that wish to use CLAM as
a library.

If this kind of project is not something that fits gsoc, please let me
know and I will try to think of another idea.  I do some analysis
synthesis noiseband-based modeling using genetic algorithms in a
project called genesynth, and maybe some of these ideas could be
incorporated into CLAM.

Thanks for reading,

Michael Chinen

More information about the clam-devel mailing list