Csound Csound-dev Csound-tekno Search About

[Csnd] Csound 7 UDP and OSC

Date2026-01-22 07:53
FromJean Basile Sosa
Subject[Csnd] Csound 7 UDP and OSC
Hello everyone,

First of all, a big thank you for Csound 7. I had trouble changing my habits and I kept writing Csound using the old syntax, but after starting to look into Csound 7 — what a joy, this new syntax!

I am especially interested in UDP and the OSC protocol. I would need some information to properly understand how both of them work. I am on macOS 15.7, and Csound 6 and Csound 7 coexist without conflicts in my environment. My goal is to send instructions to Csound, especially via Max.

There is no problem if I use OSC as it already exists, regardless of the Csound version.

So, something like that in Csound 7:

giport = OSCinit(5432)
instr 1
k1 = init(120)
asig = oscil(0.1, k1, 3)
statut:k = OSClisten(giport, "/freq", "f", k1)
printk2(k1)
outs(asig, asig)

However, I would simply like to understand the UDP server section of the manual, and therefore how to directly address messages formatted as indicated, for example:
@[channel_name] [value]

If my code is now:



-odac --port=5432



instr 1
k1 = init(120)
k1 = chnget("freq")
asig = oscil(0.1, k1, 3)
printk2(k1)
outs(asig, asig)

There are no error messages if I send a message via Max such as /freq 440, @freq 440, or even $ i 1 0 1, but there is no control effect.

I briefly looked at Tarmo’s work, Csound Remote. It seems that once the settings are done, you can simply send basic messages to Csound using a UDP server: @[channel_name] [value], $[score] etc.

That is what I would like to do, without using the OSC opcodes.

In any case, Csound 7 is very promising — not only because of the new syntax, but also for the Web, DSP development, pedagogy, and musical composition. I am really looking forward to the official release!

Many thanks again to the developers!

JB

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2026-01-22 11:14
FromVictor Lazzarini <000010b17ddd988e-dmarc-request@LISTSERV.HEANET.IE>
SubjectRe: [Csnd] [EXTERNAL] [Csnd] Csound 7 UDP and OSC
Hi Jean-Basile,

For a channel “freq”, try this message address

"/csound/channel/freq”

best
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 22 Jan 2026, at 07:53, Jean Basile Sosa  wrote:
>
> *Warning*
>
> This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
>
> Hello everyone,
>
> First of all, a big thank you for Csound 7. I had trouble changing my habits and I kept writing Csound using the old syntax, but after starting to look into Csound 7 — what a joy, this new syntax!
>
> I am especially interested in UDP and the OSC protocol. I would need some information to properly understand how both of them work. I am on macOS 15.7, and Csound 6 and Csound 7 coexist without conflicts in my environment. My goal is to send instructions to Csound, especially via Max.
>
> There is no problem if I use OSC as it already exists, regardless of the Csound version.
>
> So, something like that in Csound 7:
>
> giport = OSCinit(5432)
> instr 1
> k1 = init(120)
> asig = oscil(0.1, k1, 3)
> statut:k = OSClisten(giport, "/freq", "f", k1)
> printk2(k1)
> outs(asig, asig)
>
> However, I would simply like to understand the UDP server section of the manual, and therefore how to directly address messages formatted as indicated, for example:
> @[channel_name] [value]
>
> If my code is now:
>
> 
> 
> -odac --port=5432
> 
> 
>
> instr 1
> k1 = init(120)
> k1 = chnget("freq")
> asig = oscil(0.1, k1, 3)
> printk2(k1)
> outs(asig, asig)
>
> There are no error messages if I send a message via Max such as /freq 440, @freq 440, or even $ i 1 0 1, but there is no control effect.
>
> I briefly looked at Tarmo’s work, Csound Remote. It seems that once the settings are done, you can simply send basic messages to Csound using a UDP server: @[channel_name] [value], $[score] etc.
>
> That is what I would like to do, without using the OSC opcodes.
>
> In any case, Csound 7 is very promising — not only because of the new syntax, but also for the Web, DSP development, pedagogy, and musical composition. I am really looking forward to the official release!
>
> Many thanks again to the developers!
>
> JB
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here


Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here