Go Back   Cockos Incorporated Forums > REAPER Forums > ReaScript, JSFX, REAPER Plug-in Extensions, Developer Forum

Reply
 
Thread Tools Display Modes
Old 01-11-2018, 01:42 PM   #241
ClassicMan
Human being with feelings
 
Join Date: Mar 2017
Posts: 133
Default

Thank you so much juliansader,

I now have it working through using the dialogue box.

How do I run the script without the dialogue box?
ClassicMan is offline   Reply With Quote
Old 01-11-2018, 01:50 PM   #242
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by ClassicMan View Post
How do I run the script without the dialogue box?
ReaPack should include two additional variants of the script that don't open the dialog box:
* js_Insert linear ramps between selected CCs in lane under mouse (without dialog box)
* js_Insert ramps between selected CCs or velocities (in last clicked lane, without dialog box, at grid spacing)

You can also customize the behavior of the script in the "User Area", and then save your customized version as a new script.


(BTW, you can also use the Tilt or Arch scripts to tilt CC curves to specific start and end values.)
juliansader is offline   Reply With Quote
Old 01-11-2018, 02:36 PM   #243
lunker
Human being with feelings
 
lunker's Avatar
 
Join Date: Nov 2007
Location: Lucas, TX, USA (via Luleå, Sweden)
Posts: 2,009
Default

Quote:
Originally Posted by ClassicMan View Post
Thank you so much juliansader,

I now have it working through using the dialogue box.
Yay!

I feel rather guilty of causing Julian all this extra work getting you up and running, since I was the one who pointed you toward these scripts.

These scripts are wonderful, plus it is a great learning experience to read through them to see how to make my own scripts more powerful and efficient.

Julian -- thanks for the scripts and for helping ClassicMan get them working!
__________________
Best Regards, Ernie "lunker" Lundqvist
BDSM (Bad Dog Studio Musicians)
Windows 10 running on Z390 + i7-8700
lunker is offline   Reply With Quote
Old 01-11-2018, 02:46 PM   #244
ClassicMan
Human being with feelings
 
Join Date: Mar 2017
Posts: 133
Default A Huge Thank You

Hello again juliansader,

Your scripts are really incredible, absolutely wonderful.

I must say that the more I learn about Reaper the more I wish I had moved from Sonar earlier. Reaper, with it's variety of actions and scripts really does exceed all other DAWS I've tried and that is most of them.

Thank you again juliansader for your scripts and all the help you have given.

Best wishes,

Michael
ClassicMan is offline   Reply With Quote
Old 02-04-2018, 12:22 PM   #245
JoostJanssensDS
Human being with feelings
 
Join Date: Feb 2017
Posts: 34
Default

Hi Julian,

thanks for these wonderful scripts, I've been using them for quite some time now, and love them. Today, however, I ran into what seems to be a rather strange message when trying to use your compress script on the velocity of a percussion part. Whenever I try to use this script, I get this message:

''There appears to be overlapping notes among the selected notes.

In particular, at position 34.1.50

The action 'Correct overlapping notes' can be used to correct overlapping notes in the active take.''

Even when doing correct overlapping notes, the script throws the same message on the screen. And, for surely, the script can be used even with overlapping notes right? I hope you can help me.

Thanks in advance.

Joost
JoostJanssensDS is offline   Reply With Quote
Old 02-04-2018, 01:05 PM   #246
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by JoostJanssensDS View Post
And, for surely, the script can be used even with overlapping notes right? I hope you can help me.
Overlapping notes? Eeck! Run away!

