TOPIC: Performance View for Reaper

Performance View for Reaper 5 months 2 weeks ago #18531

kierank wrote:

Thanks for the feedback. I appreciate it, and glad you're able to make use of the script.

I have fixed the preset name issue, and made progress on the changes to allow you to exclude certain plugins from showing on either the current preset, or globally for all presets.

I have also made changes to show the plugins AFTER S-Gear.

It might be a week until I have time to finish these. And I'm now starting to think about incorporating the plugins into the Snapshots feature (at the moment it's only storing the S-Gear settings in the Snapshots).
Those sound like great improvements, can't wait to see them.

Here is another thing I ran across today:

I loaded the VST3 version of S-Gear first to get the preset names into Reaper. Then I removed it and loaded the AU version of S-Gear so I can use the my Midi controller (it allows me to select a preset by the preset number using the PRESETS midi setting in S-Gear). However when I try to select a preset in Performance View. It briefly displays the name and then "snaps back" to the previous preset. Nothing changes in the S-Gear plug-in at all.

I made an animated Gif of this but I can't get it to upload on the forum for some reason.

Here is an MP4 video version I will leave up for a couple of days.

www.dropbox.com/s/w7x4r4sa849lr0i/PrefVi...etInAUSGear.mp4?dl=0
  • politicalEconomist
  • politicalEconomist's Avatar
  • Offline
  • Tone Star
  • Posts: 13
SIGN-IN TO REPLY

Performance View for Reaper 5 months 2 weeks ago #18532

