Go Back   Cockos Incorporated Forums > REAPER Forums > MIDI Hardware, Control Surfaces, and OSC

Reply
 
Thread Tools Display Modes
Old 11-24-2021, 10:31 AM   #15321
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by Funkybot View Post
Just an FYI - the mcu.mst/.zon still call the ChannelLeft and ChannelRight SubZone1/SubZone2. It looks like the WIP versions didn't get added.
Are you sure ?

Just checked here and they seem OK.

Maybe there is more than one location that needs changing.

What line numbers ?
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 11-24-2021, 10:32 AM   #15322
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Uploaded M1 Mac build to the stash -- thanks to @jmu0 for the build.

reaper_csurf_integratorM1.dylib.zip
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 11-24-2021, 10:48 AM   #15323
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

Quote:
Originally Posted by Geoff Waddington View Post
Are you sure ?

Just checked here and they seem OK.

Maybe there is more than one location that needs changing.

What line numbers ?
This was literally my first time downloading CSI on my Mac so it's definitely in the latest set of files. Look at the mcu.mst lines 47-53:

Code:
Widget SubZone1
	Press 90 30 7f 90 30 00
WidgetEnd

Widget SubZone2
	Press 90 31 7f 90 31 00
WidgetEnd
Those should be ChannelLeft and ChannelRight.

I think what happened was that MixMonkey implemented a workaround for his SubZones crashes on the Mac. But I think since most users won't be utilizing SubZones on Mac, and the .mst is kind of the holy grail for the MCU setup, it makes sense to revert back to the pre-subzone-crash workaround version.
Funkybot is offline   Reply With Quote
Old 11-24-2021, 10:57 AM   #15324
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 4,869
Default

Quote:
Originally Posted by Funkybot View Post
This was literally my first time downloading CSI on my Mac so it's definitely in the latest set of files. Look at the mcu.mst lines 47-53:

Code:
Widget SubZone1
	Press 90 30 7f 90 30 00
WidgetEnd

Widget SubZone2
	Press 90 31 7f 90 31 00
WidgetEnd
Those should be ChannelLeft and ChannelRight.

I think what happened was that MixMonkey implemented a workaround for his SubZones crashes on the Mac. But I think since most users won't be utilizing SubZones on Mac, and the .mst is kind of the holy grail for the MCU setup, it makes sense to revert back to the pre-subzone-crash workaround version.
Yep, that was me Best to get rid and go back to ChannelLeft and ChannelRight. It was only a partial solution to the SubZone crash issue on Mac anyway. I think you could get to three SubZones but after that the crash returned. I just bailed and went to Windows

It might be an idea to remove the workaround so that the Win and and Mac code is the same again. Perhaps a better solution will present itself in the future.
MixMonkey is offline   Reply With Quote
Old 11-24-2021, 11:14 AM   #15325
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by Funkybot View Post
This was literally my first time downloading CSI on my Mac so it's definitely in the latest set of files. Look at the mcu.mst lines 47-53:

Code:
Widget SubZone1
	Press 90 30 7f 90 30 00
WidgetEnd

Widget SubZone2
	Press 90 31 7f 90 31 00
WidgetEnd
Those should be ChannelLeft and ChannelRight.

I think what happened was that MixMonkey implemented a workaround for his SubZones crashes on the Mac. But I think since most users won't be utilizing SubZones on Mac, and the .mst is kind of the holy grail for the MCU setup, it makes sense to revert back to the pre-subzone-crash workaround version.
Don't know how I screwed that up, but it should be Ok now.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 11-24-2021, 11:16 AM   #15326
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by MixMonkey View Post
Yep, that was me Best to get rid and go back to ChannelLeft and ChannelRight. It was only a partial solution to the SubZone crash issue on Mac anyway. I think you could get to three SubZones but after that the crash returned. I just bailed and went to Windows

It might be an idea to remove the workaround so that the Win and and Mac code is the same again. Perhaps a better solution will present itself in the future.
Yeah, I have been thinking that too.

