Skip to content

Commit

Permalink
15.1 GUI panner bugfix, Mapper partial 15.1 EX support
Browse files Browse the repository at this point in the history
  • Loading branch information
junh1024 committed Apr 29, 2023
1 parent 0345cce commit 25e5a49
Show file tree
Hide file tree
Showing 9 changed files with 148 additions and 26 deletions.
19 changes: 11 additions & 8 deletions Effects/loop_slicer_multi.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
5 changes: 4 additions & 1 deletion Panners/1.0 to 15.1 Panner GUI (L).txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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


Expand Down
8 changes: 6 additions & 2 deletions Panners/2.0 to 15.1 Mapper (M).txt
Original file line number Diff line number Diff line change
@@ -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
Expand All @@ -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
Expand Down
26 changes: 26 additions & 0 deletions Panners/7.1 to 15.1 Height Panner v2 (M).txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
27 changes: 27 additions & 0 deletions Panners/7.1 to 15.1 Height Panner.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
31 changes: 20 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
---
Expand Down Expand Up @@ -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.
Expand All @@ -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
Expand Down Expand Up @@ -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)

Expand Down
6 changes: 3 additions & 3 deletions Scripts/ProjectSanitizer.py
Original file line number Diff line number Diff line change
Expand Up @@ -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")

Expand All @@ -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...")
# input("Press Enter to continue...")
2 changes: 1 addition & 1 deletion Specialist/FFT Multi Tool (L).txt
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
50 changes: 50 additions & 0 deletions convolver_presets/HSV_Testbench.conf
Original file line number Diff line number Diff line change
@@ -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

0 comments on commit 25e5a49

Please sign in to comment.