Old 07-25-2012, 07:54 PM   #1
airon
Human being with feelings
 
airon's Avatar
 
Join Date: Aug 2006
Location: Berlin
Posts: 10,670
Default v4.26pre4 - July 25 2012

v4.26pre4 - July 25 2012
+ ASIO: improved samplerate changing behavior
# ASIO: hopefully fixed samplerate changing related crash introduced in pre3 with some drivers
+ ReaControlMIDI: improved automation of snap-to-scale root and scale type
+ API: added functions to count, get, and set tempo/time signature markers
+ API: added function to get or insert FX by name
+ OSC: added explicit volume/pan automation touch messages
+ Video: Added menu item to get the current video file properties
+ Video/FFMPEG: Added FFMPEG DLL path info in video file properties dialog
+ Video/FFMPEG: Added button in render dialog to grab the current video file's width/height/framerate
__________________
Dialogue/FX Editor & Re-Recording Mixer
(Video)Using Latch Preview - Faderport16 CSI
"My ego comes pre-shrunk" - Randy Thom
airon is offline   Reply With Quote
Old 07-25-2012, 08:14 PM   #2
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 12,784
Default

The play cursor leaving junk behind will be fixed in the next build, sorry it didn't make it into this one.
Justin is offline   Reply With Quote
Old 07-25-2012, 08:33 PM   #3
PitchSlap
Human being with feelings
 
PitchSlap's Avatar
 
Join Date: Jan 2008
Location: Vancouver, BC
Posts: 3,253
Default

Quote:
Originally Posted by airon View Post
v4.26pre4 - July 25 2012

+ ReaControlMIDI: improved automation of snap-to-scale root and scale type
Thanks, this will come in handy live. I can automate one instance instead of using 10 separate ones!


Btw, this version is from the future! It's 8:30PM PST here, which means 11:30PM EST in NY, yet the timestamp says July 26...?
__________________
FRs: v5 Media Explorer Requests, Global Quantization, Session View
Win10 Pro 64-bit, Reaper 6(x64), AMD 3950x, Aorus X570 Master, 64GB DDR4 3600, PowerColor Red Devil 5700XT, EVO 970 2TB, 10TB HD, Define R6
PitchSlap is offline   Reply With Quote
Old 07-25-2012, 08:33 PM   #4
Mercado_Negro
Moderator
 
Mercado_Negro's Avatar
 
Join Date: Aug 2007
Location: Caracas, Venezuela
Posts: 8,303
Default

Quote:
Originally Posted by Justin View Post
The play cursor leaving junk behind will be fixed in the next build, sorry it didn't make it into this one.


it would be awesome if it were added in a pre4a lol
__________________
Pressure is what turns coal into diamonds - Michael a.k.a. Runaway

Last edited by Mercado_Negro; 07-25-2012 at 08:45 PM.
Mercado_Negro is offline   Reply With Quote
Old 07-25-2012, 11:36 PM   #5
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Location: Croatia
Posts: 2,295
Default

Quote:
Originally Posted by airon View Post
+ API: added functions to count, get, and set tempo/time signature markers
THANK YOU!!!!!
So much easier than coming up with stuff like this all over the script:
add_sel_pt_time = ((float(sel_pt_data[1]) - float(prev_pt_data[1])) / (60/float(prev_pt_data[2]))) * (60/(float(prev_pt_data[2]) + prev_pt_rate) - 60/float(prev_pt_data[2]))

I'm not a coder so doing all calculations manually was pretty intensive while trying to grasp the programming. But I learned a lot in the process so it was worth it! I guess I should thank you for that too!
Breeder is offline   Reply With Quote
Old 07-25-2012, 11:40 PM   #6
EricM
Human being with feelings
 
EricM's Avatar
 
Join Date: Jul 2009
Location: Ljubljana, Slovenia
Posts: 3,801
Default

Quote:
Originally Posted by airon View Post
+ Video/FFMPEG: Added button in render dialog to grab the current video file's width/height/framerate
Nice! Consider this being grabbed by default when choosing
video as an output format in render dialog, it's just one of
those things that user shouldn't think about, unless he wants
to change it.

(only the first time one chooses video, with video file being in
project, so that we don't get any nasty behavior of settings
always jumping to video settings even if user changed them
at one point of rendering)

