Varying pitch-shifting script
Hi everyone !
I have been searching/trying around with pitch-shifting vocal tracks in Reaper before down-mixing/post-processing (in the end I analyze the down-mix in mono 22.05k, it is for training machine learning algorithms but all that comes after the pitch-shifting is independent to it).
First I looked at the "batch file/item converter" module, I use "Elastique 3.14 Pro" with "Preserve Formants (Most Pitches)" in mono 44.1k from Reapitch VST in the FX chain. This gives satisfying results in the range +-6 semitones ; which corresponds to the setting "Shift (full range)".
Now what I need to do is to use the same batch processing but have pre-defined parameters for each track : time segments and corresponding values of shift.
For example, I have a list of 50 tracks ; in advance I create time segments to divide them in 6 approximately equal parts and I assign to each a random value of semitone shift between -6 and +6.
To process this specific pitch-shifting, the "batch file/item converter" module is too basic. Is it something that can be done with Reascript ?
I read about it and I am familiar with Python. I can provide to Reaper the track list, the corresponding time segments and shifts to be applied.
But I didn't find any indications on calling Elastique in Reascript ... anyone did it ?
If yes, I would be very grateful to see an example or some syntax about how to load track and apply pitch-shifting with pre-defined parameters.
If shifting time-segments independently is too complex, I can also already cut the tracks into separated sub-tracks (and concatenate later). Then it would be only applying Elastique to each full sub-track with a shift defined in a list ... Anyone can help me with it ?
Thanks in advance !
|