I have a suspicion it's the compiler but my late 2012 Mini can't be updated anymore, so I can't run the latest version of Xcode to see if it's fixed.

I was hoping the October announcement would include M1X minis, but alas, I wait...
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 11-24-2021, 11:28 AM   #15327
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 4,869
Default

Quote:
Originally Posted by Geoff Waddington View Post
Yeah, I have been thinking that too.

I have a suspicion it's the compiler but my late 2012 Mini can't be updated anymore, so I can't run the latest version of Xcode to see if it's fixed.
I wonder if the bug exists in that M1 build @jmu0 made? If it doesn't, perhaps he could build an X86 version using the same version of XCode?
Quote:
I was hoping the October announcement would include M1X minis, but alas, I wait...
Me too On the bright side, it'll give all the other software companies a chance to catch up.
MixMonkey is offline   Reply With Quote
Old 11-24-2021, 11:35 AM   #15328
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by MixMonkey View Post
I wonder if the bug exists in that M1 build @jmu0 made? If it doesn't, perhaps he could build an X86 version using the same version of XCode?
Great idea !

@Funkybot, can you check and see if that bug exists in the M1 build ?
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 11-24-2021, 01:16 PM   #15329
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

Quote:
Originally Posted by Geoff Waddington View Post
Great idea !

@Funkybot, can you check and see if that bug exists in the M1 build ?
Unfortunately, it crashed when going to the second SubZone. Was using Limiter6 VST from TDR.

Code:
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               REAPER [45090]
Path:                  /Applications/REAPER-ARM.app/Contents/MacOS/REAPER
Identifier:            com.cockos.reaper
Version:               6.42.21 b4a2b73 (6.42.21 b4a2b73)
Code Type:             ARM-64 (Native)
Parent Process:        launchd [1]
User ID:               501

Date/Time:             2021-11-24 15:12:20.0753 -0500
OS Version:            macOS 12.0.1 (21A559)
Report Version:        12
Anonymous UUID:        AE5126C0-B8E3-7C22-1056-54ED0F5FB740

Sleep/Wake UUID:       89B5447F-7651-48C3-933E-BA5599BD3743

Time Awake Since Boot: 750000 seconds
Time Since Wake:       12245 seconds

System Integrity Protection: enabled

Crashed Thread:        0  reaper  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0xfc00000000004081 -> 0x0000000000004081 (possible pointer authentication failure)
Exception Codes:       0x0000000000000001, 0xfc00000000004081
Exception Note:        EXC_CORPSE_NOTIFY

Termination Reason:    Namespace SIGNAL, Code 11 Segmentation fault: 11
Terminating Process:   exc handler [45090]
Funkybot is offline   Reply With Quote
Old 11-24-2021, 01:21 PM   #15330
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by Funkybot View Post
Unfortunately, it crashed when going to the second SubZone. Was using Limiter6 VST from TDR.
Ok, at least we now know there isn't a super easy fix.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 11-25-2021, 03:03 AM   #15331
ivanmihaljevic
Human being with feelings
 
Join Date: May 2021
Posts: 102
Default

Quote:
Originally Posted by Geoff Waddington View Post
New build is up.

CSI v1_1.zip

This just synchs the 1.1 version to the current Exp state.
I wasn't following the last couple Exp builds. Anything I should be aware of before updating from the previous 1.1 version?
ivanmihaljevic is offline   Reply With Quote
Old 11-25-2021, 04:46 AM   #15332
mutex
Human being with feelings
 
Join Date: Jul 2014
Posts: 43
Default

Same questions here

- Is 1.1 backwards compatible?
- Is there a change log?

Thanks,
mutex is offline   Reply With Quote
Old 11-25-2021, 06:05 AM   #15333
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by mutex View Post
Same questions here

- Is 1.1 backwards compatible?
- Is there a change log?

Thanks,
CSI Exp is the same code base as 1.1, so yes, they are compatible.

However 1.0 and 1.1 are not compatible if that's what you are asking.