e
__________________
Shoelace 4 Theme | SoundCloud/erXon
EricM is offline   Reply With Quote
Old 07-26-2012, 01:08 AM   #7
Zephyrus
Human being with feelings
 
Zephyrus's Avatar
 
Join Date: Nov 2009
Location: Nuremberg
Posts: 142
Default

asio startup bug still exists:

reaperx64:

Problemsignatur:
Problemereignisname: APPCRASH
Anwendungsname: reaper.exe
Anwendungsversion: 4.2.5.4
Anwendungszeitstempel: 5010ae1f
Fehlermodulname: reaper.exe
Fehlermodulversion: 4.2.5.4
Fehlermodulzeitstempel: 5010ae1f
Ausnahmecode: c0000005
Ausnahmeoffset: 00000000005af204
Betriebsystemversion: 6.1.7601.2.1.0.768.3
Gebietsschema-ID: 1031
Zusatzinformation 1: 35a8
Zusatzinformation 2: 35a818784018aa218b19f97228752b3e
Zusatzinformation 3: e12f
Zusatzinformation 4: e12f57a87c77d49f1488996768d8e32e

reaperx86:

Problemsignatur:
Problemereignisname: APPCRASH
Anwendungsname: reaper.exe
Anwendungsversion: 4.2.5.4
Anwendungszeitstempel: 5010add9
Fehlermodulname: reaper.exe
Fehlermodulversion: 4.2.5.4
Fehlermodulzeitstempel: 5010add9
Ausnahmecode: c0000005
Ausnahmeoffset: 004265b6
Betriebsystemversion: 6.1.7601.2.1.0.768.3
Gebietsschema-ID: 1031
Zusatzinformation 1: 0c47
Zusatzinformation 2: 0c47ecc18b31d3b3d50c3a36f49e3b09
Zusatzinformation 3: 760e
Zusatzinformation 4: 760e002ace7b47fe2921c49279f50401
Zephyrus is offline   Reply With Quote
Old 07-26-2012, 01:22 AM   #8
Viente
Human being with feelings
 
Viente's Avatar
 
Join Date: Feb 2012
Posts: 1,972
Default

Quote:
Originally Posted by Justin View Post
The play cursor leaving junk behind will be fixed in the next build, sorry it didn't make it into this one.
Thanks Justin
Viente is offline   Reply With Quote
Old 07-26-2012, 01:25 AM   #9
Viente
Human being with feelings
 
Viente's Avatar
 
Join Date: Feb 2012
Posts: 1,972
Default

+ API: added function to get or insert FX by name

Sounds great! Any example how to use it?
Viente is offline   Reply With Quote
Old 07-26-2012, 01:28 AM   #10
Phisk
Human being with feelings
 
Join Date: Jul 2007
Posts: 276
Default

Could í have an "freeze up to selected fx"-action Please

Phisk is offline   Reply With Quote
Old 07-26-2012, 01:41 AM   #11
Viente
Human being with feelings
 
Viente's Avatar
 
Join Date: Feb 2012
Posts: 1,972
Default

Could you please tell if this change by design? Looks not so good



Thanks!
Viente is offline   Reply With Quote
Old 07-26-2012, 01:45 AM   #12
Phisk
Human being with feelings
 
Join Date: Jul 2007
Posts: 276
Default

Quote:
Originally Posted by Viente View Post
+ API: added function to get or insert FX by name

Sounds great! Any example how to use it?
You can access it via the Reaper API (so it is more for the programmers)
http://wiki.cockos.com/wiki/index.php/REAPER_API
Phisk is offline   Reply With Quote
Old 07-26-2012, 01:46 AM   #13
Viente
Human being with feelings
 
Viente's Avatar
 
Join Date: Feb 2012
Posts: 1,972
Default

Quote:
Originally Posted by Phisk View Post
Could í have an "freeze up to selected fx"-action Please
You can make it by yourself using Custom Actions : Disable some FXs before freezing, then re-enable it again
Viente is offline   Reply With Quote
Old 07-26-2012, 01:47 AM   #14
Viente
Human being with feelings
 
Viente's Avatar
 
Join Date: Feb 2012
Posts: 1,972
Default