REAPER is unfortunately not compatible with overlapping notes. REAPER uses the standard specifications for MIDI files to store the data of its MIDI items, and according to these specifications, overlapping notes (same pitch and same channel) are not admissible MIDI data: Each note consists of two separate MIDI events, a note-on event and a note-off event, and each note-on event must be paired with the next note-off event. (Think of MIDI keyboards from the 1980's, streaming MIDI events through MIDI cables: A new note can only start after the previous note at the same pitch has ended.)

REAPER's MIDI editor can *temporarily* remember the locations of overlapping notes while a user is editing, but most (or all) of REAPER's other functions, including Gluing, Humanize, Quantize, etc, are not compatible with overlapping notes, and may result in artefacts such as zero-length notes or infinitely extended notes.

As mentioned in several bug reports, including Humanize function is affecting non-selected notes in a MIDI item, REAPER's own native functions such as Humanize don't warn the user about overlapping notes before blundering ahead. It would be much better and much more user-friendly if they did.

BTW, most of the other older DAWs, such as SONAR, also base their MIDI items on the MIDI file specifications, but some of the newer DAWs, such as Studio One, have moved away from these specifications in order to avoid the limitations.)


Quote:
Originally Posted by JoostJanssensDS View Post
Even when doing correct overlapping notes, the script throws the same message on the screen.
If you get the same error message even after correcting overlapping notes, something may be wrong. Could you please check whether ALL the overlapping in the active take were in fact removed?
juliansader is offline   Reply With Quote
Old 02-05-2018, 09:08 AM   #247
JoostJanssensDS
Human being with feelings
 
Join Date: Feb 2017
Posts: 34
Default

Quote:
Originally Posted by juliansader View Post
If you get the same error message even after correcting overlapping notes, something may be wrong. Could you please check whether ALL the overlapping in the active take were in fact removed?
Hi Julian, thanks for your kind and very informative answer. In answer, yes I checked. There were no overlapping notes in the sense that you explained. It was a percussion part with just a few short hits after another, not even busy, but just a few notes to accentuate some subbeats.
JoostJanssensDS is offline   Reply With Quote
Old 02-05-2018, 09:44 AM   #248
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by JoostJanssensDS View Post
Hi Julian, thanks for your kind and very informative answer. In answer, yes I checked. There were no overlapping notes in the sense that you explained. It was a percussion part with just a few short hits after another, not even busy, but just a few notes to accentuate some subbeats.
You are welcome to PM me an RPP with the problematic MIDI item, so that I can investigate the problem.
juliansader is offline   Reply With Quote
Old 02-08-2018, 08:45 AM   #249
hopi
Human being with feelings
 
hopi's Avatar
 
Join Date: Oct 2008
Location: Right Hear
Posts: 15,618
Default

hi Julian... so like everyone else says, ...amazing scripts...

and a question please:

for example the various warp selected events scripts...

OK so to use them I have to have a key binding... which in itself has become tricky just to find something that makes sense that is not already used, you know???
...and they don't seem to work if I just clk the run in the action list because then I don't have the mouse over any given CC lane... right?

So I guess what I'm wondering is if there could be some way to have them work from a toolbar?
__________________
...should be fixed for the next build... http://tinyurl.com/cr7o7yl
https://soundcloud.com/hopikiva
hopi is offline   Reply With Quote
Old 02-08-2018, 10:30 AM   #250
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by hopi View Post
So I guess what I'm wondering is if there could be some way to have them work from a toolbar?
Indeed there is!

This GIF is from the first post in the thread:



For more help and details, please check out previous posts in this thread, or read the Description and Instructions in the script files (which can be read in any text editor, or in the "About" section of ReaPack's browser).

In short:

NOTE: Do NOT use REAPER's native right-click arming to try to arm these actions' toolbar buttons. There is a bug that prevents right-click-armed actions from working in the CC lanes: MIDI editor: Actions armed by right-clicking toolbar button do not work in CC lane. (Please make some noise in that bug report thread!)

As a workaround to this bug, I coded my own toolbar arming feature:

* Link the "lane under mouse" editing scripts (such as Warp) to toolbar buttons as usual. You don't need to assign keyboard or mousewheel shortcuts to these script.

* When you LEFT-click any of these toolbar buttons, the script will be *armed*, but will not run yet.

* Assign 1) a keyboard shortcut as well as 2) a mousewheel shortcut to the master control script (with the long but hopefully informative name) "js_Run the js_'lane under mouse' script that is selected in toolbar (link this to shortcut and mousewheel).lua". (Don't link this script to a toolbar button.)

* Use the shortcuts that you assigned to the js_Run script to run whatever editing script is armed in the toolbar.

Last edited by juliansader; 02-09-2018 at 04:00 AM.
juliansader is offline   Reply With Quote
Old 02-08-2018, 01:32 PM   #251
hopi
Human being with feelings
 
hopi's Avatar
 
Join Date: Oct 2008
Location: Right Hear
Posts: 15,618
Default

thanks Julian... geeez the rt clk not arming for the cc lane scripts is too bad... come on DEV's ... arming should be armimg, eh?
__________________
...should be fixed for the next build... http://tinyurl.com/cr7o7yl
https://soundcloud.com/hopikiva
hopi is offline   Reply With Quote
Old 03-07-2018, 03:46 PM   #252
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,984
Default

A little bump for this thread.

I just added to my repo some pretty basic scripts, using Julian`s code examples (thanks Julian). This mostly comes for users switched from Sonar to REAPER. They used some old python stuff (I can only guess it was from Anton9, Veto, spk77, gofer, but I`m not sure), so here a bunch of lua scripts I wrote for community using new (5.32+) API:

Remove Channel Aftertouch events.py >> MPL Scripts/MIDI/Remove selected takes MIDI AfterTouch
Remove CC events.py >> MPL Scripts/MIDI/Remove selected takes MIDI CC
Remove Pitch bend events.py >> MPL Scripts/MIDI/Remove selected takes MIDI PitchWheel
Remove PC events.py >> MPL Scripts/MIDI/Remove selected takes MIDI ProgramChange
Select every n'th note.py >> MPL/MIDI Editor/Note selector (alpha)

Also I used this API for InteractiveToolbar for all MIDI related widgets.
mpl is offline   Reply With Quote
Old 03-08-2018, 03:40 PM   #253
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,067
Default

Awesome MPL, thanks so much! I might use your code to better understand Julian's approach.

EDIT: btw, your scripts are only listed to run in the arrangement. You could add them to the MIDI editor, as well.
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 04-12-2018, 03:44 PM   #254
jayrope
Human being with feelings
 
Join Date: Feb 2018
Location: Corner of an asteroid
Posts: 118
Default real-time tools?

These tools look very nice. Is there any way to apply them in real time, instead of altering hard-coded midi values?
jayrope is offline   Reply With Quote
Old 04-12-2018, 03:47 PM   #255
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,798
Default

Julian's tools/scripts ARE realtime.
EvilDragon is offline   Reply With Quote
Old 05-03-2018, 04:51 AM   #256
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,798
Default

@juliansader... I've just noticed with the latest version of "js_Stretch selected events in lane under mouse.lua", when ending the stretch by pressing the key assigned to that script, the cursor icon doesn't disappear like it does with other MIDI editing scripts you did?
EvilDragon is offline   Reply With Quote
Old 05-03-2018, 06:43 AM   #257
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by EvilDragon View Post
@juliansader... I've just noticed with the latest version of "js_Stretch selected events in lane under mouse.lua", when ending the stretch by pressing the key assigned to that script, the cursor icon doesn't disappear like it does with other MIDI editing scripts you did?
Fixed, thanks!
juliansader is offline   Reply With Quote
Old 05-13-2018, 02:55 PM   #258
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
I'm having a problem with some of the updates to your midi scripts.

First the draw line and curve don't seem to allow the option to draw multiple points when the points are duplicate midi values. As in if the next step is not a full value like 64 to 65 it will not draw a value in. It just skips it. This makes it much more difficult to draw when chase is on because sometimes the values don't line up with where I want the curve or line to start. It also causes hardware synths to have the chance of getting that stepping sound. I seem to remember a setting in the past to allow the line and curve tool to follow my 32 points per quarter note setting.
The "skip redundant CCs" feature of scripts that insert CCs (such as the LFO Tool, "Draw sine curve in realtime" and "Insert linear or shaped ramps") is now controlled by a separate toggle script: "js_Option - Toggle skip redundant events when inserting CCs" (which can be linked to a toolbar button), so that users don't have to edit the script files to toggle the feature.

