Change effect selection and turn it on with a button

Discussion in 'Feature Suggestions' started by freakerz, Jun 25, 2012.

  1. freakerz

    freakerz New Member

    Messages:
    18
    Suggestion: Make it possible to change an effect and turn it on using a button.

    It was detailed in this thread: http://www.native-instruments.com/forum/showthread.php?p=1047767

    Disclaimer: I did do a search before posting for "turn effect on" and didn't find a thread about this, although it has been discussed in other sections of these forums.
     
  2. Stevan

    Stevan NI Product Owner

    Messages:
    877
    This is already possible in traktor pro 2.5. You simply need to map additional command to button.

    Add in> FX unit> FX preset
     
  3. freakerz

    freakerz New Member

    Messages:
    18
    That trick seems like a work around, not a "feature".

    Problem using presets is how do I turn off an effect when someone manually select an FX using a knob, for example.

    The presets are restored after all MIDI has been processed, making it impossible to turn off an effect, even using "invert".
     
  4. Stevan

    Stevan NI Product Owner

    Messages:
    877
    No need for setting FX store preset when using knob because it automatic preset it when knob send second impulse while twisting it. Same as second press when using button for this.

    Disengage restoring parameters and set interaction mode to hold.
     
  5. freakerz

    freakerz New Member

    Messages:
    18
    Not sure I'm explaining this right..

    I'm mapping the Twitch, it has an FX panel with 4 knobs, I mapped them for D/W, Knob1, Knob2, Knob3.
    When shift is pressed down, in single mode, D/W will change effect.
    In group mode, when shift is pressed down, Knob1/Knob2/Knob3 change each effect respectively.

    It also has 8 pads that I'm using for single button FX triggers.
    I want to be able to trigger 6 different effect using only FX Unit 1.
    So I was going to use FX Store Preset to save them as "ON" so not only would people not have to press twice to change the effects.

    Problem I'm having is, if I do snapshot all the effects as "ON" .. when a person manually changes the FX using the Shift + D/W knob, or the other knobs.. effects snapshot will turn them on, and I can't figure out a way to prevent that since snapshots are restored after all MIDI was processed. Effects should be off when manually selecting them so someone can change its params before turning it on.

    Here's the mapping I'm working on..
    http://img411.imageshack.us/img411/364/twitchmapping.jpg

    Thanks for your patience :S

    EDIT: The goal would be to have effects always on, and then I'ld choose when to turn them off. So "FX Restore Snapshot" should, IMO, be an additional mapping function..

    EDIT 2: One way I just thought of would be to play with the FX assignment, unassign FX Unit 1 and have the DJ "re-assign" it so the FX is applied.. I'll play with that today
     
  6. DJ MiCL

    DJ MiCL Moderator Moderator

    Messages:
    657
    Turning off an effect and un-assigning it work quite differently. If you turn off a delay, there will be no more input to the FX but the echo will keep going. But if you un-assign it using the effect unit 1~4 buttons, the echo will stop instantly. Another instance is when you are using Turntable FX/Reverse Grain. These effects need to be assigned for a few seconds before being able to take effect. If they are pre assigned and then turned on, they work instantly.

    I support your feature request, but in the mean time, can you explain how you want your FX buttons to work? For instance, in hold mode or toggle?
     
  7. •Phi

    •Phi Forum Member

    Messages:
    45
    Perhaps this will help. I wrote some instructions for using scrolling modifiers as FX layers. I can't tell from your description if this is similar, but I definitely can tell you how to do what you are trying to do once I figure out exactly what that is.

    You can use the "Direct value" in your mapping to assign specific values to each different button

    •Phi wrote:
    This is out of my head so I might use a different name of something but...

    Add in>
    modifier>
    modifier one>
    press "learn">
    hold shift and move the jog wheel>
    press "learn" to stop learning>
    go to the control type (maybe called something else, I cant remember) and select "encoder">
    look at the modifier value (row of numbers at top of page) as you move jog-wheel>
    adjust sensitivity (at bottom of page) to get a smooth even scroll between values 0-7>
    that is the scrolling modifier
    ------------------------
    add in>
    FX group>
    FX group select (may be called something different)>
    press "learn" hold shift and move the jog wheel>
    press "learn" to stop learning>
    go to interaction mode and select "dir" (this means "direct to value">
    change interaction mode value (drop down menu) to BM2>
    set modifier condition for this control to M1=0
    add in>
    FX group>
    FX group select (may be called something different)>
    go to interaction mode and select "dir" (this means "direct to value">
    change interaction mode value (drop down menu) to F92>
    set modifier condition for this control to M1=0
    add in>
    FX group>
    FX group select (may be called something different)>
    go to interaction mode and select "dir" (this means "direct to value">
    change interaction mode value (drop down menu) to Reverb>
    set modifier condition for this control to M1=0
    that is the first FX group
    .............................. .................
    add in>
    FX group>
    FX group select (may be called something different)>
    press "learn" hold shift and move the jog wheel>
    press "learn" to stop learning>
    go to interaction mode and select "dir" (this means "direct to value">
    change interaction mode value (drop down menu) to Delay>
    set modifier condition for this control to M1=7
    add in>
    FX group>
    FX group select (may be called something different)>
    go to interaction mode and select "dir" (this means "direct to value">
    change interaction mode value (drop down menu) to Gater>
    set modifier condition for this control to M1=7
    add in>
    FX group>
    FX group select (may be called something different)>
    press "learn" hold shift and move the jog wheel>
    press "learn" to stop learning>
    go to interaction mode and select "dir" (this means "direct to value">
    change interaction mode value (drop down menu) to LoFi>
    set modifier condition for this control to M1=7
    that is the second FX group
    -----------------------------------------
    You can set up eight scrolling FX groups with one modifier like this

    You can set up sixty four FX groups using a cascading modifier system
     
  8. DJ MiCL

    DJ MiCL Moderator Moderator

    Messages:
    657
    Hey now. I haven't tested it enough to call it bug free but it looks like there is a solution if hold interaction works for you.

    (1) Map the same button to:
    Effect selector 1 (or 2 or 3)/button/direct/(whatever effect)
    Effect button 1 (or 2 or 3)/button/Hold
    Effect Store Preset/button/trigger
    Effect Store Preset/button/trigger/invert

    Due to the order of events, this is what happens.

    Press button -> Effect switches -> Effect turns on (hold) -> Preset gets stored -> Preset kicks in -> thus effect stays on

    Release button -> Effect turns off -> Preset gets stored as off

    Hence you can scroll through safely without turning on the effect.

    The only worry is when you scroll through the FX while you have an effect activated, but since we only have two arms at most, this should be rare - given that you are using the hold interaction.

    To do something similar with a toggle interaction instant FX at a glance seems to be a lot more complicated, but I will try thinking something if that was what you wanted.
     
  9. freakerz

    freakerz New Member

    Messages:
    18
    No I'm looking for hold interaction, I'll try your ideas tonight!
    ---
    You're a boss, can't believe I didn't think of that.. thanks!
     
  10. freakerz

    freakerz New Member

    Messages:
    18
    I just tried it for my "echo freeze" button.. I get it working, except, switching from effects with no "button 2" (for example, lofi) to delay which I use for echo freeze.. the "button 1 on" mapping doesn't turn that button one.. weird.. trying to figure out if it's that preset save causing the problem or what.

    I get it working with a toggle, but if mapping needs to change the effect, there's a processing delay, and by the time it kicks it, the delay freezes late.. so it's useless :S
     
  11. •Phi

    •Phi Forum Member

    Messages:
    45
    Alternatively, you can use my midi-loop method to have Traktor press the button twice in a couple milliseconds. That should work bug free because it's just double-pressing so quickly that you wont notice a difference.

    Here is a brief tutorial on midi-loop LFOs http://www.native-instruments.com/forum/showthread.php?t=167529
     
  12. freakerz

    freakerz New Member

    Messages:
    18
    Yeah, using a midiloop would work.. but asking mapping users to install third party shareware for a mapping.. yish :/
     
  13. •Phi

    •Phi Forum Member

    Messages:
    45
    I'm just making a helpful suggestion :)

    btw, I'm working on controler designs that will solve this problem...
     
  14. DJ MiCL

    DJ MiCL Moderator Moderator

    Messages:
    657
    Do you want to use the echo freeze in hold? Only freezing while you're pushing the button? Or do you want to let go of it and still be frozen?
     
  15. freakerz

    freakerz New Member

    Messages:
    18
    Yeah no problem, read your other thread, you sure have crazy mapping ideas, that's good stuff! ;)
    ---
    Let go of it and still be frozen

    I think this one may be a bug too.. :(
    If previous effect had no 2nd button, can't turn on button 2 on first press for new effect selection? :confused:
     
  16. DJ MiCL

    DJ MiCL Moderator Moderator

    Messages:
    657
    Actually this behavior is the same from 2.1.x.

    There are some exceptions I can't explain the reasons of, but basically here is how Traktor works. Whenever it receives multiple commands, it tries to do everything "at the moment it was told to do so". For instance, let's suppose Modifier #1 is currently 2. If you map a button that (1) increases Modifier #1 and (2) Plays Deck A when M1=3, the first time you push it, only the modifier increases. This is because when you push the button, M1 is still 2 (right before turning to 3). The next time you push it, M1 increases to 4 (from 3) and the deck starts to play.

    It's the same with Button 2 and the old "Single FX button 1". When you map a button that changes the FX to Delay and turn Button 2 to On, if the current FX is Lofi, there is no Button 2 so Traktor can only change the FX to delay.

    The following workaround requires the DJ to pause a fraction of a second so it is not a prefect solution, but here is how I would tackle this.

    Firstly, take a snapshot of Delay with both On/Off and FRZ set to OFF. This will be the default parameter.

    Then, map the same button to:
    FX Unit>FX Unit Mode Selector/Button/Direct/Single
    FX Unit>Effect 1 Selector/Button/Direct/Delay
    FX Unit>Unit On/Button/Toggle/invert
    FX Unit>Button 2/Button/Toggle/invert
    (Also add any parameter changes with Button/Direct)

    When you press it, only the FX mode and the FX itself changes, and when you release the button, the FRZ kicks in. To deactivate, just press and release again. If you want to FRZ right on the beat, press the button half a beat early and release on the beat. Sort of like how you would use CUEPLAY in the default behavior.

    The only thing you want to be careful is not to press and release too rapidly, because then Traktor will assume that Button 2 needs to be activated too soon (while it's still lo-fi) and it won't work.

    As I said, not perfect, but you can aim and activate FRZ precisely when you want to.