Jump on github using the wiki link in my sig and go to the source code pages, the commit comments are the closest we have to a change log -- there is only me, documentation like that would kill forward progress

From time to time, as we move from experimental (Exp) to stable (ok somewhat stable), we will update 1.1 -- this one was primarily for VCAs.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 11-29-2021, 05:09 AM   #15334
galileon
Human being with feelings
 
Join Date: Mar 2018
Posts: 13
Default CSI Fader Touch and .. meter

Hi,

I am trying to find why CSI is passing fader touch to Reaper, i have commented the
line: //FaderTouch|?

Regards
Rafal

Last edited by galileon; 11-29-2021 at 05:17 AM.
galileon is offline   Reply With Quote
Old 11-29-2021, 05:37 AM   #15335
cjewellstudios
Human being with feelings
 
Join Date: Sep 2017
Posts: 998
Default

Quote:
Originally Posted by galileon View Post
Hi,

I am trying to find why CSI is passing fader touch to Reaper, i have commented the
line: //FaderTouch|?

Regards
Rafal
Still don't view myself as a CSI ninja, however, I don't think commenting that line out in the zone would stop the touch being sent. That would only stop whatever action is tied to that widget.

In the surface file (.mst) there will be a touch message defined on all the faders. You could get rid of (or comment out I guess) the lines there if you don't want touch messages.
cjewellstudios is offline   Reply With Quote
Old 11-29-2021, 07:11 AM   #15336
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

Quote:
Originally Posted by galileon View Post
Hi,

I am trying to find why CSI is passing fader touch to Reaper, i have commented the
line: //FaderTouch|?

Regards
Rafal
As indicated by cjewellstudios, what CSI receives from your surface is controlled in the .mst file. What CSI does with those messages is dictated by the .zon file.

Commenting out the FaderTouch| messages in the .zon file will prevent the FaderTouch messages from doing anything. Which may be fine. Example: who cares if they are being passed to CSI if nothing is happening? That may be the best solution if you're trying to stop a particularly surface behavior linked to touch messages.

If not, then my next question would be: why do you want to stop the messages entirely? You can comment them out in the .mst file but that's just going to tie your hands in the future if you do ever want to use FaderTouch messages. It's better to setup the .mst files for all of your surfaces capabilities, then have the .zon files dictate what happens. That will give you the most flexibility.
Funkybot is offline   Reply With Quote
Old 12-04-2021, 06:02 AM   #15337
mutex
Human being with feelings
 
Join Date: Jul 2014
Posts: 43
Default

So, I had to recompile CSI with a small change.

I have this small setup for my Platnform X+ to control the parameters in ReaControlMIDI:

Zone "Home"
OnInitialization MapSelectedTrackFXToWidgets
OnTrackSelection MapSelectedTrackFXToWidgets
ZoneEnd

Zone "VST: ReaControlMIDI (Cockos)"
SelectedTrackNavigator
Fader1 FXParam 3
Fader2 FXParam 4
Fader3 FXParam 5
Fader4 FXParam 6
Fader5 FXParam 7
ZoneEnd

The problem is that when I change the track and CSI performs a "MapSelectedTrackFXToWidgets", it implicitly performs an "UnmapSelectedTrackSendsFromWidgets" first, which in turn clears all currently active surface widgets, setting them all to 0.

