Hoping some one can throw some light on this for me, I've been dutifully doing my best to research it but am overwhelmed with all the info, much of which looks like it might be out of date.
The object is to port my csound sequencer to C and run it on linux. It will be a real time multi threaded sequencer that embeds csound as the audio engine and passes events to the embedded csound. The sequencer is controlled by midi input, and midi output happens through Csound. ( to allow users to easily hack at the midi output without having to learn C ) I aim to have the thread holding csound and the thread holding the engine have as high priority as possible, while the threads for user input, data transformation and manipulation, and any optional GUI will be lower priority and will wait patiently or do their tasks slowly so as not to interfere with playback. I'm confused as to which approach to threading I should be researching the most. As this won't be done any time soon, I expect to working with the 2.6 kernel. Any feedback on kernel threads vs user threads, especially regarding Posix threads ( and specific implentations of them ) would be appreciated. If it's possible to even do disk i/o without interferring with the playback and audio that would be even better. Pointers to good up-to-date resources would be great too. I know Paul did this with Softwerk, but as that was written a while ago I want to make sure I don't spend too much time looking at solutions that perhaps have been improved upon with recent linux threading advances. Thanks so much Iain
