-
Notifications
You must be signed in to change notification settings - Fork 62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding holdAndJoin in signals.lib ? #16
base: master
Are you sure you want to change the base?
Conversation
…lue when receiving a :off: trigger. When receiving a 🔛 trigger, the function waits for the input value to join the held value. Once the input joins the ouput value, the function is bypassed.
I'm very new to faust, but I greatly appreciate it. I don't know if you could be interested by this... Anyway, thank you very much for your work. |
…ss duplication of joined, clarified documentation
Do you have a test Faust DSP program to demonstrate the use of |
Yes!
I, Hope this do the job. The first version was ... well... a poor beginner attempt and |
I mean better: a real MIDI based Faust DSP use-case as you describe in the documentation:
I would like to estimate if this |
I know what you mean. Thinking about it, maybe I'm just the only one needing this thing... Still when I proposed this initially I though this could really serve a purpose I'll verify the function is relevant with other pieces of hardware, |
So:
|
The implementation on those examples is a bit specific to the NordDrum If you are curious about what I'm doing and why I initially needed this function... The ND3P has Six voices, one voice per pad and I assign one mi-faust model per pad. There is only one potentiometer on the ND3P front panel. This means the parameters of my models are all controlled by the same physical knob. I needed a midi join function ensuring that parameters value don't "jump" |
… usecase text (unnecessary complexity
…er to match sAndH
I cut everything down.
|
Could you tell me if this example and reworked documentation bring some more light into what the function does?
|
In the new implementation:
|
|
Also since we have midi channel now...
In thiis example we use a single physical potentiometer to control the cutoff of two synth voice filters. On our hardware controller we can change the midi channel the potentiometer sends its data to. In faust, This illustrate the midi join when switching from channel 0, to channel 1. Rem: This example need some reworking, This does not work as smoothy
|
@rmichon is going to Grenoble tomorrow. Are you going to be part of the meeting with Jerome and James ? This could be a way to show your demo ? |
Yes, we meet tomorrow indeed. I definitely plan to demo the NordDrum + mi-faust! |
OK so I suggest that we go back on this precise |
Yes, it's the most simplest thing and somehow It's hard to find a way to describe Anyway the feedback you gave me was already a big help in my efforts to We will see tomorrow. |
OK, I suggest that we have a look at this all together when @bornej visits GRAME on Tuesday. |
Yes, the discussion would be then if this parameter adaptation code is needed at FAUST DSP level, or at the MIDI architecture level, since it seem to depends of the behavior of a specific device. |
A function that holds its input value when receiving a off trigger.
When receiving a on trigger, the function waits for the input value to join the held value. Once the input joins the ouput value, the function is bypassed.
The function solve the problem mentioned in the following use case:
When working with multi-timbral synthesizers, some parameters
might be shared between different synth voices (filter cutoff, resonance, ...).
It is common that such a parameter will be controlled by a physical potentiometer sending Midi CC. Depending on which synthesizer voice has the focus, the user might set
the potentiometer to different positions.
When switching back to a voice, the parameters values might "jump"
abruptly because the potentiometers physical positions do not match the parameters values anymore.
See documentation for usage, illustration, example...