Quote:
Originally Posted by Phisk View Post
You can access it via the Reaper API (so it is more for the programmers)
http://wiki.cockos.com/wiki/index.php/REAPER_API
Ahh, i forgot there are HTML generated docs Going to check it out
Viente is offline   Reply With Quote
Old 07-26-2012, 01:56 AM   #15
Phisk
Human being with feelings
 
Join Date: Jul 2007
Posts: 276
Default

Quote:
Originally Posted by Viente View Post
You can make it by yourself using Custom Actions : Disable some FXs before freezing, then re-enable it again
I would like to have a feature like this: (un)freeze up to the fx over which the mouse is hovering (in mcp/tcp)


I don't think this can already be achieved?
Phisk is offline   Reply With Quote
Old 07-26-2012, 02:46 AM   #16
Sexan
Human being with feelings
 
Sexan's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 2,808
Default

there is a bug in midi editor when project sync time base is on,play cursor in midi doesn't follow cursor in arrange
Sexan is offline   Reply With Quote
Old 07-26-2012, 04:12 AM   #17
KevinW
Human being with feelings
 
KevinW's Avatar
 
Join Date: Sep 2009
Location: Dayton, Ohio USA
Posts: 1,714
Default

Quote:
Originally Posted by airon View Post
+ ReaControlMIDI: improved automation of snap-to-scale root and scale type
Excellent. +/- 1 octave range seems appropriate. The issue with the mouse sensitivity is fixed as well.

HOWEVER, when I assign this to a vpot on my BCF2000 using Klinke's csurf, the rotation is still backwards. Rotating counterclockwise causes the value to increase. Is this the fault of the BCF? I don't have another controller to test it on.
Help, anyone?

Quote:
Originally Posted by airon View Post

+ API: added function to get or insert FX by name
I also see a "TrackFX_GetInstrument" function as being related to the named FX function. Is this new as well?
I'm hoping someone will post a simple example of these in use soon.
KevinW is offline   Reply With Quote
Old 07-26-2012, 04:21 AM   #18
KevinW
Human being with feelings
 
KevinW's Avatar
 
Join Date: Sep 2009
Location: Dayton, Ohio USA
Posts: 1,714
Default

Quote:
Originally Posted by airon View Post
+ ReaControlMIDI: improved automation of snap-to-scale root and scale type
Correction - the mouse sensitivity is fixed, but now I can only get the BCF to increment/decrement in steps of 2 semitones.

Like I said, it could well be the BCF. Could someone confirm?
KevinW is offline   Reply With Quote
Old 07-26-2012, 04:21 AM   #19
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Location: Croatia
Posts: 2,295
Default

Quote:
Originally Posted by airon View Post
+ API: added functions to count, get, and set tempo/time signature markers
Found 2 bugs.
  • SetTempoTimeSigMarker won't let you set up time signature numerator and denumenator. If you don't have it, it won't set it. If you have it, it will remove it.
    Licecap here: https://stash.reaper.fm/13512/SetTemp...%20working.gif

  • GetTempoTimeSigMarker is outputing 10 elements, and not 9 as it says in the api

    This is requested:
    RPR_GetTempoTimeSigMarker(0, 2, 0, 0, 0, 0, 0, 0, 0,)

    And this I get.
    1, 0, 2, 11.950413223140496, 6, 0.0, 170.0, 4, 4, 1)

    It seems int ptidx becomes 3. element instead of 2. etc...
Breeder is offline   Reply With Quote
Old 07-26-2012, 05:22 AM   #20
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 10,815
Default

Quote:
Originally Posted by KevinW View Post
Correction - the mouse sensitivity is fixed, but now I can only get the BCF to increment/decrement in steps of 2 semitones.
This seems to work properly (proper direction, steps of one semitone) with every controller we have in the shop.
schwa is offline   Reply With Quote
Old 07-26-2012, 05:29 AM   #21
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 10,815
Default

Quote:
Originally Posted by Breeder View Post
[*]GetTempoTimeSigMarker is outputing 10 elements, and not 9 as it says in the api

This is requested:
RPR_GetTempoTimeSigMarker(0, 2, 0, 0, 0, 0, 0, 0, 0,)

And this I get.
1, 0, 2, 11.950413223140496, 6, 0.0, 170.0, 4, 4, 1)

