[CM] How to send udp bundles from Grace on Linux?

Tito Latini tito.01beta at gmail.com
Fri Mar 6 03:09:44 PST 2020

On Thu, Mar 05, 2020 at 06:05:04PM -0800, Forrest Curo wrote:
> Grace is sending valid osc messages.
> If these were going to Supercollider, that's how they'd be handled.
> Received by the csound udp server, valid osc is not valid realtime score
> events.
> Since JUCE is largely a C++ compiler... I should be able to
> #include<system.h> and add code to either write csound score lines to a
> fifo, or call bash's 'nc' to udp them to another computer. (?)
> Those approaches wouldn't be graceful, but they are ways I could
> (eventually) do it for myself.

You could use the csound command line option `-L' with a named pipe.
The following example works with s7:

Csound orchestra test.orc:

instr 1
  print p1, p2, p3, p4, p5

>From shell:

mkfifo score
csound -L score -odac -+rtaudio=null --orc test.orc

>From s7:

(define score (open-output-file "/path/to/score"))

(define* (csound-test (instr 1) (dur 1.0) (freq 440) (amp 0) (port score))
  (format port "i ~D 0 ~F ~F ~F~%" instr dur freq amp)
  (flush-output-port port))

(csound-test 1 1.5 1234 -6)
(csound-test :dur 3.2)
(csound-test :amp -3 :freq 660)

;; Remember to close the port.
(close-output-port score)

More information about the Cmdist mailing list