Subject: [linux-audio-dev] A Music Composition System
From: Josh Green (jgreen_AT_users.sourceforge.net)
Date: Tue Sep 12 2000 - 22:23:21 EEST
This is a slightly modified version of my reply to a thread on the
alsa-devel list. I was told this would be an appropriate place for this
discussion. I am new to the linux-aud-dev list so I am sure I have
missed out on similar discussions. This message is slightly ALSA centric
but could also apply to OSS too.
----I've been working on a program called The Smurf Sound Font Editor (http://smurf.sourceforge.net) for some time. I have enjoyed this project, but have realized that it is somewhat without a "Music Composition System". I only recently stumbled apon the ALSA sequencer. I was quite swept up in the dreams of having interconnected music programs all communicating to form the most flexable electronic instrument the world has ever seen. But these dreams come with a price, as this has not been completely accomplished yet. I've been quite enjoying the ALSA project as it unfolds and I would like to take the opertunity to thank all who have been involved, let open source developement always create programmers who enjoy their work.. And play.
Okay. So here are some of my thoughts on a music system. I'm ready for thoughtful criticism, and will try to do my best with the not so thoughtful :) UI's are great, I love them. But behind them lies what all of us are against: limits to the interface. This has been what I have found to be the advantage of *nix like systems in the first place, is their detailed interfaces. Though not graphical, can be used and combined together to form powerful tricks and tools that could not be had so easily on other OSes [an image of Felix the cat and his bag of tricks comes to mind]. Linux is the chance to build a user interface on top of little powerful interconnected tools. Possible scenario: I am coding a 'for' loop in Perl and have it increment the index in an array, which is of notes that happen to have been recorded from an external MIDI keyboard via the GUI. I then have another array of timing intervals that I can easily create via scripts, manual entry, other devices etc. I could create music via live playing, the provided GUI interface, plugins or code.
Though I have not fully explored ALSA, it seems to be living up to an interconnected model of programming. Why not create a user interface in this same fashion. Providing a low level music interface would allow coders and GUI people to create music. I am greatly looking forward to the chance to ACTUALLY code a song :) Loops, variables.. Things that weren't possible with a GUI would be. The "guru" nature of non-GUI tools (though I love them) could also be solved all in the same package and used interchangeably. Hooks to these functions could be provided for any language. The GIMP of music composition.
I have not meant to offend anyone. I know many dream of these things. I hope I can be a part of making that dream come true. So who has an idea for a project name??? Or are there any existing projects that fall into this vein of thinking?? My knowledge pertains to C and GTK code but I'm sure I could be persuaded to to learn C++.
Cheers, Josh Green
This archive was generated by hypermail 2b28 : Tue Sep 12 2000 - 23:19:31 EEST