It seems int ptidx becomes 3. element instead of 2. etc...[/LIST]
If you are calling via ReaScript, this is how ReaScript works when there is information returned in the parameter list. The function return value is the first returned list value, followed by the parameters. See Help/HTML/ReaScript Documentation.
schwa is offline   Reply With Quote
Old 07-26-2012, 05:37 AM   #22
Banned
Human being with feelings
 
Banned's Avatar
 
Join Date: Mar 2008
Location: Unwired (probably in the proximity of Amsterdam)
Posts: 4,868
Default

(Quoted from previous pre thread):

Quote:
Originally Posted by schwa View Post
The current support is the same as touch automation support for control surfaces without touch feedback, that is, when the control is moved, it holds touch until there are a few seconds in a row with no movement.

We could also add an explicit touch message, something like

TRACK_VOLUME_TOUCH b/track/@/touch

... and not use the timeout method if the explicit touch messages exist.
Yes, adding explicit touch start/stop messages is definitely the way to go.

Quote:
Originally Posted by airon View Post
v4.26pre4 - July 25 2012
+ OSC: added explicit volume/pan automation touch messages
Well, it's a start anyway, so yay!
Quote:
Originally Posted by mim View Post
[...] FX_PARAM_TOUCH would be great too.
At the *very* least, yes.

However, I'm not sure I like the idea of separate additional message patterns for every pre-existing message pattern. Since the mechanism should ideally work for *any* parameter that can be automated (and not only volume / pan), I think I'd much prefer a more generally applicable message pattern scheme.

As I mentioned elsewhere (on the OSC bugs / FRs thread):

Quote:
Originally Posted by Banned View Post
I still don't think I have a good idea of how I'd like such messages to look like exactly though. Adding separate patterns with "/touch" suffixes everywhere seems overkill... but sending strings like "start" and "stop" to addresses that otherwise expect float or integer numbers may be confusing as well.
The 'overkill' argument seems to apply to using separate message patterns with a _TOUCH suffix. even more so. It would basically require doubling the number of lines in Reaper.OSC describing OSC message patterns to become useful, i.e. have a complete implementation. For example, to touch-automate dual panning modes, there also needs to be a line somewhat like this:
Code:
TRACK_AUTO_PAN2_TOUCH b/track/pan2/touch b/track/@/pan2/touch
Not a big deal, eh? But then you probably also want the EQ parameters, right? That would require adding a few dozen more lines already. In the end, doubling the namespace only to enable a *single* feature seems like a pretty Stupid Idea® to me.

Also, the currently used syntax seems a bit messed up:

Code:
TRACK_AUTO_VOLUME_TOUCH b/track/volume/touch b/track/@/volume/touch
TRACK_AUTO_PAN_TOUCH b/track/pan/touch b/track/@/pan/touch
Why is "_AUTO" placed between "TRACK" and "_VOLUME" here? That seems to be inconsistent with targeted parameters named "TRACK_VOLUME" and "TRACK_PAN":

Code:
TRACK_VOLUME n/track/volume n/track/@/volume 
TRACK_PAN n/track/pan n/track/@/pan s/track/pan/str s/track/@/pan/str
Moreover, the "_AUTO" and "_TOUCH" parts are directly related as well (as touch refers to an automation mode), so why not use "_AUTO_TOUCH" as a suffix or "AUTO_TOUCH_" as a prefix?

In any case, it doesn't look good to me at all just yet. I'd suggest taking the feature back to the drawing board. Recording automation is way too important to mess up.
__________________
˙lɐd 'ʎɐʍ ƃuoɹʍ ǝɥʇ ǝɔıʌǝp ʇɐɥʇ ƃuıploɥ ǝɹ,noʎ
Banned is offline   Reply With Quote
Old 07-26-2012, 05:47 AM   #23
gofer
-blänk-
 
gofer's Avatar
 
Join Date: Jun 2008
Posts: 11,237
Default

