Combining Math and Music – Recommendations on Best Software Tools to Use
I am both a technical person (retired Chemical Engineering Phd) and a multimedia artist (music, sculpture, photography, video, poetry and creative writing)interested in combining my artistic and technical skills for the purpose of creating something new.
For starters, I would like to write code to explore creative combinations of math and music. For example, I am currently teaching myself Music Theory and would like to be able to write code that will capture my learnings while at the same time putting to good use.
With this in mind, I would certainly appreciate any guidance on the best software tools to use for this purpose.
I used to be quite a capable computer programmer (in Fortran), and would not mind learning to use more modern tools such as C++, Mathlab or Mathematica, if that happens to be the best way to go.
Obviously, I am here because I think that Max (and other Cycling 74 programs) may as well deserve to be an integral part of the tool set that would best serve my needs.
I would say Max is by far the best place to start. The ease
of which you can take data and transform it in to audio, midi,
video, 3d graphics, etc… make it the ideal playground for
developing ideas. Max also makes controlling things a breeze.
It is also open architecture, supporting C++ and Java, so you
can create what ever external you want.
If you are looking to explore music theory and mathematics,
there is a great library of externals by V.J. Manzo
These can get you going pretty quickly.
I would also recommend python as a good language for exploring
mathematics and music theory. Python is a fairly easy to learn
compared to C++ and Java. There are two python packages
to look at…
Music21 – http://mit.edu/music21/
is an incredible music theory library that allows you to do
algorithmic analysis and generation of notated scores
Scipy – http://www.scipy.org/ – a scientific computation library
The most comprehensive math and computation library out there.
The great thing about python is that, there is a huge library of
existing work and it also integrates with Max.