Old 09-13-2016, 01:14 PM   #1
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 1,562
Default Lua: Stretch marker guard

Stretch marker guard is another useless killer feature for REAPER. LOL.

It simply allows you to protect area around stretch marker. Could be useful if you want to keep transients at drums even if your item overstretched or if stretch marker coefficient is already big. The idea taken from this FR.

Github. Available via ReaPack extension.



("Transient guard" sounds not exactly correct)
__________________
SoundCloud | MPL Scripts discussion | ReaPack | Donate

Last edited by mpl; 09-13-2016 at 01:20 PM.
mpl is offline   Reply With Quote
Old 09-13-2016, 01:22 PM   #2
vanhaze
Human being with feelings
 
vanhaze's Avatar
 
Join Date: Jul 2012
Location: Netherlands
Posts: 3,839
Default

mpl, Do you know this is really a revolutionary feature come true ?!

Jeeeeeezzz, i HAVE to try this NOW !!!

EDIT: I find "Transient Guard" a wonderful name, exactly hitting the nail.
vanhaze is offline   Reply With Quote
Old 09-13-2016, 02:47 PM   #3
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 4,307
Default

Very impressive, congrats !!
X-Raym is offline   Reply With Quote
Old 09-13-2016, 03:24 PM   #4
heda
Human being with feelings
 
heda's Avatar
 
Join Date: Jun 2012
Location: Spain
Posts: 4,450
Default

excellent stuff as usual mpl.

An idea to improve it, could be to store the data of the stretch markers as they were before. So the reset button could work after closing the script.
__________________
HeDaScripts for REAPER | VIP Donations
heda is offline   Reply With Quote
Old 09-13-2016, 07:13 PM   #5
James HE
Human being with feelings
 
James HE's Avatar
 
Join Date: Mar 2007
Location: I'm in a barn
Posts: 4,254
Default

This looks really sweet

any thought to making the surrounding stretch pairs snap to grid divisions instead of ms? i.e 1/128, 1/64, 1/32, 1/16... etc?

this might be a useful creative thing for some sources.
James HE is offline   Reply With Quote
Old 09-13-2016, 10:06 PM   #6
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 1,562
Default

heda, I thought about that. That is goes not so complex, but maybe "Delete all non-1.0x markers" internal action is a better/simplier solution?
__________________
SoundCloud | MPL Scripts discussion | ReaPack | Donate
mpl is offline   Reply With Quote
Old 09-14-2016, 06:10 AM   #7
musicbynumbers
Human being with feelings
 
musicbynumbers's Avatar
 
Join Date: Jun 2009
Location: brighton, uk
Posts: 12,412
Default

Awesome! Will try when I've got time but this could be very useful thanks!
__________________
subproject FRs click here
note: don't search for my pseudonym on the web. The "musicbynumbers" you find is not me or the name I use for my own music.
musicbynumbers is offline   Reply With Quote
Old 09-14-2016, 08:29 AM   #8
heda
Human being with feelings
 
heda's Avatar
 
Join Date: Jun 2012
Location: Spain
Posts: 4,450
Default

Quote:
Originally Posted by mpl View Post
heda, I thought about that. That is goes not so complex, but maybe "Delete all non-1.0x markers" internal action is a better/simplier solution?
yes that is even better I think.
__________________
HeDaScripts for REAPER | VIP Donations
heda is offline   Reply With Quote
Old 09-15-2016, 08:16 AM   #9
Jaybee
Human being with feelings
 
Join Date: Aug 2015
Posts: 32
Default

This looks amazing but I'm not sure I've grasped how to use it in a real world situation. I've recently been looking at quantizing audio so explored Stretch Markers but I'm getting artifacts (especially on bass) that aren't there via the old-school split/quantize methods of correcting timing.

Here's what's happening:

1. Recorded bass line
2. Use Dynamic Split to detect Transients and write Stretch Markers
3. Set Grid resolution
4. Snap Stretch Markers to Grid

Now the bass line is perfectly in time *but* I'm getting lots of clicking/artifacts which were not there before the Stretch Markers moved. I gather this is because the Transients have stretched?

...and so by searching I found this thread...