Quote:
Originally Posted by KevinW View Post
I also see a "TrackFX_GetInstrument" function as being related to the named FX function. Is this new as well?
I'm hoping someone will post a simple example of these in use soon.
Didn't play with GetInstrument yet, but here is my first go at these, it inserts ReaComp on selected tracks or shows/hides it's UI if it already exists:
Code:
RPR_Undo_BeginBlock()
FX = "ReaComp"
TrackIdx = 0
TrackCount = RPR_CountSelectedTracks(0)
while TrackIdx < TrackCount:
	track = RPR_GetSelectedTrack(0, TrackIdx)
	fxIdx = RPR_TrackFX_GetByName (track, FX, 1)
	isOpen = RPR_TrackFX_GetOpen(track, fxIdx)
	if isOpen == 0:
		isOpen = 1
	else:
		isOpen = 0
	RPR_TrackFX_SetOpen(track, fxIdx, isOpen)
	TrackIdx +=1
RPR_Undo_EndBlock("Insert/show ReaComp",1)
the isOpen part mimics the (new with pre3) open/close gui behavior of the stock "Insert/show ReaEQ (track EQ)".

Do we have any handle on insert slot order yet? I think it would be interesting to move plugins upward/downward in the chain. For example let the above script insert always in the first slot (after an instrument plugin if exists).

Last edited by gofer; 07-27-2012 at 01:16 AM. Reason: Update script with consolidated undo
gofer is offline   Reply With Quote
Old 07-26-2012, 05:52 AM   #24
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 10,815
Default

Regarding the OSC touch messages, we did give this some thought. The simplest implementation adds a new message for enabling/disabling touch for each parameter, as we have done. A more complex implementation could use a sort of meta-message, such as

PARAMETER_TOUCH_ON s/touch/on
PARAMETER_TOUCH_OFF s/touch/off

and the device would send volume automation like this (using the default pattern mappings):

/touch/on /track/volume
/track/volume 0.50
/track/volume 0.51
/track/volume 0.52
/touch/off /track/volume

However, this could be impossible to implement in some host devices, whereas the simple version can always be implemented.
schwa is offline   Reply With Quote
Old 07-26-2012, 05:57 AM   #25
Viente
Human being with feelings
 
Viente's Avatar
 
Join Date: Feb 2012
Posts: 1,972
Default

Quote:
Originally Posted by gofer View Post
Didn't play with GetInstrument yet, but here is my first go at these, it inserts ReaComp on selected tracks or shows/hides it's UI if it already exists:
Code:
FX = "ReaComp"
TrackIdx = 0
TrackCount = RPR_CountSelectedTracks(0)
while TrackIdx < TrackCount:
	track = RPR_GetSelectedTrack(0, TrackIdx)
	fxIdx = RPR_TrackFX_GetByName (track, FX, 1)
	isOpen = RPR_TrackFX_GetOpen(track, fxIdx)
	if isOpen ==0:
		isOpen = 1
	else:
		isOpen = 0
	RPR_TrackFX_SetOpen(track, fxIdx, isOpen)
	TrackIdx +=1
the isOpen part mimics the (new with pre3) open/close gui behavior of the stock "Insert/show ReaEQ (track EQ)".

Do we have any handle on insert slot order yet? I think it would be interesting to move plugins upward/downward in the chain. For example let the above script insert always in the first slot (after an instrument plugin if exists).
Thank you gofer!
Viente is offline   Reply With Quote
Old 07-26-2012, 06:18 AM   #26
Viente
Human being with feelings
 
Viente's Avatar
 
Join Date: Feb 2012
Posts: 1,972
Default

I wonder if this possible to define slot for insert FX?
Viente is offline   Reply With Quote
Old 07-26-2012, 06:28 AM   #27
Banned
Human being with feelings
 
Banned's Avatar
 
Join Date: Mar 2008
Location: Unwired (probably in the proximity of Amsterdam)
Posts: 4,868
Default

Quote:
Originally Posted by schwa View Post
Regarding the OSC touch messages, we did give this some thought. The simplest implementation adds a new message for enabling/disabling touch for each parameter, as we have done. A more complex implementation could use a sort of meta-message, such as

PARAMETER_TOUCH_ON s/touch/on
PARAMETER_TOUCH_OFF s/touch/off

and the device would send volume automation like this (using the default pattern mappings):

/touch/on /track/volume
/track/volume 0.50
/track/volume 0.51
/track/volume 0.52
/touch/off /track/volume

However, this could be impossible to implement in some host devices, whereas the simple version can always be implemented.
Fair enough. But couldn't we have both? If our devices *can* support it, we should be able to use a smarter, perhaps more complex scheme. If they don't, bad luck, then we have to settle for using a dumb/simple 'lowest common denominator' scheme. But what are those cases anyway? With so few hardware devices shipping with hardcoded native OSC support, for most practical purposes it seems simply a matter of getting the appropriate software updated with some marginal improvements anyway.

