Csound Csound-dev Csound-tekno Search About

Re: Realtime MIDI Csound: New midi OUT opcodes

Date1994-04-05 18:39
FromMichael Pelz-Sherman
SubjectRe: Realtime MIDI Csound: New midi OUT opcodes
Jean, you wrote:

> Compared to a myriad of other midi score
> processors/generators, Csound is an extremely poor choice. Use
> Max, or better still, Common Music. You already have real-time
> control input to Csound via console-driven events (-L). Use
> it. THere are dozens of different ways to do granular
> synthesis in Csound as it is. As a control language, Csound
> is very terse and weak compared to just about anything else.
> You'd be better off writing something new in another language
> (tcl, perl, C, lisp, anything) to replicate the (simple) table
> referencing capabilities of csound and moving on from there to
> more interesting things...

I see this as a matter of using the right tool for the job; in other words, the approach you take depends on the kind  
of music-making you're doing. I do agree, though, that Csound's strength is as a highly configurable tone generator,  
not as a control language for music. For creating "static" scores, CSound's score language is (on its own) WAY too  
cumbersome and lacks most of the basic musical control primitives. Granted, one *could* spend a lot of time building  
up a library of score-generating tools in some other language, but why bother when there are so many superior tools  
already available? Again, if you're just arranging static, sequential events, almost any decent commercial MIDI  
sequencer would do just fine, given that we already have midi2csound. Back in 92, I was experimenting with creating  
scores in a MIDI sequencer & exporting them to Csound for "rendering". I never did complete an entire piece this way,  
but it seemed like a very promising approach.

However, if you want to do things like algorithmic composition or real-time interactive pieces, you'll hit the wall  
quickly with commercial MIDI sequencers.

On the other hand, Max has it's own set of limitations, having mainly to do with its use of graphical control flow  
representation. It also has a lot of timing overhead with all those graphics. If you want to get into heavy-duty  
real-time stuff, FORTH (or HMSL) is probably better. Don't know much about Common Music, so I can't comment here.

On a related note, I haven't yet succeeded in getting realtime CSound working, but I did read somewhere in the  
release notes that there were some pretty major timing problems associated with using MIDI for real-time control of  
CSound orchestras. Has anybody managed to get this working with satisfactory real-time response using reasonably  
complex instruments (say, on the order of a DX7)?

- Michael

Date1997-04-05 14:36
FromJean Piche
SubjectRe: Realtime MIDI Csound: New midi OUT opcodes
> I think it is extremely restrictive to stop at the traditional concept
> of "note" when making computer music. I agree with Mike when he says
> csound's strength is in the orchestra, not the score. In fact csound
> orchestra can generate itself a flow of events and notes starting from a
> single score opcode. This flow can be gradually modified in realtime by
> means of gestual input devices. It can bring toward new concepts of
> making and composing music. Granular synthesis, in which macro and micro
> structure levels can be scrambled, is an example of that. So Csound can
> be a powerful control language too. A commercial sequencer is hugely far
> from Csound elaboration capabilities.


Gabriel,

Compared to a myriad of other midi score processors/generators, Csound
is an extremely poor choice. Use Max, or better still, Common Music. You
already have real-time control input to Csound via console-driven events
(-L). Use it. THere are dozens of different ways to do granular
synthesis in Csound as it is. As a control language, Csound is very
terse and weak compared to just about anything else. You'd be better off
writing something new in another language (tcl, perl, C, lisp, anything)
to replicate the (simple) table referencing capabilities of csound and
moving on from there to more interesting things...

Best.


-- 
________________________________________________________
Jean Piche
Universite de Montreal
http://mistral.ere.umontreal.ca/~pichej
http://www.musique.umontreal.ca/Org/CompoElectro/CEC/