This causes my faders (which are following the ReaControlMIDI parameters) to jump down (trying to reach 0) and up again (to it's new value) when I change to another track that also has ReaControlMIDI in it. Even if the parameter values of both plugins are the same, my faders would jump because of that clearing performed by CSI.

To solve this issue I just commented out that section (attachment).

I haven't studied to code too much, but as far as I could see, CSI sends value changes instantly to the control surface. There is no mechanism to add() those value changes to a cache first and flush() or commit() them later.

With a cache mechanism like that, a widget that gets Clear()'ed at one point in the code and assigned a new value immediately a few lines below, would only send the newly assigned value to the control surface once the changes are commit()'ed.

EDIT: The cache idea isn't necessary after all. The widget->Clear() in the second picture already clears all widgets that aren't being used, so the commented section in the first picture can stay commented as far as I can see as it only creates unnecessary 0 messages for widgets that might still be in use.

Last edited by mutex; 12-04-2021 at 08:51 PM.
mutex is offline   Reply With Quote
Old 12-05-2021, 11:11 PM   #15338
mutex
Human being with feelings
 
Join Date: Jul 2014
Posts: 43
Default

With the first issue solved (for my use case at least, I don't know if these changes break something on other setup's) I found another issue.

When changing the track from a track that has ReaControlMIDI in it, to one that has another plugin in it (let's say ReaDelay), CSI would send the FXParams from the new plugin to the widgets (Fader1 to 5), even though I don't even have a Zone for ReaDelay in my setup.

The issue is shown in the attached picture. CSI would do a RequestUpdate() on the currently active Zones (ReaControlMIDI) before executing the queued action for OnTrackSelection inside the HomeZone.

This causes the currently active Zone (ReaControlMIDI) to update the widgets based on a track that has already switched beneath them (a track now with ReaDelay on it). There is no check in the widget update if the track has changed and if the current mapping is still valid. It simply pulls the values from ReaDelay as if it were ReaControlMIDI.

To fix that, I switched the execution (see attachment) to update the HomeZone first, so that OnTrackSelection gets executed before the ReaControlMIDI Zone tries to pull values from this new track that has a ReaDelay on it.

Here a Before and After of the MIDI messages CSI was sending when walking the tracks from bottom to top.
https://ibb.co/4Kdy1Yt
https://ibb.co/FWckdQn

EDIT: Although the MIDI messages are now correct when switching tracks, the faders aren't working anymore LOL. Maybe I try adding a check to see if the track has changed from beneath a widget and if the FX is still valid for the current FXZone instead of changing the whole execution order.

EDIT2: So I fixed that now. Inside MapSelectedTrackFXSlotToWidgets() I store the currently selected track inside the zone, flagging it as a track dependent zone. Then, every time RequestUpdateWidget() is called I do a check if the currently selected track in Reaper is still the one the zone was mapped to.
Attached Images
File Type: png reaper_csurf_integrator - Microsoft Visual Studio 3.png (15.7 KB, 69 views)

Last edited by mutex; 12-06-2021 at 12:46 AM.
mutex is offline   Reply With Quote
Old 12-09-2021, 08:21 AM   #15339
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Ok, time for that semi-annual donation drive

For those who have contributed, and do contribute, a heartfelt thanks from the CSI community !

For those who find CSI useful, please consider donating, no amount is too small, we graciously accept all donations.

Thanks to the whole CSI community and of course, Reaper, which makes all of this possible !
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-12-2021, 09:37 PM   #15340
cjewellstudios
Human being with feelings
 
Join Date: Sep 2017
Posts: 998
Default

I hope people are donating if they are able to do so

I kept true to my word last year and sent a small donation every month. I encourage others to do the same. This is something very special we have here.

............

CSI question:

Can we currently toggle all track pins off at once? Is there some zone trickery to be had here or would it be a new action?
cjewellstudios is offline   Reply With Quote
Old 12-12-2021, 10:16 PM   #15341
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

Quote:
Originally Posted by cjewellstudios View Post
I hope people are donating if they are able to do so

I kept true to my word last year and sent a small donation every month. I encourage others to do the same. This is something very special we have here.

............

CSI question:

Can we currently toggle all track pins off at once? Is there some zone trickery to be had here or would it be a new action?
+1 to donating if possible.

Regarding toggle all pins off, that probably needs a new action.
Funkybot is offline   Reply With Quote
Old 12-18-2021, 04:31 AM   #15342
inertia
Human being with feelings
 
Join Date: Oct 2013
Posts: 800
Default

removed

Last edited by inertia; 12-18-2021 at 07:42 AM. Reason: removed
inertia is offline   Reply With Quote
Old 12-18-2021, 05:55 AM   #15343
JLP
Human being with feelings
 
Join Date: Jul 2019
Posts: 43
Default

Hello Geoff and thank you for this amazing extension. I'm recently moving to linux and was wondering if it was reasonable to hope for a linux build of CSI ?

Hope it has not been already asked in this thread.
Any way, thanks again !
JLP is offline   Reply With Quote
Old 12-18-2021, 06:32 AM   #15344
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by JLP View Post
Hello Geoff and thank you for this amazing extension. I'm recently moving to linux and was wondering if it was reasonable to hope for a linux build of CSI ?

Hope it has not been already asked in this thread.
Any way, thanks again !
It is open source, so anyone with a Reaper/Linux environment could do a build.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 04:44 AM   #15345
Apokalipsis
Human being with feelings
 
Join Date: Jan 2012
Location: Ukraine->Germany
Posts: 60
Default

Hello Geoff,
do you see my old post?

https://forum.cockos.com/showpost.ph...ostcount=15238

I can not find your answer.
__________________
Alex Longard
Apokalipsis is offline   Reply With Quote
Old 12-19-2021, 07:30 AM   #15346
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by Apokalipsis View Post
Hello Geoff,
do you see my old post?

https://forum.cockos.com/showpost.ph...ostcount=15238

I can not find your answer.
Yes, I'm still thinking about that one.

It has not been requested before, I'm just thinking through the ramifications as far as Zone design, etc.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 07:30 AM   #15347
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Thinking of a learn function.

The last one we tried was a disaster

I think we overcooked it with options.

My new thinking is that there are basically 2 use cases.


1) Those who like to edit and tinker to get the absolute most out of your system - you know who you are

2) Those who just want a simple way to do simple maps.

