Csound Csound-dev Csound-tekno Search About

[Csnd] Parse messages and click in Max context

Date2023-06-11 01:34
FromJean Basile Sosa
Subject[Csnd] Parse messages and click in Max context
Hello Csound,

Using csound for Max within the csound~ external, I can't solve tonight a little problem.

Assuming we parse simples messages from max to csound api via csound~: 

e i 1.01 0 1
e i 90.101 0 1

Messages relative to this simple csd :

instr 1

aenv	linsegr	1, .05, 0.5, 1, 0
aGeni = oscil:a(0.5, 220)
aGeni *= aenv
S_chn sprintf "audioL_%.04f", (90 + (p1/10))
chnset aGeni, S_chn

endin

instr 90

S_chn sprintf "audioL_%.04f", p1
aOut chnget S_chn
outs aOut, aOut 
chnclear S_chn

endin 


Produce "click" when I parse in order the two messages in question ("e i 1.01 0 1" and then "e i 90.101 0 1") and when I reapet them quicly

But, if I skip the chnset / chnget routing, and play only instr 1 and replay it quiclky, there is no click:


instr 1

aenv	linsegr	1, .05, 0.5, 1, 0
aGeni = oscil:a(0.5, 220)
aGeni *= aenv
outs, aGeni, aGeni


endin


Where in the chnset / chnget scheme I miss something ?

How play the two instruments in order without click using this schem ?

Thanks for your answers!

Bises,

Jean-Basile

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

Date2023-06-11 03:31
FromSteven Yi
SubjectRe: [Csnd] Parse messages and click in Max context
Does it happen if you use chnmix instead of chnset?

On Sat, Jun 10, 2023 at 5:34 PM Jean Basile Sosa <sosa.jeanbasile@gmail.com> wrote:
Hello Csound,

Using csound for Max within the csound~ external, I can't solve tonight a little problem.

Assuming we parse simples messages from max to csound api via csound~:

e i 1.01 0 1
e i 90.101 0 1

Messages relative to this simple csd :

instr 1

aenv    linsegr 1, .05, 0.5, 1, 0
aGeni = oscil:a(0.5, 220)
aGeni *= aenv
S_chn sprintf "audioL_%.04f", (90 + (p1/10))
chnset aGeni, S_chn

endin

instr 90

S_chn sprintf "audioL_%.04f", p1
aOut chnget S_chn
outs aOut, aOut
chnclear S_chn

endin


Produce "click" when I parse in order the two messages in question ("e i 1.01 0 1" and then "e i 90.101 0 1") and when I reapet them quicly

But, if I skip the chnset / chnget routing, and play only instr 1 and replay it quiclky, there is no click:


instr 1

aenv    linsegr 1, .05, 0.5, 1, 0
aGeni = oscil:a(0.5, 220)
aGeni *= aenv
outs, aGeni, aGeni


endin


Where in the chnset / chnget scheme I miss something ?

How play the two instruments in order without click using this schem ?

Thanks for your answers!

Bises,

Jean-Basile

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