[CM] rts midi question

Rick Taube taube@uiuc.edu
Tue, 5 Jun 2007 15:15:13 -0500


i think you shnould specify different streams using a common ".pm"  
extension:

open "one.pm", output: 2, input: 3
open "two.pm", output: 3
...

and then handle the io explicitly

define process foo (n, s1, s2)
   run repeat n
     for e = make(<midi>, time: now(), ...)
     output e, to: s1
     output e, to: s2
   end


this shuuld work but has not been tested!

On Jun 5, 2007, at 12:30 AM, Anthony Green wrote:

> Ok - total newbie question...
>
> I was hoping to use CM on my Linux system to send midi events in  
> real time to a number of softsynths.  Is this possible?  I had been  
> assuming I would open up multiple streams...
>
> (defparameter *ws1* (portmidi-open :output "WhySynth 20070418 DSSI  
> plugin" :latency 0))
> (defparameter *ws2* (portmidi-open :output "ZynAddSubFX" :latency 0))
>
> Initialize rts...
> ; Start the real-time system with no default output stream.
> (rts nil :time-format :msec)
>
> And then OUTPUT to *ws1* and *ws2*.  However, it turns out that  
> *ws2* equals *ws1* and all events go to WhySynth.  So does this  
> mean you can only have portmidi open to a single device?  Is there  
> any way of doing what I want?
>
> Thanks,
>
> AG
> <green.vcf>