Yeah, yeah, I know , nuance, continuum, etc., but that's the basic two

We have the first one covered.

Rough proposal for the second use case:

It's simply another Reaper Action -- ToggleLearn.

When engaged, it functions somewhat like a FocusedFXParam.

Touch a param, move a Widget on your surface.

Repeat for each param of interest.

We will add another Reaper Action -- SaveLearnedParams.

When you run this you get a choice of Navigators (dropdown with default ?), and then it uses the plugin name for the filename and saves.

None of this is set in stone, just opening the discussion...
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 07:50 AM   #15348
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 4,869
Default

Quote:
Originally Posted by Geoff Waddington View Post
Thinking of a learn function.

The last one we tried was a disaster

I think we overcooked it with options.

My new thinking is that there are basically 2 use cases.


1) Those who like to edit and tinker to get the absolute most out of your system - you know who you are

2) Those who just want a simple way to do simple maps.

Yeah, yeah, I know , nuance, continuum, etc., but that's the basic two

We have the first one covered.

Rough proposal for the second use case:

It's simply another Reaper Action -- ToggleLearn.

When engaged, it functions somewhat like a FocusedFXParam.

Touch a param, move a Widget on your surface.

Repeat for each param of interest.

We will add another Reaper Action -- SaveLearnedParams.

When you run this you get a choice of Navigators (dropdown with default ?), and then it uses the plugin name for the filename and saves.

None of this is set in stone, just opening the discussion...
That sounds like a good way to proceed

Would there be a way to add parameters to an already existing map (or remove them) without resorting to manually editing the fx.zon itself? It could get a bit labourious having to always rebuild the map from scratch, or is this the price of admission for the simplicity ?
MixMonkey is offline   Reply With Quote
Old 12-19-2021, 08:23 AM   #15349
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

Geoff, I think it's a good idea to get some kind of learn functionality in there for basics. Some questions:

1. Would this be limited to creating new FX maps only? If yes, I think it would just need to be clear so people don't start switching FX mid-way through. If no, how would remapping surface parameters work? I press a button and it finds the "buttons" zone and changes it?

2. Would it be possible to have a ReaConsole window appear and show the WIP .zon file?