The AU plug-in relies on the S-Gear Controller plugin to send midi program changes to S-Gear (the VST3 uses another method). So all I can think of is that S-Gear isn't receiving the midi program change. Check the Midi Output Channel you have set in the Controller plugin and the one set in S-Gear's Config settings (e.g they should match or alternatively S-Gear's can be set to 'omni'.

Maybe also try bypassing ReaControlMidi to ensure that isn't somehow causing the issue.
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
Last edit: 5 months 2 weeks ago by kierank.
SIGN-IN TO REPLY

Performance View for Reaper 5 months 2 weeks ago #18534

I tried all those things, but the AU S-Gear would not change presets using Performance Viewer.

I was actually able to get the VST3 to work using your JS: S-Gear Controller. I did have to modify the script slightly to account for the fact that the Program Change values my Midi foot controller sends were off by 1. So I added an "offset" like this:
slider11:midi_pc_message=0<0,127,1>Midi PC Message
     // midi_pc_message allows the plugin to display the MIDI PC value being sent. This is used in conjunction with prgchng_offset below to select the preset number.
slider12:prgchng_offset=0<-3,3,1>Offset PC MIDI Value:  
     // prgchng_offset is used with direct program change at the end of the script    
     // If your MIDI PC message is off by a constant number from the preset you can use this parameter to correct it. 
     // Example1: If your MIDI PC message is one integer too low (0 when you want preset 1) then set this to 1.
     // Example2: If your MIDI PC message is one integer too high (127 when you want preset 126) then set this to -1.
         // TODO: I should probably add a check before using this variable to make sure msg23+prgchng_offset is not outside (0,127)

and then:
       // direct program change
        (rx_msg == PROGRAM_CHANGE) ? 
        (
        midi_pc_message = msg23;
        pnum = (msg23+prgchng_offset & 127);
        prgchng = pnum;
        ); 

Feel free to use, modify or ignore this for your official version.

Thanks again.
  • politicalEconomist
  • politicalEconomist's Avatar
  • Offline
  • Tone Star
  • Posts: 13
Last edit: 5 months 2 weeks ago by politicalEconomist.
SIGN-IN TO REPLY

Performance View for Reaper 5 months 2 weeks ago #18536

Thanks for sharing your modified controller code. Does your midi controller send 1 to 128 vs 0 to 127?

For the AU plugin issue, it may be easier to troubleshoot to start a new blank project with just S-Gear and the 2 JS plugins.

Without even running the script, the 'S-Gear Controller' plugin should change the S-Gear presets if you use the 'Preset' slider. You should also see the midi receive light flashing at the top of S-Gear.

A few scenarios I noticed where I had issues changing presets:

- When the audio interface was disabled. I was testing things out in my script when I didn't have my 2i2 interface connected, and noticed this prevented the script from being able to change the presets.
- When the 'Midi Mapping Mode' in S-Gear's 'Config' settings is set to 'Bank'. It needs to be either 'None' or 'Preset'.
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
SIGN-IN TO REPLY

Performance View for Reaper 5 months 1 week ago #18540

This Controller is a very old ART X-15 Ultrafoot. It lets you select specific presets using 10 buttons and a Bank selector (Banks 0 to 19).
Example: To select what the Controller LED calls preset 15, you select Bank 1 and click Button 5.

The issue is that in the Program Change Midi numbers it sends 0 to 127. But the LED and the button numbers are one off from that Midi message number.

So without the offset, when I choose preset 1 by going to bank 0 and clicking button 1, the LED displays 1 but it sends a program change of 0. Without the offset I was getting #0 in S Gear.

Since it was off by 1 for all the presets I figured I could just edit the controller script with a +1 in the right spot. Then the scripting programmer in me (I use the language R almost everyday) wanted to see if I could generalize the code for other offsets. I included having the script report back the Program Control Midi Message and the Preset Number for testing purposes. But its nice to see exactly what the offset is doing.
kierank wrote:

Thanks for sharing your modified controller code. Does your midi controller send 1 to 128 vs 0 to 127?

For the AU plugin issue, it may be easier to troubleshoot to start a new blank project with just S-Gear and the 2 JS plugins.

Without even running the script, the 'S-Gear Controller' plugin should change the S-Gear presets if you use the 'Preset' slider. You should also see the midi receive light flashing at the top of S-Gear.

A few scenarios I noticed where I had issues changing presets:

- When the audio interface was disabled. I was testing things out in my script when I didn't have my 2i2 interface connected, and noticed this prevented the script from being able to change the presets.
- When the 'Midi Mapping Mode' in S-Gear's 'Config' settings is set to 'Bank'. It needs to be either 'None' or 'Preset'.
  • politicalEconomist
  • politicalEconomist's Avatar
  • Offline
  • Tone Star
  • Posts: 13
Last edit: 5 months 1 week ago by politicalEconomist.
SIGN-IN TO REPLY

Performance View for Reaper 5 months 1 week ago #18541

I have a new version to try. The main changes:
  • The FX plugins after S-Gear are now displayed.
  • The FX plugins can have a custom background and font colour, via the UI (using the system colour/swatch tool).
  • Individual FX plugins can be hidden via the UI e.g. if they are 'always on' or ones you never need to see/edit via the script. This can be achieved either from the menu icon shown on the individual plugin box, or via the 'FX' option in the top menubar.
  • When the top menubar is active, each FX plugin and S-Gear rack device box will display a menu icon in the corner. The menu provides options to (1) open the plugin window, (2) display the quick edit controls (same thing as when you right-click the plugin box), (3) set your custom colours for the plugin, and (4) globally hide the plugin. This can be seen the screenshot below.
  • Added an option under 'View' in the top menubar to reduce the height of the FX plugin and rack device boxes (for anyone using a lot of plugins and wanting to reduce the overall window size). The smaller size is used in the screenshot below.

NOTE: the custom colours and the hidden plugins are saved to Reaper's project file, so you must save the project in order to save your changes.

There are also a few fixes for: presets that were deleted in S-Gear were still displaying their old names in the script UI, and also the preset selection window now displays presets up to 127 (previously it only displayed up to 99).

Attachments:
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
Last edit: 4 months 3 weeks ago by kierank.
SIGN-IN TO REPLY

Performance View for Reaper 4 months 3 weeks ago #18582

New version: If using the VST3 S-Gear plugin then the tuner is displayed within the UI window.

The reason it's only available for the VST3 version is because this is the only plugin type that exposes the S-Gear tuner's parameters: note number and cents. It took a bit of trial and error to get the smooth movement that it has in S-Gear, but I'm pretty happy with the results.

The only other change I made was that I increased the size of the FX/rack parameter sliders (when you right click the FX/rack boxes) - so I could change them more easily on the iPad. I also added arrows to highlight if these parameter windows can be scrolled (e.g. if they have more parameters than what can fit in the window).

File Attachment:

File Name: S-GearViewer0.93.zip
File Size: 1,422 KB
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
SIGN-IN TO REPLY

Performance View for Reaper 3 months 3 weeks ago #18695

I'm trying a few things out with the layout, including being able to show the preset list in a sidebar. I also have it saving/recalling per-preset plugin settings - meaning each preset can have it's own pre/post fx plugins being displayed and with different settings. The final step would be to allow per-snapshot settings, but that would be a while off. Any that are set as a 'Global' plugin will have the label in the corner (e.g. in the ReaVerb and Delay plugins below).

I also lifted images from the Scuffham website for the amp names (e.g. the Stealer one below) - hope Mike doesn't mind :)

I won't share this updated script yet as a lot is still only partially implemented.
The following user(s) said Thank You: yurodivi
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
Last edit: 3 months 3 weeks ago by kierank.
SIGN-IN TO REPLY

Performance View for Reaper 3 months 2 weeks ago #18718

What is the difference (sonically) between switching snapshots and switching presets, in terms of latency?
If there is an advantage in using snapshots for no lag while switching, this would be a definite plus in my world!
  • asintoras
  • asintoras's Avatar
  • Offline
  • Tone Master
  • Posts: 193
My instrumental EP: doctor7.bandcamp.com/album/political-rollercoaster
My other EP with songs: doctor7.bandcamp.com/album/three-ways-of-telling-a-story
I am an artist endorsed by Kinman pickups.
SIGN-IN TO REPLY

Performance View for Reaper 3 months 2 weeks ago #18720

Presets changes will always have a tiny audible gap. Some vst host apps like Gig Performer try to get around this by loading multiple versions of the plugin.

The Snapshots feature is like what Gig Performer calls Variations. It's a way to store/recall parameter changes while remaining in the one preset. There is no audible gap as long as you're keeping the same amp/cab/racks and just changing parameters e.g. changing gain, amp drive, bypassing/enabling racks.
The following user(s) said Thank You: asintoras
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
SIGN-IN TO REPLY

Performance View for Reaper 3 months 2 weeks ago #18721

Sounds great! But if you switch from amp 1 to amp 2, is there any audible gap?
At the moment I just have a Tech21 MIDI Mouse, so might consider getting a larger MIDI footswitch to be able to switch snapshots, as the MIDI Mouse only goes up/down on presets...
  • asintoras
  • asintoras's Avatar
  • Offline
  • Tone Master
  • Posts: 193
My instrumental EP: doctor7.bandcamp.com/album/political-rollercoaster
My other EP with songs: doctor7.bandcamp.com/album/three-ways-of-telling-a-story
I am an artist endorsed by Kinman pickups.
SIGN-IN TO REPLY

Performance View for Reaper 3 months 2 weeks ago #18722

Yeah, there will still be a gap switching from amp a to amp b - that is inbuilt in S-Gear - I assume to avoid pops or other issues when switching amp types. If you are using amp a/b to simply change settings of the one amp type, then that's where you would use the snapshots instead (and no gaps).
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
SIGN-IN TO REPLY

Performance View for Reaper 3 months 1 week ago #18760

Just finishing up with a Setlist feature for the sidebar. You can create as many custom setlists as you like, and add any of your presets (in any order).

I've also done some work to ensure that if you're using a midi controller to move up/down presets, then this will move up/down the active setlist presets.
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
Last edit: 3 months 1 week ago by kierank.
SIGN-IN TO REPLY

Performance View for Reaper 2 months 2 weeks ago #18846

The next feature on my list is gapless preset switching. When thinking about how to do this in Reaper, the obvious choice is to have multiple S-Gear plugins on separate tracks and have the presets pre-loaded in each plugin. But ideally I wanted to do this on only 1 track, and only use two S-Gear instances.

Because the Reaper scripting provides such a large number of options, I tried to find the simplest solution. This awesome script I found on the Reaper forums provided the details I needed.

In the upper right-hand corner of every plugin window in Reaper, it has the number of audio channels being used e.g. "2 in 2 out". If you click this, it gives you a 'pin connector' window where you can change the audio routing and add more channels if required.


So this feature allows you to have two S-Gear plugins on the one track, but set them up to be in parallel (rather than the default where all plugins are in series), and the ability to enable/disable the input for each plugin.

Hopefully the diagram below makes it easier to understand what I plan on doing. It will likely be only possible if you use the VST3 version of the S-Gear plugin, as it allows me to change presets directly (rather than via midi), which I need to do in order to pre-load the next preset.

These feature will also only work if you are not randomly changing to different presets (as it needs to know your next preset in order to pre-load it). However because I am building a 'Setlist' feature you can create a setlist with any presets in any order.

I did a quick test script to simply switch between the two S-Gear plugins (with different presets in each, one of which had long delay tails) and it worked perfectly: instant switching with no gaps and the delays from preset 1 continued into preset 2.
The following user(s) said Thank You: yurodivi
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
Last edit: 2 months 2 weeks ago by kierank.
SIGN-IN TO REPLY

Performance View for Reaper 2 months 2 weeks ago #18852

This is great and shows what a powerful tool Reaper is. I wonder could you send a MIDI Program Change and have the Reaper Script receive translate to actions on your channel? To seamlessly load a new preset and switch?
The following user(s) said Thank You: kierank
  • mike
  • mike's Avatar
  • Offline
  • Administrator
  • Posts: 1759
SIGN-IN TO REPLY

Performance View for Reaper 2 months 2 weeks ago #18855

Thanks Mike. The running scripts can't directly read incoming midi messages, but the JS plugins (which I am using as a controller to my script) can read midi. I am currently using this plugin to inform my script of incoming program change or cc messages.
While these JS plugins can do a graphical UI, they can't read the S-Gear parameters like the ReaScripts can, so I'm stuck using both for my solution.
As a simple option, you can assign shortcuts to individual scripts, which could be keyboard shortcuts but also midi messages. I used this for the test script I mentioned previously, so I could switch between the two S-Gear instances with my foot controller.
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
SIGN-IN TO REPLY

Performance View for Reaper 1 month 2 weeks ago #19054

I am pretty happy with the seamless preset switching. I have attached the updated script - it would be great to get someone else to give it a test! I could only do this using the VST3 plugin, so it will be Mac only at this stage.

While testing this out I did go back to Gig Performer to see what they were doing for preset switching. Their approach was to use a crossfade - so when you switch presets it still allows input to the prior preset (faded out over a few seconds). I actually don't like this - because if you are going from an overdriven tone to a clean tone, my preference is for an immediate switch and not to still have signal going to the overdriven preset.

So I've stuck with the approach I outlined in my prior post - an immediate switch of the input signal to the new preset, while allowing spillover of reverb/delay tails from the prior preset. I'm also pre-loading the next preset to make the switch quicker. The pre-load of the next preset waits until it detects that all reverb/delay tails from the prior preset have completely finished.

You can use the new 'setlist' feature to set a custom ordering of presets if you don't want to switch presets in the default order. However you can still switch to any preset you like and it will still work with the reverb/delay spillover (you'd just need to have a small pause/rest in your playing for S-Gear to do the switch).

