Go Back   Cockos Incorporated Forums > Projects > Deprecated REAPER issue tracker > Open Bug

Shortcuts: Soft takeover fails Issue Tools
issueid=3145 12-18-2010 04:45 PM
Human being with feelings
Shortcuts: Soft takeover fails
Reaper doesn`t do soft takeover if it receives one value from a certain CC (ie.CC113 64) and then the other value for the same CC which is not the first value+-1 (ie. CC113 89). Instead, it just jumps to 89 from 64 in this example

Reaper (v3.73) doesn`t do soft takeover if it receives:
one value from a certain CC (ie.CC113 64)

and then

the other value for the same CC which is not the first value+-1 (ie. CC113 89)


Instead, it just jumps to 89 from 64 in this example

--------------------------------------------------------------------------------------------------------------------------------------------------------
How to replicate it:

1. Select one knob/fader on your midi controller and assign it to volume/pan of one track (don`t forget to enable soft takeover :D)

2. Move fader/knob on your midi controller. Everything should work as expected (the fader in reaper doesn`t move until reaper get`s appropriate CC`s value that corresponds to it`s position)

3. NOW, select some other bank on your midi controller which changes the CC of fader/knob in question, move it to a different position

4. Return to your previous bank and move that fader/knob...you will see instant jump in reaper without soft takeover

IT CAN ALSO BE REPLICATED THIS WAY:

Just program the same CC to two different knobs/faders on your midi controller and move them around.

--------------------------------------------------------------------------------------------------------------------------------------------------------
I tested this with two midi controllers and the log in MidiOX doesn`t show anything strange, it`s all normal stuff:


Code:
 TIMESTAMP IN PORT STATUS DATA1 DATA2 CHAN NOTE EVENT  
    171919  1  13    176   113    44    1  ---  Control Change        
    172020  1  13    176   113    45    1  ---  Control Change        
    172131  1  13    176   113    46    1  ---  Control Change        
    174153  1  13    176   113    47    1  ---  Control Change        
    176489  1  13    184   113    48    9  ---  Control Change        
    177046  1  13    184   113    49    9  ---  Control Change        
    177516  1  13    184   113    50    9  ---  Control Change        
    178385  1  13    184   113    51    9  ---  Control Change        
    180801  1  13    176   113    52    1  ---  Control Change        
    181271  1  13    176   113    53    1  ---  Control Change        
    181317  1  13    176   113    54    1  ---  Control Change        
    182232  1  13    176   113    55    1  ---  Control Change
Code:
      
 TIMESTAMP IN PORT STATUS DATA1 DATA2 CHAN NOTE EVENT  
      3612 13  13    176   116    46    1  ---  Control Change        
      5264 13  13    176   116    47    1  ---  Control Change        
      6817 13  13    176   116    48    1  ---  Control Change        
      8787 13  13    176   116    49    1  ---  Control Change        
     13639 13  13    176    16    50    1  ---  Control Change        
     18196 13  13    176    16    51    1  ---  Control Change        
     20955 13  13    176    16    52    1  ---  Control Change        
     21990 13  13    176    16    53    1  ---  Control Change        
     25660 13  13    176   116    54    1  ---  Control Change        
     27704 13  13    176   116    55    1  ---  Control Change        
     28641 13  13    176   116    56    1  ---  Control Change        
     30563 13  13    176   116    57    1  ---  Control Change


Discussion: http://forum.cockos.com/showthread.php?p=642797
Issue Details
Issue Type Open Bug
Project Deprecated REAPER issue tracker
Category Editing behavior
Status Awaiting Feedback
Priority 5 - Medium
Affected Version 3.73
Fixed Version (none)
Users able to reproduce bug 8
Users unable to reproduce bug 0
Assigned Users (none)
Tags (none)

03-09-2013 08:05 AM
Human being with feelings
 
See here for screencasts on the whole thing

http://forum.cockos.com/showpost.php...8&postcount=14

or read the whole thread if needed

http://forum.cockos.com/showthread.p...=1#post1137667
Reply
04-04-2013 07:54 AM
Administrator
 
The soft takeover logic is currently: if the controller value is near the parameter value, OR if the controller value is above the parameter value and the last controller value was below the parameter value, OR if the controller value is below the parameter vlaue and the last controller value was above the parameter value, it works.

So in this example, if you send a 64, followed by a 89, then the soft takeover should kick in if the parameter value was any value between 64 and 89 (which makes sense, since 64 to 89 is a rather large move).

Does this help? Can you describe how you think it should function differently, or if this is not consistent with the behavior you are seeing, share what you are seeing.
Reply
04-04-2013 08:03 AM
Human being with feelings
 
The way soft takeover should function is: if a CC is 32, and your physical controller is 89, nothing happens until you match the position of your physical controller with 32, and only then will the CC follow any changes made with your physical controller.

At least that's the way I see it.
Reply
04-04-2013 08:14 AM
Administrator
 
Quote:
Originally Posted by EvilDragon
The way soft takeover should function is: if a CC is 32, and your physical controller is 89, nothing happens until you match the position of your physical controller with 32, and only then will the CC follow any changes made with your physical controller.

At least that's the way I see it.
IMO if you do an abrupt move across 32, it should pick it up. Maybe we could make it optional, but if your controller has a lot of steps it could be hard to actually catch the takeover.
Reply
04-04-2013 08:25 AM
Human being with feelings
 
In case of big jumps from the controller, then yes, if a value less or equal than 32 was received (from my previous example), soft takeover should take over, but additionally using slew limiting. Example: CC is at 32, controller is at 96. I move the controller very fast and it sends out 4 or 5 steps of various values, say 84, 66, 52, 40, 29, 11, 13...

In this example, soft takeover should latch onto after receiving 29, HOWEVER it should interpolate the input by slew limiting (lag processor) from 32 down to 29, which would prevent sudden jumps and provide a linear ramp in case of these jumpy values.
Reply
04-05-2013 06:34 PM
Human being with feelings
 
Thank God for Evil Dragon. :)
I wouldn't know how to put it in those technical terms but I do agree with what he is saying. That is all also the way I see it.

Quote:
Originally Posted by EvilDragon
The way soft takeover should function is: if a CC is 32, and your physical controller is 89, nothing happens until you match the position of your physical controller with 32, and only then will the CC follow any changes made with your physical controller.
This is what in those videos I made I think was missing. It would cause great jumps in volume and when doing small adjustments it did screw things up a bit. Thanks for looking into it. I do appreciate it!

EDIT: Oh if you have any problem understanding those videos, ley me know, I'll try and make something more straightforward asap
Reply
Reply

Issue Tools
Subscribe to this issue

All times are GMT -7. The time now is 03:37 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.