3. How would learning FXParams with toggles and stepped parameters work? Would it be smart enough to somehow recognize "this is a toggle" and "this parameter is stepped" or would users have to go in and edit the .zon file after the fact?
Funkybot is offline   Reply With Quote
Old 12-19-2021, 10:23 AM   #15350
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by MixMonkey View Post
That sounds like a good way to proceed

Would there be a way to add parameters to an already existing map (or remove them) without resorting to manually editing the fx.zon itself? It could get a bit labourious having to always rebuild the map from scratch, or is this the price of admission for the simplicity ?

Quote:
Originally Posted by Funkybot View Post
Geoff, I think it's a good idea to get some kind of learn functionality in there for basics. Some questions:

1. Would this be limited to creating new FX maps only? If yes, I think it would just need to be clear so people don't start switching FX mid-way through. If no, how would remapping surface parameters work? I press a button and it finds the "buttons" zone and changes it?

2. Would it be possible to have a ReaConsole window appear and show the WIP .zon file?

3. How would learning FXParams with toggles and stepped parameters work? Would it be smart enough to somehow recognize "this is a toggle" and "this parameter is stepped" or would users have to go in and edit the .zon file after the fact?

I was toying with the idea of adding some additional reaper Actions like ToggleLearnShift, ToggleLearnControl, etc. for defining modified Actions.

Then I read these posts.

I've known you guys a while, so in the true spirit of good fellowship , I would say anything we come up with... -- we shouldn't build

I see folks who want a really quick and easy way to get things going and this would provide it.

I'm even thinking now of dropping the Navigator choice and making it hardwired to the FocusedFX.

So, you get a surface and want to hook it up.

You hear about CSI and find that there is a set of files for your surface.

Now you have to map your plugins.

That's what this is for.

Now you are running and making music !!

After a month or so you find there is just that one little thing you would like to change.

That's when you can start getting deeper into CSI.

What say you good folk ?
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 11:37 AM   #15351
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

I think anything that gets new users up and running quickly is great! Just think it should take into account toggles and stepped params if possible. Otherwise, people may think it's broken. "I mapped this button on this plugin but it's not working" or "I mapped the ratio for my 1176 plugin but it's not changing."
Funkybot is offline   Reply With Quote
Old 12-19-2021, 12:11 PM   #15352
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 4,869
Default

Quote:
Originally Posted by Geoff Waddington View Post
I've known you guys a while, so in the true spirit of good fellowship , I would say anything we come up with... -- we shouldn't build
LOL, totally agree with that

At its most basic, I guess that means: Fader7Bit, Encoder (no acceleration) and every button is a toggle. Anything more than that requires the user to get their hands (a bit) dirty
MixMonkey is offline   Reply With Quote
Old 12-19-2021, 12:53 PM   #15353
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

@Mixmonkey,

I tried to PM you, but looks like you're not setup to receive PM's. I've been working on a modified version of your C4 FX configurator to work with the SCE-24 to come up with a consistent way to create FX zones for it. Would you mind if I shared that with Luis once it's complete? I don't want to go and share something you obviously spent a lot of time coding and creating without your ok.

I think I'm about 95% done with it so it should be ready for others to maybe start using soon. Of course, I'd be happy to share with you too if you want to take a look first.

If you want to take this offline, you can hit me up via email [same user name here just at gmail] or PM me.
Funkybot is offline   Reply With Quote
Old 12-19-2021, 02:22 PM   #15354
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by Funkybot View Post
I think anything that gets new users up and running quickly is great! Just think it should take into account toggles and stepped params if possible. Otherwise, people may think it's broken. "I mapped this button on this plugin but it's not working" or "I mapped the ratio for my 1176 plugin but it's not changing."
Yeah, but then we add complexity

But I also agree there is a sweet spot somewhere in there.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 02:24 PM   #15355
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by MixMonkey View Post
LOL, totally agree with that

At its most basic, I guess that means: Fader7Bit, Encoder (no acceleration) and every button is a toggle. Anything more than that requires the user to get their hands (a bit) dirty
Well, it's simply the Widget names in the .mst/.ost files, could be any type, but definitely the plain jane variety, no accel, etc.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 02:31 PM   #15356
MixMonkey
Human being with feelings
 
