I am trying out things with additive synthesis using a master instr looping event_i.
I want to apply reverb on the whole synth in an other instrument in which I send the global audio : the problem is it doesn’t work properly since the reverb is applied on several voices at once.
Does anyone know how I could make it work as if it was the synth (audio being looped with the master instr) was monophonic ? I know I should be using adsynt (which might have been created for that kind of problem) but I don’t like since I can’t control each partial/voice. I tried recursion but the thing happens (which makes sense).
imagine that you start 40 instances of instrument “sig”. each instance
will overwrite gasig, so only the last instance is succesful, so to say.
this is what you describe in your comment in line 52.
you have several options:
you can use the same approach as you did. when you
add in the header gasig init 0
change the line above to gasig += poscil(...)
add in instr “rvrb” the line gasig = 0
then it should work.
you can use the opcodes chnmix / chnget / chnclear instead.
there are examples at The Csound FLOSS Manual
i learned from your combination of trigger and dust. i must look
closer; actually i never used dust, but it looks very handy.
in line 25, i’d prefer to write:
schedulek(“loop”, 0, kdur)
and in line 33-36:
while inum < imax do
schedule(“sig”, 0, p3, inum)
inum += 1
od