I am writing a sequencer application for performance use, sort of like a tracker but with a more flexible pattern structure. Such a sequencer will need to have random realtime access to banks of samples and effects. I've been having a devil of a time finding a library or sound program to provide the sample loading/playing/mixing features for this project. As of yet i have been smashing my head against a bunch of projects that don't quite allow enough pcm files to be simultaneously loaded into memory and mixed on demand. I really don't want to write this code myself (the result would not be pretty), So i am asking for suggestions of programs and/or libraries that i could hook up to my sequencer app to provide the actual sound generation.
basically, i'm looking for a software sampler with an api, but it looks like i'm going to have to use a wav editor that can be abused into holding lots of samples (say a few hundred) "memory", you say? as much as you can handle! here's a short history of my blundering entrance into linux sound [a frustrating experience of stumbling through projects with almost no documentation and then delving deep into the code only to find out it's not what you thought]: -ecasound: this was an early favorite for its full feature set, but i discovered it can not load and unload wav files without a discontinuity in the output. so it's more for studio use. -RTcmix: my current fave, it has a great lineage and a totally awesome scheme of making instruments into libraries that can be loaded and unloaded on demand at runtime. unfortunately, it was created before it was feasible to put samples into memory. so soundfiles are treated as file descriptors which reside on the hard disk (i think). furthermore, the treatment of instruments-as-libraries does not allow instantiating and referencing multiple instances of a type of instrument. RTCmix is rapidly evolving and a few more hacks could make it what i need. -EsounD: has the wav storage and accesibility but is a little too rough to use for performance -JACK: anything of this sort one ends up making will eventually use JACK, but JACK is for tying the sound producing modules together, not for holding and mixing a bunch of individual samples. -Open Source Audio Library (Bruce Forsberg's): seems to be everything one would need... but not an application. To use this one would have to build a separate application that uses OSAP to load/play/mix samples, then interface with that app. i'd like to avoid that; i figure other people have done that better, and i should be able to spend time making a sequencer as opposed to a sample-player but, hey maybe i'm all mixed up... -SDL: same comment as OSAP. provides api for loading and then let's you schedule mixing on your own. -PSL the Portable Sound Library project from Andrew Clausen: can not locate this, even on sourceforge. -snd: seems to me to be the best thing to look into next, unless your comments steer me otherwise. p.s. i hope these comments don't seem negative towards the projects, i am really amazed by all of them. they are just not designed for doing what i want so i am asking for suggestions of projects that will need less shoehorning to fit into the mold i described above. -jacob - _________________________________________________________________ Chat with friends online, try MSN Messenger: http://messenger.msn.com