MixMonkey's Avatar
 
Join Date: Sep 2017
Location: London, England.
Posts: 4,869
Default

Quote:
Originally Posted by Funkybot View Post
I've been working on a modified version of your C4 FX configurator to work with the SCE-24 to come up with a consistent way to create FX zones for it. Would you mind if I shared that with Luis once it's complete?
Sure, no probs, go right ahead
MixMonkey is offline   Reply With Quote
Old 12-19-2021, 02:32 PM   #15357
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

Quote:
Originally Posted by Geoff Waddington View Post
Yeah, but then we add complexity

But I also agree there is a sweet spot somewhere in there.
Totally agree about there being a sweet spot. I'm not trying to be a Debbie downer here or make things wildly complex. You have an idea about how to go about it and I trust you!

That said, just brainstorming...and apologies if this adds a ton of complexity, but would it be possible to build logic and a process where users:

1. Move a knob, button, or fader on your controller
2. Then move a parameter on a focused plugin to focus it - user can stop here but if...
3. ...User then moves said parameter minimum to maximum value
4. CSI would listen to the values received to try to determine if a button (toggle), or knob (standard) or stepped param
5. Then CSI builds a zone accordingly

Like if CSI only sees 0.0 to 1.0 with nothing in between, then it can assume a toggle. If it sees values of 0.0 0.34 0.68 1.0 then it can assume a stepped param (and God that would be useful with plugins that use non-logical steps). If it receives continuous values, or steps smaller than 0.01, do nothing extra - assume a continuous parameter.

It sounds like building that could be difficult, but if it were possible to implement via a series of if/thens, that's how I imagine a learn tool could maybe capture steps and toggles.
Funkybot is offline   Reply With Quote
Old 12-19-2021, 02:34 PM   #15358
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,988
Default

Quote:
Originally Posted by MixMonkey View Post
Sure, no probs, go right ahead
You are a scholar and gentleman.
Funkybot is offline   Reply With Quote
Old 12-19-2021, 02:44 PM   #15359
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,183
Default

Quote:
Originally Posted by Funkybot View Post
Totally agree about there being a sweet spot. I'm not trying to be a Debbie downer here or make things wildly complex. You have an idea about how to go about it and I trust you!

That said, just brainstorming...and apologies if this adds a ton of complexity, but would it be possible to build logic and a process where users:

1. Move a knob, button, or fader on your controller
2. Then move a parameter on a focused plugin to focus it - user can stop here but if...
3. ...User then moves said parameter minimum to maximum value
4. CSI would listen to the values received to try to determine if a button (toggle), or knob (standard) or stepped param
5. Then CSI builds a zone accordingly

Like if CSI only sees 0.0 to 1.0 with nothing in between, then it can assume a toggle. If it sees values of 0.0 0.34 0.68 1.0 then it can assume a stepped param (and God that would be useful with plugins that use non-logical steps). If it receives continuous values, or steps smaller than 0.01, do nothing extra - assume a continuous parameter.

It sounds like building that could be difficult, but if it were possible to implement via a series of if/thens, that's how I imagine a learn tool could maybe capture steps and toggles.
Definitely not a Debbie Downer, open conversation is always good !!

I think something like that might make sense down the road.

It would probably work the way FocusedFXParam works, Focus param, then turn knob.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 04:17 PM   #15360
airon
Human being with feelings
 
airon's Avatar
 
Join Date: Aug 2006
Location: Berlin
Posts: 11,817
Default

Maybe have Lua scripting get access to what resource is triggering on the the surface and use one of our many great Lua Gui libs for the Gui of picking the parameter you link it to for the zone.

Crossplatform. Lots of scripting talent to recruit for help.
__________________
Using Latch Preview (Video) - Faderport 16 setup for CSI 1.1 , CSI 3.10
Website
"My ego comes pre-shrunk" - Randy Thom
airon 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 03:10 AM.


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