 |
|
|
11-14-2014, 04:19 PM
|
#1
|
Human being with feelings
Join Date: Jan 2011
Location: San Francisco
Posts: 449
|
Automatically create automation envelope when creating a send
Is there any way to have an automation envelope be created automatically when making a send? I drag the IO button to another track and the send is created, but then I have to click "trim" and create the envelope which seems like a needless secondary step.
Perhaps it's not how most people work but I do automation on every send I create so it's kind of annoying to have to do that second step, particularly when there are a ton of parameters in the trim dialog for whatever plugins happen to be on that track, a bit confusing with all that going on.
thanks
|
|
|
05-31-2015, 06:29 PM
|
#2
|
Human being with feelings
Join Date: Nov 2008
Location: London, UK
Posts: 2,411
|
Hey Scott,
Though this doesn't address your specific request, but it might make things a bit easier for you. I have 100,000 points of automation per song and came up with a whole lot of envelope related actions which were implemented in the SWS Extensions.
Something that could be useful to you is Show envelope for last adjusted send.
Unfortunately it has to be 'last adjusted', not 'last touched' the way it is for plugin parameters, because simply touching the send control doesn't trigger an event.
PM me if you'd like some scripts I've had written that improve efficiency when working with envelopes.
Cheers,
Dax.
__________________
Puzzle Factory Sound Studios, London [Website] [Instagram]
[AMD 5800X, 32Gb RAM, Win10x64, NVidia GTX1080ti, UAD2-OCTO, FireFaceUCX, REAPER x64]
[AMD 5600X, 16Gb RAM, Win10x64, NVidia GTX710, FireFaceUFX, REAPER x64]
|
|
|
06-01-2015, 01:28 PM
|
#3
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,811
|
daxliniere,
I did one:
PHP Code:
// get last send envelope
lasttouchedtrack = GetLastTouchedTrack();
numsends = GetTrackNumSends(lasttouchedtrack, 0);
lastsendidx = numsends - 1;
envelopeType = 0; // envelopeType determines which envelope is returned (0=volume, 1=pan, 2=mute)
envelope = extension_api("BR_GetMediaTrackSendInfo_Envelope", lasttouchedtrack, 0, lastsendidx, envelopeType);
// Perform make last send envelope visible
br_envelope = extension_api("BR_EnvAlloc", envelope, 0);
br_envelope != 0 ? (
active = 1;
visible = 1;
armed = 1;
inLane = 1;
laneHeight = 100;
defaultShape = 0; // default point shape: 0 -Linear,1-Square, 2-Slow start/end, 3-Fast start, 4-Fast end, 5-Bezier
extension_api("BR_EnvSetProperties", br_envelope, active, visible, armed, inLane, laneHeight, defaultShape, faderScaling);
extension_api("BR_EnvFree",br_envelope, 1);
);
It actually should work, but it crashes REAPER. I`ll try to rewrite it with LUA.
|
|
|
06-02-2015, 06:55 AM
|
#4
|
Human being with feelings
Join Date: Nov 2010
Posts: 2,433
|
It actually doesn't work cause even though send envelope pointer is valid, GetSetObjectState() (or any other ReaScript function that is used to get envelope chunk) still returns empty chunk (that is also the reason for the crash...I can fix the crash, but I can't fix GetSetObjectState() behaviour). This is to do with the fact that even though send is created and envelope has valid pointer, the envelope hasn't been initialized yet (from the user perspective this is a good thing, less memory used, less bytes to write to .rpp file etc...)
The only way to make this work would be to manipulate track chunk. This is exactly what I'm doing with SWS/BR actions that show send envelopes...it's one of the reasons I keep telling people that dealing with send envelopes is not as straightforward and easy - besides manipulating track chunks you also have to be aware that send envelopes are actually stored in receiving track's chunk. Not to mention various options for trimming envelopes when showing them etc...all of this has to be taken into account if proper behavior is desired. This is also the reason why nobody tried to fix SWS snapshots in regards to send envelopes. It's messy and nobody doesn't seem to care enough to spend a lot of time to fix it.
I spent a loooot of time on doing these actions due to the request and there's no way in hell I'm repeating that - thought it was easy and I ended up investing a hell lot of time for something I don't need.
You can try adjusting (adjust twice - once to mark as last adjusted, and then to return to original value) the send in question and use my SWS/BR actions to show that send envelope. I'm just not sure if adjusting the send with the API will make it mark as last adjusted - you will need to try it yourself.
Last edited by Breeder; 06-02-2015 at 09:55 AM.
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 10:54 AM.
|