A subtle indicator of whether the next preset is pre-loaded and ready, is shown in the new sidebar - the slightly faded red vertical line on the edge of the preset name (below the currently selected one). However you could also see when the next preset is pre-loaded in S-Gear itself (as the script keeps both S-Gear windows open in order to work reliably).


The new download also includes updated versions of the 'S-Gear Controller' plugins I'm using on either side of S-Gear. So to get the seamless switching working your plugins should look like this:

The instructions pdf in the download provides some more details.
The following user(s) said Thank You: yurodivi
  • kierank
  • kierank's Avatar
  • Offline
  • Tone Master
  • Posts: 132
Last edit: 1 month 2 weeks ago by kierank.
SIGN-IN TO REPLY

Performance View for Reaper 2 weeks 2 days ago #19206

I've been busy with other things and have not checked this thread. I use your S-Gear Controller all the time and was happy to see the new update. I will take it for a spin and let you know if I see anything wonky.

Really cool work. I really appreciate you taking your time to do this. Would be happy to throw some cash your way as a thank you if you are considering allowing donations.
The following user(s) said Thank You: kierank
  • politicalEconomist
  • politicalEconomist's Avatar
  • Offline
  • Tone Star
  • Posts: 13
SIGN-IN TO REPLY
Time to create page: 1.186 seconds
Powered by Kunena Forum