(I am not sure what the best way is to introduce new features: Should I simply mention it in the scripts' changelog and Instructions, or should new versions of scripts pop up a "Tips" window when they are first run, or should I bump this thread?)
juliansader is offline   Reply With Quote
Old 05-13-2018, 02:58 PM   #259
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,798
Default

It actually might be best if you could do all three of those things, but if it's overwhelming... Having a first time popup makes sense.
EvilDragon is offline   Reply With Quote
Old 06-01-2018, 03:07 AM   #260
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Updates in three scripts that work nicely together to quickly draw LFOs and to replace LFO point shapes:

Quick draw basic LFOs:




Reveal peak nodes in LFOs:
(Still in beta version.)




Insert ramps:

juliansader is offline   Reply With Quote
Old 06-01-2018, 03:30 AM   #261
reapero
Human being with feelings
 
Join Date: Aug 2011
Posts: 522
Default

Wow! More scripts! Thanks so much Julian for your awesome work!

As you told me in other forum, i´ll add my little suggestion here. I am more than happy with what you have already provided so far though. Crazy flexibility!


So what i think it would be really useful for people coming from Cubase is a script that mixes up tilt, compress/expand and regular CC scaling (that is about all the options that can be done in Cubase with click+dragging). So you can do all of this without having to click on different buttons or keycommands. You just engage the "master CC mangiglng" script whenever you have to deal with CC you have performed and recorded with a external midi controller and thats it.

So in order to trigger the different actions the mouse pointer position should be taken into account. Something like this:

- You are at the right of the selection (last CC vaules) --> tilts the end
- You are in the middle area of the selection --> just moves CC data up and down as when you click+drag in Reaper regularly
- You are in the middle area of the selection and you use the mousewheel --> compress/expands
- You are at the leftof the selection (first CC vaules) --> tilts the start

Ideally all of this would require a click+drag (besides the mousewheel), but i saw that none of your scripts work this way so i guess this must be a limitation.


Again, thanks for your cool scripts and terrfic work!
reapero is offline   Reply With Quote
Old 06-01-2018, 11:19 AM   #262
fetidus
Human being with feelings
 
Join Date: Sep 2007
Posts: 635
Default

Quote:
Originally Posted by reapero View Post

Again, thanks for your cool scripts and terrfic work!
+1 really great work! Thank you!
fetidus is offline   Reply With Quote
Old 06-01-2018, 01:44 PM   #263
lunker
Human being with feelings
 
lunker's Avatar
 
Join Date: Nov 2007
Location: Lucas, TX, USA (via Luleå, Sweden)
Posts: 2,009
Default

Wow Wow WOW !!!

So sorry I am out of the country, and will have to wait a week before I get back home and can try these out.

You are fantastic.
__________________
Best Regards, Ernie "lunker" Lundqvist
BDSM (Bad Dog Studio Musicians)
Windows 10 running on Z390 + i7-8700
lunker is offline   Reply With Quote
Old 06-04-2018, 10:30 PM   #264
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,067
Default

Using "js_Tilt selected events in lane under mouse to fit chased values on both sides.lua" doesn't seem to have any effect
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 06-11-2018, 12:09 PM   #265
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by _Stevie_ View Post
Using "js_Tilt selected events in lane under mouse to fit chased values on both sides.lua" doesn't seem to have any effect
Are there any events to the left or right of the selected events? If there are not, there is nothing to chase, and the script will leave the selected events unchanged.

Hmmm... in this version, the script only chases within the current item. Perhaps the next version should chase through the entire track.


(I thought I had already replied several days ago. Perhaps I neglected to click "Submit".)

Last edited by juliansader; 06-12-2018 at 10:28 PM.
juliansader is offline   Reply With Quote
Old 06-11-2018, 12:16 PM   #266
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Interesting update:

I recently uploaded two scripts:
* js_Mousewheel - Control js MIDI editing script (if one is running), otherwise scroll up or down
* js_Mousewheel - Control js MIDI editing script (if one is running), otherwise zoom horizontally

These scripts are intended to simplify mousewheel control of the js MIDI editing scripts that respond to mousewheel movement, such as Compress, Warp, etc.

Instead of using a separate, dedicated modifier+mousewheel shortcut (such as Ctrl+mousewheel) to control the scripts, the user can use plain mousewheel without any modifier.

If one of these js scripts is running, this script will send the mousewheel movement to the running script.

If no js script is running, the scripts will simply zoom in or out horizontally (as per REAPER's default behavior for mousewheel), or scroll up and down (which I assume many users have changed the default behavior to).

This script also allows mousewheel control of scripts in the inline MIDI editor, but the script has to be assigned a mousewheel shortcut in the Main section, since the inline editor doesn't respond to mousewheel shortcuts.
juliansader is offline   Reply With Quote
Old 06-11-2018, 12:34 PM   #267
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,798
Default

That is pretty awesome!

You should also probably add inverse zoom/scroll direction variants of those scripts, too? Also, should probably rename for consistency with Reaper's native action name to "scroll vertically" instead of "scroll up or down". There's also scroll horizontally and zoom vertically actions you could cover, for all the different workflows?

Last edited by EvilDragon; 06-11-2018 at 12:47 PM.
EvilDragon is offline   Reply With Quote
Old 06-11-2018, 12:50 PM   #268
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by reapero View Post
So what i think it would be really useful for people coming from Cubase is a script that mixes up tilt, compress/expand and regular CC scaling (that is about all the options that can be done in Cubase with click+dragging). So you can do all of this without having to click on different buttons or keycommands. You just engage the "master CC mangiglng" script whenever you have to deal with CC you have performed and recorded with a external midi controller and thats it.

So in order to trigger the different actions the mouse pointer position should be taken into account. Something like this:

- You are at the right of the selection (last CC vaules) --> tilts the end
- You are in the middle area of the selection --> just moves CC data up and down as when you click+drag in Reaper regularly
- You are in the middle area of the selection and you use the mousewheel --> compress/expands
- You are at the leftof the selection (first CC vaules) --> tilts the start
A multifunctional "master CC mangling" script such as this might be possible. Perhaps:
* The mouse cursor icon could change, depending on the mouse position, to indicate the function that is activated at that position (Tilt, Move, Compress)
* Mousewheel can be used to activate individual functions while the script is running.

Quote:
Originally Posted by reapero View Post
Ideally all of this would require a click+drag (besides the mousewheel), but i saw that none of your scripts work this way so i guess this must be a limitation.
Mouse clicks are unfortunately not passed through to scripts, unless the mouse is over the script's own GUI window. (However, I am currently looking at whether AutoHotKey can be used to convert scripts into click-drag mouse modifier actions.)
juliansader is offline   Reply With Quote
Old 06-12-2018, 01:53 AM   #269
reapero
Human being with feelings
 
Join Date: Aug 2011
Posts: 522
Default

Quote:
Originally Posted by juliansader View Post
A multifunctional "master CC mangling" script such as this might be possible. Perhaps:
* The mouse cursor icon could change, depending on the mouse position, to indicate the function that is activated at that position (Tilt, Move, Compress)
* Mousewheel can be used to activate individual functions while the script is running.

Didnt think of that..That actually makes more sense and its a very elegant solution to overcome the mouse click limitation!
reapero is offline   Reply With Quote
Old 06-12-2018, 05:37 PM   #270
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,067
Default

Quote:
Originally Posted by juliansader View Post
Are there any events to the left or right of the selected events? If there are not, there is nothing to chase, and the script will leave the selected events unchanged.

Hmmm... in this version, the script only chases within the current item. Perhaps the next version should chase through the entire track.


(I thought I have already replied several days ago. Perhaps I neglected to click "Submit".)

I have to check, maybe I was unsure how to use the script correctly :P
Will report back tomorrow. And no problem for the neglected submit button

Edit:
Quote:
Originally Posted by juliansader View Post
A multifunctional "master CC mangling" script such as this might be possible. Perhaps:
* The mouse cursor icon could change, depending on the mouse position, to indicate the function that is activated at that position (Tilt, Move, Compress)
* Mousewheel can be used to activate individual functions while the script is running.



Mouse clicks are unfortunately not passed through to scripts, unless the mouse is over the script's own GUI window. (However, I am currently looking at whether AutoHotKey can be used to convert scripts into click-drag mouse modifier actions.)
This sounds all insanely good!!
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom

Last edited by _Stevie_; 06-12-2018 at 06:29 PM.
_Stevie_ is offline   Reply With Quote
Old 07-07-2018, 10:29 AM   #271
meradium
Human being with feelings
 
Join Date: May 2018
Posts: 38
Default

Any idea how we could implement mousewheel acceleration into the scripts? Slow movements = fine tuning of the shapes, fast movement = coarse adjustment...

Initially I tried to adjust the multiplier values since I am dialing quite a lot to switch between two states (e.g. in the curve ramp scripts). But that has both advantages and disadvantages...
meradium is offline   Reply With Quote
Old 07-07-2018, 11:41 AM   #272
meradium
Human being with feelings
 
Join Date: May 2018
Posts: 38
Default

I have some really strange behaviour here now. When I use any of the curve drawing scripts Reaper only draws the start and the end events but nothing in between... I am basically cutting holes in my CCs.

I already tried reinstalling the scripts, restarting, different project, etc... but nothing seems to get it back to normal. It used to work just fine.

Are there any particular preferences or MIDI Editor settings required? It feels like something got activated by accident and not the drawing script can't enter any CCs anymore.

Regular drawing with the mouse works just fine.

I also chevcked the MIDI CC drawing events preferences, which are set to default 32...

I am out of ideas

Correction: the Sine scripts seems to work...
meradium is offline   Reply With Quote
Old 07-07-2018, 12:55 PM   #273
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by meradium View Post
I have some really strange behaviour here now. When I use any of the curve drawing scripts Reaper only draws the start and the end events but nothing in between... I am basically cutting holes in my CCs.
Could you perhaps upload a quick GIF of what is happening?

My first guess would be that "Skip redundant events" is enabled, and that the start and end values are very similar, so the script will insert only a few CCs in-between the start and end events.
juliansader is offline   Reply With Quote
Old 07-07-2018, 01:19 PM   #274
meradium
Human being with feelings
 
Join Date: May 2018
Posts: 38
Default

Sure, here you go



Indeed, what is a bit strange is that both CCs stay on the same level unless I go "backwards"... I really have no idea what is going on. I did a fresh reinstall. No change.

The Sine scripts work, so do the Warp ones... only the "Draw..." scripts are not functioning.

I setup this action to trigger on "R" inside the MIDI Editor. The Mousewheel+Cmd combination is triggering the utility script. All working except for the curve drawing scripts...

Reaper v5.92/64 OSX 10.13.5 (HS)
meradium is offline   Reply With Quote
Old 07-07-2018, 01:33 PM   #275
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

I think what is going on, is that
* Skip redundant events is enabled, and
* The curve (controlled by the mousewheel) is so extreme, that it almost looks like a right angle. (The script remembers that last-used curvature.)

To fix this (hopefully), simply use the mousewheel to straighten the curve.
juliansader is offline   Reply With Quote
Old 07-07-2018, 02:35 PM   #276
meradium
Human being with feelings
 
Join Date: May 2018
Posts: 38
Default

Thanks for the hint. Indeed, for whatever reason the number was set so something ridiculous high...

I was able to solve it by deleting the corresponding state at the "onexit" function.

>>>> FROM SCRIPT IN "onexit" FUNCTION >>>>>

-- Save last-used power
reaper.SetExtState("js_Draw linear", "Last power", tostring(mouseWheel), true)
reaper.DeleteExtState("js_Draw linear", "Last power", true) <--- ADDED THIS
meradium is offline   Reply With Quote
Old 07-07-2018, 04:10 PM   #277
meradium
Human being with feelings
 
Join Date: May 2018
Posts: 38
Default

I hacked together a quick acceleration function to influence the mousewheel impact depending on how quickly the wheel is turned. If I now turn it fast, the curve changes quite rapidly. If I go slow, the changes are only small – great for fine tuning.

I use this now together with the wonderful "js_Draw linear or curved ramps in real time.lua" script.

Its pretty quick and dirty but seems to work. It can probably be improved quite a bit.

Following code has to be added after line 368:

-- >>>>> mousewheel acceleration
mousewheel_multiplier = 1
if moved ~= 0 then
lasttimemoved = tonumber(reaper.GetExtState("js_Mouse actions", "MousewheelAcceleration"))
lastDirection = reaper.GetExtState("js_Mouse actions", "MousewheelAccelerationDirection")
now = reaper.time_precise()
if lasttimemoved then
if moved > 0 then
direction = "up"
else
direction = "down"
end
if lastDirection ~= direction then
diff = 1
else
diff = now-lasttimemoved
end
reaper.SetExtState("js_Mouse actions", "MousewheelAccelerationDirection", direction, false)
mousewheel_multiplier = 0.03/diff
reaper.ShowConsoleMsg(mousewheel_multiplier .. "\n")
end
reaper.SetExtState("js_Mouse actions", "MousewheelAcceleration", now, false)
end
-- <<<<

Then further down I add it to the multiplication factor:

if moved > 0 then mouseWheel = mouseWheel * (1+mousewheel_multiplier)
elseif moved < 0 then mouseWheel = mouseWheel / (1+mousewheel_multiplier)
end

What do you think, could this be a potential feature enhancement for a future update?
meradium is offline   Reply With Quote
Old 07-08-2018, 01:18 AM   #278
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,798
Default

I'm sure Julian will add that code across all his scripts that use the mousewheel
EvilDragon is offline   Reply With Quote
Old 07-08-2018, 02:57 AM   #279
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,067
Default

@meradium

Wow, pretty cool stuff and definitely worth to incorporate it into these scripts!
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 08-06-2018, 05:12 PM   #280
pbattersby
Human being with feelings
 
pbattersby's Avatar
 
Join Date: Jun 2012
Posts: 348
Default

Quote:
Originally Posted by juliansader View Post

I recently uploaded two scripts:
* js_Mousewheel - Control js MIDI editing script (if one is running), otherwise scroll up or down
* js_Mousewheel - Control js MIDI editing script (if one is running), otherwise zoom horizontally
Can anyone tell me how to modify:

Quote:
Script: js_Mousewheel - Control js MIDI editing script (if one is running), otherwise zoom horizontally.lua
To change "zoom horizontally" to "zoom vertically"? It's obvious which lines need to be edited, I just need to know the magic code to pass to:

Quote:
reaper.Main_OnCommandEx()
and

Quote:
reaper.MIDIEditor_LastFocused_OnCommand()
or where to look them up.

EDIT: I found where to look up the code, now I want to change my question.

Instead of using:

Quote:
View: Zoom in horizontally (ID = 1012)
and

Quote:
View: Zoom out horizontally (ID = 1011)
I'd prefer to just use:

Quote:
View: Zoom vertically (MIDI relative/mousewheel) (ID = 40430)
__________________
Paul Battersby
Virtual Playing Orchestra - free sample library @ http://virtualplaying.com

Last edited by pbattersby; 08-06-2018 at 05:25 PM.
pbattersby is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 08:10 PM.


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