Could anyone kindly explain for me the workflow on how using MPL's tool can eliminate my artifacts by protecting my transients? I have no idea what values to use inside the tool? I've taken my quantized Stretch Markers, applied MPLs tool and added a marker left and right of the transient (say an arbitary 20ms each). This just makes the artifacting/clicks even worse.

If I apply the tool before the quantize then I can't snap to grid as I can't define the Stretch Markers to use for the snap (i.e. just the transient) or can I?

Any help gratefully received! I can see by the thread responses this tool is very much appreciated, I just can't figure out how to use it properly
Jaybee is offline   Reply With Quote
Old 09-15-2016, 08:04 PM   #10
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 1,562
Default

Quote:
Now the bass line is perfectly in time *but* I'm getting lots of clicking/artifacts which were not there before the Stretch Markers moved. I gather this is because the Transients have stretched?
No. You'll get artifacts always when you stretch bass with any algorithm in any situation. Use dynamic split to split bass, then quantize small pieces. You cant just stretch any tonal (and especially low-freq) audio without artifacts. Even if you stretch slap stuff you can get this script to work but only for a start of every piece, other body of every note will be dirty and glitchy as hell after even a small stretching.
__________________
SoundCloud | MPL Scripts discussion | ReaPack | Donate

Last edited by mpl; 09-16-2016 at 03:06 AM.
mpl is offline   Reply With Quote
Old 09-16-2016, 06:33 AM   #11
Jaybee
Human being with feelings
 
Join Date: Aug 2015
Posts: 32
Default

Quote:
Originally Posted by mpl View Post
No. You'll get artifacts always when you stretch bass with any algorithm in any situation. Use dynamic split to split bass, then quantize small pieces. You cant just stretch any tonal (and especially low-freq) audio without artifacts. Even if you stretch slap stuff you can get this script to work but only for a start of every piece, other body of every note will be dirty and glitchy as hell after even a small stretching.
Now I understand! Thank you for the explanation
Jaybee is offline   Reply With Quote
Old 09-16-2016, 06:40 AM   #12
heda
Human being with feelings
 
heda's Avatar
 
Join Date: Jun 2012
Location: Spain
Posts: 4,450
Default

I agree mpl, but also, to stretch tonal bass you can try to tweak the parameters of Elastique audio mode for that item. Preserve formats lowest pitches, and also activate "optimize for tonal option". Sometimes it works.
__________________
HeDaScripts for REAPER | VIP Donations
heda is offline   Reply With Quote
Old 09-16-2016, 07:31 AM   #13
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 1,562
Default

Year I guess this algos use zero-crossing detection to define optimal grain size. But results almost always was bad for me. Well, anyway it depending on how it sound in the mix If coefficient not so big, within final mix bad sounding stretch algos can be masked sometimes.
__________________
SoundCloud | MPL Scripts discussion | ReaPack | Donate
mpl is offline   Reply With Quote
Old 09-20-2016, 02:33 PM   #14
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 1,622
Default

Quote:
Originally Posted by mpl View Post
Stretch marker guard is another useless killer feature for REAPER. LOL.
Holy shit, man, this is amazing!!

Quote:
Originally Posted by mpl View Post
("Transient guard" sounds not exactly correct)
Nope, I think it's a perfect name, actually.
__________________
Dax Liniere
5-room studio complex in London nearly finished!(videos)
[i7-4790K, 12Gb RAM, Win8.1x64, NVidia 9600, UAD2-OCTO, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 09-20-2016, 02:36 PM   #15
daxliniere
Human being with feelings
 
daxliniere's Avatar
 
Join Date: Nov 2008
Location: London, UK
Posts: 1,622
Default

The Russian ReaScript contingent is blowing my mind, lately!
__________________
Dax Liniere
5-room studio complex in London nearly finished!(videos)
[i7-4790K, 12Gb RAM, Win8.1x64, NVidia 9600, UAD2-OCTO, FireFaceUFX, REAPER x64]
daxliniere is offline   Reply With Quote
Old 09-23-2016, 05:13 AM   #16
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 1,562
Default

Heda, added to ReaPack both internal action and external script for removing non-1x markers. Hope didn`t broke something.
__________________
SoundCloud | MPL Scripts discussion | ReaPack | Donate

Last edited by mpl; 09-23-2016 at 12:50 PM.
mpl 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 02:33 PM.


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