For another possibility, have you perhaps also considered using something like keywords (e.g. "touch-begin" and "touch-end") in places where pre-existing OSC message patterns normally expects floats or ints, so type-checks can be used to filter/route messages as needed? E.g.

Code:
/track/volume touch-begin
/track/volume 0.50
/track/volume 0.51
/track/volume 0.52
/track/volume touch-end
__________________
˙lɐd 'ʎɐʍ ƃuoɹʍ ǝɥʇ ǝɔıʌǝp ʇɐɥʇ ƃuıploɥ ǝɹ,noʎ
Banned is offline   Reply With Quote
Old 07-26-2012, 06:29 AM   #28
Banned
Human being with feelings
 
Banned's Avatar
 
Join Date: Mar 2008
Location: Unwired (probably in the proximity of Amsterdam)
Posts: 4,868
Default

Quote:
Originally Posted by gofer View Post
[...] Do we have any handle on insert slot order yet? I think it would be interesting to move plugins upward/downward in the chain. For example let the above script insert always in the first slot (after an instrument plugin if exists).
(Via OSC, anyway: ) we can get the track / slot number and name of loaded plugins, but I don't think we can *set* them to move plugins around the chain.

I'd like to see something like a pair of actions to increment/decrement the selected effect(s) slot number(s), similar to dragging them manually using the GUI. That would already enable us to do some pretty powerful stuff using scripting, OSC, custom actions etc..
__________________
˙lɐd 'ʎɐʍ ƃuoɹʍ ǝɥʇ ǝɔıʌǝp ʇɐɥʇ ƃuıploɥ ǝɹ,noʎ
Banned is offline   Reply With Quote
Old 07-26-2012, 07:24 AM   #29
mako55a
Human being with feelings
 
Join Date: Jan 2011
Location: Polska, Komorów
Posts: 228
Default

I hope we can still improve behaviour of dockers and toolbars .
In current implementation it is not useable to have toolbar and other window (eg. fx browser) in the same docker. As you can see in gif the toolbar size changes when fx window is resized and that messes whole layout. I would suggest to keep toolbars at their minimal size that allows to see all buttons.
Second problem (also shown below) is that at minimal toolbar size some buttons are visible only partially. I think it should be avoided.
Thanks

mako55a is offline   Reply With Quote
Old 07-26-2012, 08:47 AM   #30
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 10,815
Default

Quote:
Originally Posted by Breeder View Post
[*]SetTempoTimeSigMarker won't let you set up time signature numerator and denumenator.
Fixing, thanks for the report.
schwa is offline   Reply With Quote
Old 07-26-2012, 09:35 AM   #31
G-Sun
Human being with feelings
 
G-Sun's Avatar
 
Join Date: May 2010
Location: Norway
Posts: 7,298
Default

Quote:
Originally Posted by airon View Post
[b]v4.26pre4 - July 25 2012
+ API: added functions to count, get, and set tempo/time signature markers
Thank you!
__________________
Reaper x64, win 8.1
My music on Bandcamp
G-Sun is offline   Reply With Quote
Old 07-26-2012, 09:35 AM   #32
brainwreck
Human being with feelings
 
Join Date: Jul 2006
Posts: 20,864
Default

Yay for the video button.
brainwreck is offline   Reply With Quote
Old 07-26-2012, 11:13 AM   #33
timlloyd
Human being with feelings
 
Join Date: Mar 2010
Posts: 4,713
Default

Quote:
Originally Posted by airon View Post
+ API: added function to get or insert FX by name
heh ... I made a few scripts to do this, right before seeing this thread this morning These will be useful, thanks!

- edit - although, where's the documentation, and are these available from ReaScript? Can't see anything new in the html gen list.

Last edited by timlloyd; 07-26-2012 at 11:20 AM.
timlloyd is offline   Reply With Quote
Old 07-26-2012, 02:32 PM   #34
KevinW
Human being with feelings
 
KevinW's Avatar
 
Join Date: Sep 2009
Location: Dayton, Ohio USA
Posts: 1,714
Default

