diff --git a/Effects/loop_slicer_multi.txt b/Effects/loop_slicer_multi.txt index 77dc7ab..b71f035 100644 --- a/Effects/loop_slicer_multi.txt +++ b/Effects/loop_slicer_multi.txt @@ -8,14 +8,17 @@ slider5:4<1,32,1> loop length (beats) slider6:0<0,1,0.01> position (beats) -// out_pin:out_1 -// out_pin:out_1 -// out_pin:out_2 -// out_pin:out_2 -// out_pin:out_3 -// out_pin:out_3 -// out_pin:out_4 -// out_pin:out_4 +in_pin:in_L +in_pin:in_R + +out_pin:out_1_L +out_pin:out_1_R +out_pin:out_2_L +out_pin:out_2_R +out_pin:out_3_L +out_pin:out_3_R +out_pin:out_4_L +out_pin:out_4_R @slider loop_length=slider5; diff --git a/Panners/1.0 to 15.1 Panner GUI (L).txt b/Panners/1.0 to 15.1 Panner GUI (L).txt index a1e3ca6..8844359 100644 --- a/Panners/1.0 to 15.1 Panner GUI (L).txt +++ b/Panners/1.0 to 15.1 Panner GUI (L).txt @@ -104,6 +104,9 @@ slider5%2==0?(main_gain=coeff_B):(main_gain=1;); slider5<2?(LFE_mode_gain=0.316):(LFE_mode_gain=1;); +//new + +calculate_10_to_71_coeffs (slider1); @sample in0=(spl0+spl1)*0.7071; //loudness compensation @@ -297,7 +300,7 @@ drawbox(gfx_w*2/3+height_toe_in/2,gfx_h/2); drawbox(mouse_x,mouse_y ); ): -( //no mouse activity, displ automation +( //no mouse activity, displ automation gfx_g = 0.8; //yellow due to set red previously diff --git a/Panners/2.0 to 15.1 Mapper (M).txt b/Panners/2.0 to 15.1 Mapper (M).txt index fae5329..e908aa9 100644 --- a/Panners/2.0 to 15.1 Mapper (M).txt +++ b/Panners/2.0 to 15.1 Mapper (M).txt @@ -1,7 +1,7 @@ -desc:mapper +desc:15.1 Surround Mapper -slider1:0<0,4,1{1+2 Front,3+4 C/LFE,5+6 Back,7+8 Side,9+10 Height Front,11+12 Bottom,13+14 Height Back,15+16 Height Side}>Output +slider1:0<0,4,1{1+2 Front,3+4 C/LFE,5+6 Back,7+8 Side,9+10 Height Front,11+12 Bottom,13+14 Height Back,15+16 Height Side,17+18 Front Wide (15.1 EX only),19+20 Front Center (15.1 EX only)}>Output slider2:100<0,100 ,1>Amount slider3:0<-3,3,0.1>Volume dB slider4:0<-100,100,1>Pan @@ -25,6 +25,10 @@ out_pin:HBL out_pin:HBR out_pin:HSL out_pin:HSR +out_pin:WL +out_pin:WR +out_pin:CL +out_pin:CR in_pin:L in_pin:R diff --git a/Panners/7.1 to 15.1 Height Panner v2 (M).txt b/Panners/7.1 to 15.1 Height Panner v2 (M).txt index 668bc04..1c4f6cb 100644 --- a/Panners/7.1 to 15.1 Height Panner v2 (M).txt +++ b/Panners/7.1 to 15.1 Height Panner v2 (M).txt @@ -3,6 +3,32 @@ desc:Makes 15.1 height by shifting the side 6 of 7.1 up or down wards. V2 includ slider1:0<-100,100,5>Height (+ve up, -ve down) slider2:0<0,100,5>Vertical Spread (+ve bigger) +in_pin:L +in_pin:R +in_pin:C +in_pin:LFE +in_pin:BL +in_pin:BR +in_pin:SL +in_pin:SR + +out_pin:L +out_pin:R +out_pin:C +out_pin:LFE +out_pin:BL +out_pin:BR +out_pin:SL +out_pin:SR +out_pin:HL +out_pin:HR +out_pin:BtL +out_pin:BtR +out_pin:HBL +out_pin:HBR +out_pin:HSL +out_pin:HSR + @init @slider diff --git a/Panners/7.1 to 15.1 Height Panner.txt b/Panners/7.1 to 15.1 Height Panner.txt index 26d7d87..46c032d 100644 --- a/Panners/7.1 to 15.1 Height Panner.txt +++ b/Panners/7.1 to 15.1 Height Panner.txt @@ -5,6 +5,33 @@ slider2:-6<-6,-3,3>Pan law (dB) import surroundlib1.txt + +in_pin:L +in_pin:R +in_pin:C +in_pin:LFE +in_pin:BL +in_pin:BR +in_pin:SL +in_pin:SR + +out_pin:L +out_pin:R +out_pin:C +out_pin:LFE +out_pin:BL +out_pin:BR +out_pin:SL +out_pin:SR +out_pin:HL +out_pin:HR +out_pin:BtL +out_pin:BtR +out_pin:HBL +out_pin:HBR +out_pin:HSL +out_pin:HSR + @init @slider diff --git a/README.md b/README.md index a9bf1f2..0dc1488 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ Surround is just a hobby for me since 2014. If you use them (especially commerci Disclaimer --- -NO warranty is provided, and these are provided as-is. Although I have been using these since 2014, I reserve the right to make changes, including backwards-incompatible changes, although I try not to as I also have projects to keep working. Tools may be added, changed, or deleted at ANY time. Although old versions of this repo are available in the worst case. Alpha/beta tools are especially prone to change tools in /Old are deprecated. +NO warranty is provided, and these are provided as-is. Although I have been using these since 2014, I reserve the right to make changes, including backwards-incompatible changes, although I try not to as I also have projects to keep working. Tools may be added, changed, or deleted at ANY time. Although old versions of this repo are available in the worst case. Alpha/beta tools are especially prone to change, tools in /Old are deprecated. Introduction to 15.1 --- @@ -190,9 +190,9 @@ Scripts for General Use Scripts for Remixing --- -- Set item [BPM](#bpm).py: This is intended for *mashups & mixes*. In the case of your item BPM differing from your project BPM you want to strech the item to fit your project. This script makes it quick, just input the BPM of selected item(s), and it will handle the maths. REAPER actually has no concept of item BPM so this is done via play rate & timebase. +- Set item [BPM](#bpm).py: This is intended for *mashups & mixes*. In the case of your item BPM differing from your project BPM you want to stretch the item to fit your project. This script makes it quick, just input the BPM of selected item(s), and it will handle the maths. REAPER actually has no concept of item BPM so this is done via play rate & timebase. - Set item BPM_sequential.py: Sets the BPM of multiple items sequentially, with individual user input -- Round item BPM.py: Rounds the BPM of a clip. After sevaral project BPM changes, the BPM/playrate can become approximate (like 127.999) due to the imprecision of floating point. This rounds them. NB: deliberate BPMs like 128.2 will also get rounded so be careful which clips to apply it. +- Round item BPM.py: Rounds the BPM of a clip. After several project BPM changes, the BPM/playrate can become approximate (like 127.999) due to the imprecision of floating point. This rounds them. NB: deliberate BPMs like 128.2 will also get rounded so be careful which clips to apply it. - Get item BPM.py: This is intended to be used in mixes. You can get the BPM of a single item, but this is intended to be used at the completion of a mix, as you can calculate the WEIGHTED average BPM of multiple items so that you can set a better project BPM. - Adjust Take Pitch.py: If you're playing around with item pitches in say, a mashup, you might find this useful. If you have items with different pitches, you can adjust them by the same offset. @@ -208,20 +208,29 @@ Notes: - You MUST fill in any gaps/silences yourself - All clips must be on a single track - Multiple different input files may work (as long as they're the same specification), but it's not tested -- Editing isn't perfectly accurate on lossy codecs. There is a *fudge_factor* which you can adjust to decrease the length of clips . +- Editing isn't perfectly accurate on lossy codecs. There is a *fudge_factor* which you can adjust to decrease the length of clips +- If FFMPEG produces a broken file, try downgrading your FFMPEG - I'm not responsible if commands get corrupted on your clipboard Instructions: -1. Open the script window, load the script -2. Right click and drag around to select the edited clips -3. Run the script -4. Copy the commands out of the message box -5. Run the commands for FFMPEG + +We are going to kill 2 birds with 1 stone, and install FFMPEG for [REAPER](https://www.reaper.fm/download.php) (so that you can open arbitrary video files in REAPER) and Windows (so that you can run FFMPEG commands in windows). I've not tested this exact version or process, as I've already got the equivalent set up via other means. + +1. Download [FFMPEG](https://github.com/GyanD/codexffmpeg/releases/download/4.4/ffmpeg-4.4-full_build-shared.zip) +2. Inside the zip, there is a bin folder with exes & DLLs. Extract these to your REAPER Plugins folder, which might be C:\Program Files\REAPER\Plugins or C:\Program Files\REAPER\Installdata\Plugins . Whichever exists, depending on how & where you installed REAPER +3. Add the REAPER Plugins folder to your [Windows User Path Environment Variable](https://windowsloop.com/install-ffmpeg-windows-10/) . Start from step 3.3 of the guide +4. Open REAPER , and edit your clips as necessary +5. Press shift-? to open the actions pallete +5. New action > Load Reascript , and choose the [script](https://raw.githubusercontent.com/junh1024/Reaper-Surround/master/Scripts/REAPER%20to%20FFMPEG%20edit.py) , which you will have saved on your PC. +6. Right click and drag around to select the edited clips +7. Choose the "REAPER to FFMPEG edit" script, and Run the script +8. Copy the commands out of the message box +9. Run the commands for FFMPEG in the windows command prompt Reascript Python Setup for Windows --- -To install Python for Windows, go to https://www.python.org/downloads/windows/ and download a 3.x version of Python. I suggest using a [version of Python](https://en.wikipedia.org/wiki/History_of_Python#Table_of_versions) that is around the time that your version of REAPER was released. REAPER 4.52 has been tested with python 3.1 & 3.5. If you're using REAPER 64bit you'll probably want a 64bit version of Python & vice versa. Afterwards, open the Reascript panel in REAPER preferences, and set the path & use to: +To install Python for Windows, go to https://www.python.org/downloads/windows/ and download a 3.x version of Python. I suggest using a [version of Python](https://en.wikipedia.org/wiki/History_of_Python#Table_of_versions) that is around the time that your version of REAPER was released, or 3.1-3.9. REAPER 4.52 has been tested with python 3.1 & 3.5. If you're using REAPER 64bit you'll probably want a 64bit version of Python & vice versa. Afterwards, open the Reascript panel in REAPER preferences, and set the path & use to: - python 3.1 x86 on Windows x64: C:\Windows\SysWOW64\ , python31.dll - python 3.5 x86 on Windows x64: C:\Program Files (x86)\Python35 (or wherever you installed it), python35.dll @@ -266,7 +275,7 @@ I have tried to set sensible defaults. V1 & V2 upmixers are based on matrixes & are rudimentary so you either have: - Wide back, no rear delay (downmix-compatible, but sounds bad cuz a wide back is distracting) -- Wide back, rear delay (NOT downmix-compatible, due to delay, stil sounds bad) +- Wide back, rear delay (NOT downmix-compatible, due to delay, still sounds bad) - Narrow back, no rear delay (VERY NOT downmix-compatible, due to polarity, still sounds bad) - Narrow back, rear delay (NOT downmix-compatible, due to delay, sounds acceptable) diff --git a/Scripts/ProjectSanitizer.py b/Scripts/ProjectSanitizer.py index 7bad16d..556ae4a 100644 --- a/Scripts/ProjectSanitizer.py +++ b/Scripts/ProjectSanitizer.py @@ -7,7 +7,7 @@ read_file = open(in_file).readlines() -nameInProjPat = re.compile(r'(.*)("C:\\Users\\.*\\)(.*".*)$') +nameInProjPat = re.compile(r'(.*")(.*\\)(.*\\.*".*)$') write_file = open(in_file+"_S.RPP", "w") @@ -17,10 +17,10 @@ m1 = nameInProjPat.search(line) # m2 = fileInProjPat.search(line) if m1: - line=m1.group(1)+'"' +m1.group(3)+"\r\n" + line=m1.group(1) +m1.group(3)+"\r\n" write_file.write(line) # print("working") # write_file.close -input("Press Enter to continue...") \ No newline at end of file +# input("Press Enter to continue...") \ No newline at end of file diff --git a/Specialist/FFT Multi Tool (L).txt b/Specialist/FFT Multi Tool (L).txt index 77930e7..fcb15be 100644 --- a/Specialist/FFT Multi Tool (L).txt +++ b/Specialist/FFT Multi Tool (L).txt @@ -5,7 +5,7 @@ desc: FFT Multi Tool. Read docs. in ALPHA slider1:3<0,9,1{Max,Min (Denoise),Align (FPA) A,Subtract AR,Noise Control/GF3 ARF,Transient control,Sustain control,Min2 A (deprecated)}>Mode slider2:100<0,200,1>Amount (%) slider3:100<0,200,2>Frequency Selection -slider4:75<0,100,1>Cutoff (%) +slider4:80<0,100,1>Cutoff (%) slider5:50<0,100,2>Time Response slider6:40<0,50,5>FFT Overlap (%) slider7:12<10,14,1>FFT size (pow2) diff --git a/convolver_presets/HSV_Testbench.conf b/convolver_presets/HSV_Testbench.conf new file mode 100644 index 0000000..40ef697 --- /dev/null +++ b/convolver_presets/HSV_Testbench.conf @@ -0,0 +1,50 @@ +# jconvolver configuration +# Here's the channel order used by hesuvi wavs +# ```1 FL-left +# 2 FL-right +# 3 SL-left +# 4 SL-right +# 5 BL-left +# 6 BL-right +# 7 FC-left + +# 8 FR-right +# 9 FR-left +# 10 SR-right +# 11 SR-left +# 12 BR-right +# 13 BR-left +# 14 FC-right``` + +# ------------------------ +# in out partition maxsize density +# -------------------------------------------------------- +/convolver/new 8 8 512 4096 1.0 +# +# +# num port name connect to +# ----------------------------------------------- +# /input/name 8 Input +# +# /output/name 1 Out.W +# /output/name 2 Out.X +# /output/name 3 Out.Y +# /output/name 4 Out.Z +# +# in out gain delay offset length chan file +# --------------------------------------------------------------------- +# +/impulse/read 1 1 1 0 0 4096 1 Test.wav +/impulse/read 1 2 1 0 0 4096 2 Test.wav +/impulse/read 7 1 1 0 0 4096 3 Test.wav +/impulse/read 7 2 1 0 0 4096 4 Test.wav +/impulse/read 5 1 1 0 0 4096 5 Test.wav +/impulse/read 5 2 1 0 0 4096 6 Test.wav +/impulse/read 3 1 1 0 0 4096 7 Test.wav +/impulse/read 2 2 1 0 0 4096 8 Test.wav +/impulse/read 2 1 1 0 0 4096 9 Test.wav +/impulse/read 8 2 1 0 0 4096 10 Test.wav +/impulse/read 8 1 1 0 0 4096 11 Test.wav +/impulse/read 6 2 1 0 0 4096 12 Test.wav +/impulse/read 6 1 1 0 0 4096 13 Test.wav +/impulse/read 3 2 1 0 0 4096 14 Test.wav