Cabbage Logo
Back to Cabbage Site

What happened to CHNSET_GESTURES?

The reserved channel CHNSET_GESTURES doesn’t seem to function any-more (v2.7.13)? Also there is no documentation for it? Could we still have it? :worried:

Memo: By default we cannot playback automation and this was supposed to enable either recording or playing back automation in a DAW.

This is my current testing code:

<Cabbage>
form caption("test automation") size(300, 200), colour(58, 110, 182), pluginId("taf5") guiMode("queue")

rslider bounds(2, 22, 120, 120) range(0.5, 10000, 220, 0.25, 0.001) channel("OscFrq") popupText("0") colour(0, 255, 0, 255) trackerColour(255, 0, 0, 255)

button bounds(126, 20, 65, 65) latched(0) channel("OscFrqMultiplier2")  text("x2","x2") value(0)  corners(3) colour:0(255, 0, 0, 255) colour:1(255, 255, 0, 255) fontColour:0(0, 0, 0, 255) fontColour:1(160, 0, 0, 255)
button bounds(126, 88, 65, 65) latched(0) channel("OscFrqMultiplier05") text("/2","/2")  value(0)  corners(3) colour:0(0, 255, 0, 255) colour:1(255, 255, 0, 255) fontColour:0(0, 0, 0, 255) fontColour:1(160, 0, 0, 255)

checkbox bounds(10, 162, 20, 20), channel("mapping_enabled"), corners(2) value(1) colour:0(255, 255, 0, 100) colour:1(255, 255, 0, 255) automatable(0)  colour:0(255, 255, 0, 100) colour:1(255, 255, 0, 255) automatable(0)
label   bounds(36, 162, 200, 20) text("PLAY AUTOMATION") fontColour(255, 255, 0, 150) channel("label12")

</Cabbage>
<CsoundSynthesizer>
<CsOptions>
-n -d -+rtmidi=NULL -M0 -m0d 
</CsOptions>
<CsInstruments>
ksmps = 32
nchnls = 2
0dbfs = 1

instr 1

if trigger(cabbageGetValue("mapping_enabled"),.5,0) == 1 then
chnset k(1), "CHNSET_GESTURES"
elseif trigger(cabbageGetValue("mapping_enabled"),.5,1) == 1 then
chnset k(0), "CHNSET_GESTURES"
endif

kOscFrq cabbageGetValue "OscFrq"

if (trigger(cabbageGetValue:k("OscFrqMultiplier2"), .5, 0) == 1) then; 0->1
    kOscFrq *= 2
    cabbageSetValue  "OscFrq", kOscFrq
endif
    
if (trigger(cabbageGetValue:k("OscFrqMultiplier05"), .5, 0) == 1) then; 0->1
   kOscFrq *= 0.5
   cabbageSetValue  "OscFrq", kOscFrq
endif   

endin

</CsInstruments>
<CsScore>
f0 z
i 1 0 -1
</CsScore>
</CsoundSynthesizer>

This was “a bit” stupid/embarrassing comment/report from me. I realized now (or at least it seems) that all works fine if I don’t use at all the reserved channel. So, automation is recorded, played back, internal states are broadcast to DAW and MIDI controllers. However, using CHNSET_GESTURES seem to mess up things. Maybe you could still comment on this and if suitable clean up the reserved channel. Sorry for the falls alarm! …or? I am never sure… :zipper_mouth_face:

That’s why they are not documented. They were added to fix a very specific issue a user was having. The more we worked on it the more we came to the conclusion things were in fact working as they should without them, and it was more likely another problem with hardware. So basically, these are not for public use at all. I just saw your last post about the automation, which I guess is what brought you to these channels. :thinking: We can take up that discussion in the other thread.

No that was after :slight_smile: And I think the user you’re referring to was me :slight_smile:
I think this started for me by realizing that the chnset did not broadcast to DAW and thus not send feedback to MIDI controllers capable of changing their state from DAW. Then the problem was a feedback loop braking automation. Then came the reserved channel and then …I lost track of details… But maybe it could work now except for the new issue posted here: Slider jumping when recording automation