Quote:
Originally Posted by gofer View Post
Didn't play with GetInstrument yet, but here is my first go at these, it inserts ReaComp on selected tracks or shows/hides it's UI if it already exists:
Code:
FX = "ReaComp"
TrackIdx = 0
TrackCount = RPR_CountSelectedTracks(0)
while TrackIdx < TrackCount:
	track = RPR_GetSelectedTrack(0, TrackIdx)
	fxIdx = RPR_TrackFX_GetByName (track, FX, 1)
	isOpen = RPR_TrackFX_GetOpen(track, fxIdx)
	if isOpen ==0:
		isOpen = 1
	else:
		isOpen = 0
	RPR_TrackFX_SetOpen(track, fxIdx, isOpen)
	TrackIdx +=1
the isOpen part mimics the (new with pre3) open/close gui behavior of the stock "Insert/show ReaEQ (track EQ)".

Do we have any handle on insert slot order yet? I think it would be interesting to move plugins upward/downward in the chain. For example let the above script insert always in the first slot (after an instrument plugin if exists).
Thanks, Gofer. I just learned the hard way - with great power comes great responsibility...

I inserted tracks from template (that contains 17 tracks). Ran the "insert Reacontrolmidi" action, and the next thing I know I have Reacontrolmidi on all 17 tracks!

If I had done that with some memory hog like Amplitube, I certainly would have crashed.

Yes, it's user error, but it's predictable user error - I inserted the template, and as far as I know, the inserted tracks always come in as Selected. I did not actively select any of those tracks.

So, I suggest that one or more of the following is done:

1. Make it so track templates don't get inserted with any of the tracks selected.
2. Warn the user if they are about to insert FX on <user_defined> number of tracks, and ask to proceed or not.
3. Make the new commands to add named FX, including ReaEQ and ReaControlMidi, have a consolidated UNDO. I had to UNDO 17 times to correct my little issue.
KevinW is offline   Reply With Quote
Old 07-26-2012, 02:35 PM   #35
Viente
Human being with feelings
 
Viente's Avatar
 
Join Date: Feb 2012
Posts: 1,972
Default

You can update the script to add the exceptions and undo but its a story for another thread...
Viente is offline   Reply With Quote
Old 07-26-2012, 05:46 PM   #36
airon
Human being with feelings
 
airon's Avatar
 
Join Date: Aug 2006
Location: Berlin
Posts: 10,670
Default

Are there any commands yet to activate and arm parameters of a particular plugin ? Or is that better left to a later, more complete update concerning the parameter activation/automation recording requests ?
__________________
Dialogue/FX Editor & Re-Recording Mixer
(Video)Using Latch Preview - Faderport16 CSI
"My ego comes pre-shrunk" - Randy Thom
airon is offline   Reply With Quote
Old 07-26-2012, 11:57 PM   #37
Shan
Human being with feelings
 
Shan's Avatar
 
Join Date: Mar 2007
Location: Vancouver
Posts: 2,277
Default

Quote:
Originally Posted by airon View Post
Are there any commands yet to activate and arm parameters of a particular plugin ? Or is that better left to a later, more complete update concerning the parameter activation/automation recording requests ?
+1...billion

Touching anything(with a modifier) will show the envelope of that specific parameter:

[img]http://img138.**************/img138/5904/automation.gif[/img]

Shane
__________________
"Music should be performed by the musician not by the engineer."

Michael Wagener 25th July 2005, 02:59 PM
Shan is offline   Reply With Quote
Old 07-27-2012, 01:12 AM   #38
gofer
-blänk-
 
gofer's Avatar
 
Join Date: Jun 2008
Posts: 11,237
Default

Quote:
Originally Posted by KevinW View Post
So, I suggest that one or more of the following is done:

1. Make it so track templates don't get inserted with any of the tracks selected.
2. Warn the user if they are about to insert FX on <user_defined> number of tracks, and ask to proceed or not.
3. Make the new commands to add named FX, including ReaEQ and ReaControlMidi, have a consolidated UNDO. I had to UNDO 17 times to correct my little issue.
- I actually like that templates are selected after insertion, often the first thing I want to do is move the bulk somewhere else in the tracklist.
- A user input thing sure is good for more demanding plugs, but I'd find it pretty annoying for small stuff like ReaControlMIDI, ReaEQ and ReaComp. It's easy to add to the script.
- With the consolidated undo I agree. I'll edit the code in the previous post (It's always the last thing I add to my script experiments - sometimes I forget ). The ReaControlMIDI and EQ actions should do that too, as you said.

Btw, you could have corrected your error with a simple doubleclick in the undo history window But still. Should be a single undo point.


Regarding undo, there is something fishy I found:
a) Both ReaControlMIDI and ReaEQ insert actions register correctly in the menu bar (as "Insert [plugin name]"), but as "FX Parameter Adjustment" in the undo history. Doesn't look quite right. When the plugs already exist, the readouts are consistent ("Open/close FX config" in both places).
b) Undoing/redoing via double click in the undo history window doesn't seem to update the undo point readout in the menu bar anymore. It works when undoing/redoing with shortcut keys. This seems to be the case with any undo step, not only with the discussed "show/insert plugin" actions.
gofer is offline   Reply With Quote
Old 07-27-2012, 01:43 AM   #39
Nandhu Kartha
Human being with feelings
 
Nandhu Kartha's Avatar
 
Join Date: Nov 2010
Location: Kochi,India
Posts: 311
Default

The video button is pretty useful. Thank you.

BTW more video love is requested.
http://forum.cockos.com/showthread.php?t=107312

__________________
-Nandhu Kartha
Lives only for music and love !!
Nandhu Kartha is offline   Reply With Quote
Old 07-27-2012, 06:54 AM   #40
airon
Human being with feelings
 
airon's Avatar
 
Join Date: Aug 2006
Location: Berlin
Posts: 10,670
Default

That will probably only work if the plugin itself implements it, which is another reason RTAS were used in Protools and not VST plugins.

What can be done is perhaps design another button control in to the plugin-framing window. Actually that's already there in the "Param" buttons context menu, where the last-touched parameter can have its envelope revealed.

That's a click on the parameter control, a click on the Param button, a click on the "Show in envelope lane", and when you're done it's either a click on the envelope menu button and then "Hide envelope", or an action, which I prefer, because it's faster.

In Protools I hit ALT+"Show volume automation" key twice. That shows volume envelopes on all tracks and then hides them to show the normal waveform view.

Reapers envelope exposition functionality unfortunately took the path of first implementing the terrible Vegas methods, then added envelopes on top of that, and now were left with something that requires lots of context menu clicks to get anywhere near what Protools does.

As everyone can see from the screen capture Shane posted, PT is all about one-click methods, the default being that ONE envelope shows up on the track itself. They added envelope lanes on top of THAT with v8 iirc. One instance in which it takes three clicks are to arm and activate all parameters of a plugin for automation use. Open plugin, CTRL+ALT+WIN+click on autoamtion button, close plugin. I'm sure Reaper can improve on that. Maybe in the project bay ?

In Reaper you have to "Move to media lane" the envelope for every single track(ain't possible for multiple or all tracks) and every single parameter, or the other way around. When you start out with everything on the media lane(preference setting) you start off with Reaper v1/Vegas vWhatever behaviour. Kick that crap out bro. Make the multiple envelopes on the track-method the special case, which it has always been.

Both these solutions take much more time and effort by a factor of maybe 4(moving one envelope lane to and from the media lane and exposing one parameter only) to perhaps 1000 (show the volume parameter on the media lane of 100 tracks), to much more possibly (show Band 1 Gain of an EQ if it's the same plugin in the same slot on the media lane so I don't double the visible tracks/lanes). That last one is as well, ONE CLICK in Protools.

This is just one of several challenges for our beloved devs, in which legacy behaviours can be upgraded to methods that save us the time they currently waste, because there are better ideas out there. Who cares if they're not ours, but we can make them ours as they do need to fit in to our Reaper universe. We shouldn't be afraid to try, but try we should, and out in the open please. Coming to a pre/alpha-near-you ?




Quote:
Originally Posted by Shan View Post
+1...billion

Touching anything(with a modifier) will show the envelope of that specific parameter:

[img]http://img138.**************/img138/5904/automation.gif[/img]

Shane
__________________
Dialogue/FX Editor & Re-Recording Mixer
(Video)Using Latch Preview - Faderport16 CSI
"My ego comes pre-shrunk" - Randy Thom
airon 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 12:18 AM.


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