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

Reply
 
Thread Tools Display Modes
Old 01-29-2018, 01:12 PM   #641
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by poetnprophet View Post
I tried that, it wasn't very accurate. Seemed to bounce all over EC/EB, which is why I did the circle. The joystick doesn't spring back to center, and is very very loose, so hard to get exactly on axis either way. I will try something else later tonight.
Try moving it fairly quickly, see if that makes it more clear.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 01-29-2018, 01:12 PM   #642
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by poetnprophet View Post
One more thing: There are LED level indicator lights for each track. In the current MCU (stock and klinke), these don't light up for levels. How could we get those to work?
Don't know, we'll either have to find the spec or experiment.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 01-29-2018, 08:15 PM   #643
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 586
Default

That's not what I had expected to see either,

What happens if you move the stick in a small circle, do you see a smaller last digit.rather than 12 or 13?

Thinking maybe it's like too arcs, with one part of the message value being the position (or degrees if you like) and the other being the amount (0-12 or 0-13)

Last edited by Freex; 01-29-2018 at 08:24 PM.
Freex is offline   Reply With Quote
Old 01-30-2018, 02:41 AM   #644
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by Freex View Post
That's not what I had expected to see either,

What happens if you move the stick in a small circle, do you see a smaller last digit.rather than 12 or 13?

Thinking maybe it's like too arcs, with one part of the message value being the position (or degrees if you like) and the other being the amount (0-12 or 0-13)
Careful, those last values (12, 13) are not part of the midi message, which are 3 bytes max.

I was just ignoring that, @poetnprophet, what is the 4th number in the row, midi ch ?

I looked back and noticed that the outer wheel always had a 1 in that position.

The fact that this value changes with this control likely means something special is going on here.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 01-30-2018, 03:03 AM   #645
mutetourettes
Human being with feelings
 
Join Date: Feb 2012
Posts: 4
Default fx maps

Hi there - this looks like an amazing project to finally open up a load of hitherto unusable surfaces.. that's my interest...

It occurs to me that perhaps I will need something within (or in the name of) the fx map file that identifies what real life surface it belongs to? It might not be STRICTLY necessary, but for human sanity I would also be wanting to name my files eg console1reacomp or mcuproreacomp or something so I would know what on earth was going on, and would be uncomfortable about purely relying on a folder structure to keep things right (ever moved a folder by mistake? I have). I'm thinking that might be good for community sharing too... but also within the fx file it could easily contain a line describing the devicemap it belongs to, no?
mutetourettes is offline   Reply With Quote
Old 01-30-2018, 04:45 AM   #646
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by mutetourettes View Post
Hi there - this looks like an amazing project to finally open up a load of hitherto unusable surfaces.. that's my interest...

It occurs to me that perhaps I will need something within (or in the name of) the fx map file that identifies what real life surface it belongs to? It might not be STRICTLY necessary, but for human sanity I would also be wanting to name my files eg console1reacomp or mcuproreacomp or something so I would know what on earth was going on, and would be uncomfortable about purely relying on a folder structure to keep things right (ever moved a folder by mistake? I have). I'm thinking that might be good for community sharing too... but also within the fx file it could easily contain a line describing the devicemap it belongs to, no?
Yeah, there's no perfect solution I can see here, it's all tradeoffs.

You are free to name files however you wish of course.

However, when you consider that the same FX template might work for equally well for MCU, X Touch, Avid Artist in Mackie mode, etc., things get a bit murky.

I do see your point though.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 01-30-2018, 10:00 AM   #647
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 586
Default

Quote:
Originally Posted by Geoff Waddington View Post
Careful, those last values (12, 13) are not part of the midi message, which are 3 bytes max.

I was just ignoring that, @poetnprophet, what is the 4th number in the row, midi ch ?

I looked back and noticed that the outer wheel always had a 1 in that position.

The fact that this value changes with this control likely means something special is going on here.
Yeah, good point Geoff, I miss that in my eagerness for a solution. D'oh!!!

So what IS the 12&13? I still wonder if at a smaller arc we see smaller numbers whatever they are?

Last edited by Freex; 01-30-2018 at 11:20 AM.
Freex is offline   Reply With Quote
Old 01-30-2018, 11:47 AM   #648
poetnprophet
Human being with feelings
 
poetnprophet's Avatar
 
Join Date: Jan 2018
Posts: 1,179
Default

Hey everyone, sorry I was not able to do another input test yesterday, but I will for sure tonight.

As far as that 4th row, it looks like it's the "channel". Here is an example from another button with all the input data (not the shortened version I have been providing).

TIMESTAMP IN PORT STATUS DATA1 DATA2 CHAN NOTE EVENT
00071E56 4 -- 90 34 7F 1 E 3 Note On
00071ED5 4 -- 90 34 00 1 E 3 Note Off
poetnprophet is offline   Reply With Quote
Old 01-30-2018, 11:57 AM   #649
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 586
Default

Is it always 12/13?
Or does it change?
Freex is offline   Reply With Quote
Old 01-30-2018, 12:10 PM   #650
poetnprophet
Human being with feelings
 
poetnprophet's Avatar
 
Join Date: Jan 2018
Posts: 1,179
Default

Looks like it goes back and forth. Since I went clockwise, seems like 12-3 = EB, 3-6 = EC, EB, then EC again. EB = 12 and EC = 13. For this column/category, it's always 12 or 13. Most others are 1 or 2 for the channel column.

Agreed that this seems to be the "outer range", and there would/should be other values with smaller concentric circles.

I'll try a couple more patterns tonight. Any other suggestions?
poetnprophet is offline   Reply With Quote
Old 01-30-2018, 02:46 PM   #651
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by poetnprophet View Post
Looks like it goes back and forth. Since I went clockwise, seems like 12-3 = EB, 3-6 = EC, EB, then EC again. EB = 12 and EC = 13. For this column/category, it's always 12 or 13. Most others are 1 or 2 for the channel column.

Agreed that this seems to be the "outer range", and there would/should be other values with smaller concentric circles.

I'll try a couple more patterns tonight. Any other suggestions?
Haha you guys are killing' me by sending more than the 3 midi bytes

I just had a "Doh !!" moment.

Look for an EB -- you will see a 12.

Look for an EC -- you will see a 13.

Those 12s and 13s are channel numbers and are already included in the EB, EC part of the message.

Please guys, just send the 3 midi bytes.

Again we see how treating this as midi data confuses all of us (including me !), we all get thrown off by this "junk".

Please guys, just send the 3 midi bytes.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 01-30-2018, 04:26 PM   #652
MCCY
Human being with feelings
 
Join Date: Apr 2009
Posts: 291
Default

Heya, thanks for this control-surface-automatation Thread!
After using Ableton for live looping for some time now (I want to use Playtime and it seems this could happen soon, tried mobius too it is very nice, but I'd like to build a songstructure within arrangement in realtime) ...

I'd really like to see that alternative Device UI-Trick in Reaper too:

We can have Track Controls from every Effect Parameter and with realearn we can do MIDI-feedback & only selected device automatation: That's nearly all it needs for a great flexible 8-knob Controller like in Ableton.

I'd just like to see the possibility to give every device a very very simple 'ghost-gui' just to have (8? 16?) selected Parameters in a selfselected order.

Even that is allready there in the device view when I change to UI, but can I rearrange the Order of the faders or delete some, or use knobs?

That's all. With some pads I could trigger the active device (on a track basis if I want) and could see on the normal computer screen the controlled parameters in the right order representing the order of my knobs / faders.

What do you think? Seems so damn simple to me :-)
MCCY is offline   Reply With Quote
Old 01-30-2018, 10:59 PM   #653
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,499
Default

I do something like this in my Live setup by a rather huge lot of JSFXes.

I use an XTouch XCompact to remote-control my VSTs. Among other things:

- Buttons control SWS LiveConfigs to select "Patches" and same (un-)mutes tracks and pushes presets to VSTs

- Faders and Rotaries are routed to VST-Parameters (assigning Midi CCs to the VSTs depending on the selected Patch).

(I don't use any GUI, as when Live playing no Monitor etc is attached to the embedded computer running Reaper.)

-Michael
mschnell is offline   Reply With Quote
Old 02-02-2018, 07:59 AM   #654
poetnprophet
Human being with feelings
 
poetnprophet's Avatar
 
Join Date: Jan 2018
Posts: 1,179
Default

sorry for the delay. What I have here is, hopefully, the right values. I started at the 12:00 position and went slowly to 6. Then from 9:00 to 3.

Top to bottom

STATUS DATA1 DATA2
EC 0 7D
EC 0 7B
EC 0 79
EC 0 77
EC 0 76
EC 0 74
EC 0 72
EC 0 70
EC 0 6E
EC 0 6C
EC 0 6B
EC 0 69
EC 0 67
EC 0 65
EC 0 63
EC 0 61
EC 0 5F
EC 0 5E
EC 0 5C
EC 0 5A
EC 0 58
EC 0 56
EC 0 54
EC 0 53
EC 0 51
EC 0 4F
EC 0 4D
EC 0 4B
EC 0 49
EC 0 47
EC 0 46
EC 0 44
EC 0 42
EC 0 40
EC 0 3E
EC 0 3C
EC 0 3A
EC 0 38
EC 0 37
EC 0 35
EC 0 33
EC 0 31
EC 0 2F
EC 0 2D
EC 0 2B
EC 0 2A
EC 0 28
EB 0 4A
EC 0 26
EC 0 24
EC 0 22
EC 0 20
EC 0 1F
EC 0 1D
EC 0 1B
EC 0 19
EC 0 17
EC 0 15
EC 0 13
EC 0 12
EC 0 10
EC 0 0E
EC 0 0C
EC 0 0A
EC 0 8
EC 0 7
EC 0 5
EC 0 2
EC 0 1
EC 0 0
Left to right

STATUS DATA1 DATA2
EC 0 3A
EC 0 3C
EB 0 2
EB 0 3
EB 0 5
EC 0 3E
EB 0 6
EB 0 8
EB 0 9
EB 0 0B
EB 0 0C
EC 0 40
EB 0 0E
EB 0 0F
EB 0 11
EB 0 12
EB 0 14
EB 0 15
EB 0 17
EB 0 18
EB 0 1A
EB 0 1B
EB 0 1D
EC 0 42
EB 0 1E
EB 0 20
EB 0 21
EB 0 23
EB 0 24
EC 0 43
EB 0 26
EB 0 27
EB 0 29
EB 0 2A
EB 0 2C
EB 0 2D
EC 0 45
EB 0 2F
EB 0 31
EB 0 32
EB 0 34
EB 0 36
EB 0 37
EB 0 39
EB 0 3A
EB 0 3C
EB 0 3D
EB 0 3F
EB 0 40
EB 0 41
EB 0 43
EB 0 44
EB 0 46
EB 0 47
EB 0 49
EC 0 47
EB 0 4A
EB 0 4C
EB 0 4D
EB 0 4F
EB 0 50
EB 0 52
EB 0 53
EB 0 55
EB 0 56
EB 0 58
EB 0 59
EB 0 5B
EB 0 5C
EB 0 5E
EB 0 5F
EB 0 61
EB 0 62
EB 0 64
EB 0 65
EB 0 67
EB 0 69
EB 0 6B
EB 0 6C
EB 0 6E
EB 0 6F
EB 0 71
EB 0 72
EB 0 74
EB 0 75
EB 0 77
EB 0 78
EB 0 7A
EB 0 7B
EB 0 7D
EB 0 7E
EB 0 7F
poetnprophet is offline   Reply With Quote
Old 02-02-2018, 09:23 AM   #655
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Excellent !!

Suggested entries for Joystick:

"JoystickX" EB 0 00-7f
"JoystickY" EC 0 00-7f
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-02-2018, 10:51 AM   #656
poetnprophet
Human being with feelings
 
poetnprophet's Avatar
 
Join Date: Jan 2018
Posts: 1,179
Default

great! Whew! Ha...

ok, so what's next? Anything else I need to/can do?
poetnprophet is offline   Reply With Quote
Old 02-02-2018, 10:58 AM   #657
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 586
Default

More out of wonderment than anything else, as the x,y makes perfect sense from the latest data.
But why was there not 2 values (EB,EC) for every position in the full circle data?
Surely for any joystick position there should be x and y values transmitted?
Or am I messing something.
Freex is offline   Reply With Quote
Old 02-02-2018, 12:09 PM   #658
poetnprophet
Human being with feelings
 
poetnprophet's Avatar
 
Join Date: Jan 2018
Posts: 1,179
Default

Seems like a combo of EC/EB and 00 thru 7F would give coordinates.
poetnprophet is offline   Reply With Quote
Old 02-02-2018, 12:10 PM   #659
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by Freex View Post
More out of wonderment than anything else, as the x,y makes perfect sense from the latest data.
But why was there not 2 values (EB,EC) for every position in the full circle data?
Surely for any joystick position there should be x and y values transmitted?
Or am I messing something.
There are an x and y always.

Imagine you start somewhere - EB 0 34, EC 0 05

Now suppose you move to a new value in the x direction - EB 0 03, EC 0 05

See how EC 0 05 is redundant, we already have it from the previous value, it did not change, no need to resend it we just need EB 0 03

Now suppose we move in both directions, we would need both -- EB 0 67, EC 0 87.

That's what you see sometimes interspersed in your data stream, here you didn't move perfectly straight:

EB 0 3
EB 0 5
EC 0 3E // you also moved a little in the y direction
EB 0 6
EB 0 8
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-02-2018, 12:59 PM   #660
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 586
Default

yeah, I know what the x,y should be, what gets me is why the data in the text file from the full circle at max, doesn't show EB EC EB EC as it moves in an arc. A straight line on axis would be as you described EB EB EC (moved a little off).
Just thought the data was weird.

If my thinking is right, then it's a circular grid, like a dart board. Rather than a standard linear grid. But that still doesn't follow the data in the text file.

Just wondering why?


Edit, I think I've made sense of the text file data,
Bear with me...
Moving from
12 to 1:30 you get EB 00 41 (roughly) to EB 00 7f, with EC 00 7F (constant no change)
1:30 to 4:30 you get EC 00 7F to EC 00 00 with EB 00 7F (constant)
4:30 to 7:30 you get EB 00 7F to EB 00 00 with EC 00 00 (constant)
7:30 to 10:30 you get EC 00 00 to EC 00 7F with EB 00 00 (coststant)
10:30 to 12 you get EB 00 00 to EB 00 41 (again roughly) with EC 00 7F (again costsant)

I was still thinking of the x,y plotting as linear even tho I knew it couldn't be and should be like a dart board.
If only the plot motion pattern had been a diamond rather than a circle, it would have all been so obviously clear. Lol.

I can now rest...

Last edited by Freex; 02-03-2018 at 03:21 PM.
Freex is offline   Reply With Quote
Old 02-02-2018, 07:45 PM   #661
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Posts: 3,321
Default

Hey Geoff!

I did what you suggested for my CMC-CH and got my head around OSCII-bot.
Unfortunately, there are some downsides.

My CMC-CH has a bypass insert FX, EQ and Sends button (LED).
I tried to to write several scripts, that will check for these.
My findings are:

- it is impossible to reliably get the fx bypass status for
the selected channel (only half of the info is sent, because Reaper compares the status of the previously selected channel and only transmits changes)
- mute sends are not covered by OSC

Of course, it is no problem to use a LUA script to bypass all these.
But I want an LED feedback on my CMC-CH. And this will only work, if the selected channel is queried.

To make it short: will this be possible with your plugin?
__________________
My Reascripts forum thread | My Reascripts on GitHub | Stephan Römer - film composer
If you wish to donate for my scripts: please consider an organization like: animal shelter, doctors without borders, UNICEF, etc...
_Stevie_ is offline   Reply With Quote
Old 02-03-2018, 01:10 AM   #662
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,499
Default

Quote:
Originally Posted by _Stevie_ View Post
Reaper compares the status of the previously selected channel and only transmits changes
This does seem to make perfect sense. The other entity of course needs to store all these states. Is this doable ?
-Michael
mschnell is offline   Reply With Quote
Old 02-03-2018, 03:50 AM   #663
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by _Stevie_ View Post
- it is impossible to reliably get the fx bypass status for
the selected channel (only half of the info is sent, because Reaper compares the status of the previously selected channel and only transmits changes)
- mute sends are not covered by OSC

Of course, it is no problem to use a LUA script to bypass all these.
But I want an LED feedback on my CMC-CH. And this will only work, if the selected channel is queried.

To make it short: will this be possible with your plugin?
I haven't dug into OSC deeply enough to say for sure, but here's the current thinking:

CSI will add it's own OSC listener, and we will use our own dialect to act EXACTLY like the midi version.

A given OSC message will be translated into a widget name, and, voila, the rest of the code that we already have for midi is instantly available to OSC.

In this sense, we are using OSC as a "front end" to CSI, make sense ?

Of course, you also still have all of the rest of the OSC functionality as well.

As far as the "only transmits changes" strategy, please see my reply to @mschnell below.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-03-2018, 03:56 AM   #664
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by mschnell View Post
This does seem to make perfect sense. The other entity of course needs to store all these states. Is this doable ?
-Michael
Yeah, I prefer not to use that strategy if possible, it has the following inherent problem:

Computer Murphy's Law #1: If two entires are storing state, sooner or later one of them will get confused.

I ALWAYS use the Update/ForceUpdate paradigm, where, regular updates benefit from eliminating redundant traffic, but if you want the current value, you use ForceUpdate which causes the current value to be sent, even if it is the same as the last sent value.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-03-2018, 05:11 AM   #665
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Posts: 3,321
Default

Hey Geoff,

I just checked, when using the command "Refresh all surfaces" Reaper sends the complete bypass states. Unfortunately, it also sends the states of unused FX slots (2-8), what is really strange and unnecessary. My script checks for active and bypassed fx slots, and turns on/off the bypass LED accordingly.
If I now receive "active" for slot 1 but "bypassed" for slots 2-8, my LED will remain turned off. I will see, if there is a way to check for an empty string in the plugin name.
__________________
My Reascripts forum thread | My Reascripts on GitHub | Stephan Römer - film composer
If you wish to donate for my scripts: please consider an organization like: animal shelter, doctors without borders, UNICEF, etc...
_Stevie_ is offline   Reply With Quote
Old 02-03-2018, 10:25 PM   #666
fundorin
Banned
 
Join Date: Feb 2014
Location: Moscow, Russia
Posts: 554
Default

Quote:
Originally Posted by _Stevie_ View Post
Hey Geoff!

- mute sends are not covered by OSC
Try to store send level in some variable, set 0 db volume for send at first button press and then restore volume on the second press. You won't get visual representation of the send's mute status in reaper, but it will give you an ability to mute send.
fundorin is offline   Reply With Quote
Old 02-03-2018, 11:02 PM   #667
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Hmmm...

Gonna make a change to the data format.

Currently things are in quotes to allow spaces:

"Widget Name"
"Another Widget Name"

In doing some actual map files, I find this looks cluttered to me.

A majority of the buttons we will be mapping have a single name, and for the ones that have 2 or more names with spaces, we can substitute an underscore, so the example above becomes:

Widget_Name
Another_Widget_Name

I think it's cleaner, and it's also way easier to parse.

Don't worry if you've made maps, I can modify them easily to fit this new format.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-04-2018, 12:44 AM   #668
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,499
Default

Or maybe allow for non-quoted text if same does not include spaces, but adhere to the quotes if present (like the command line in Windows does).

-Michael
mschnell is offline   Reply With Quote
Old 02-04-2018, 04:05 AM   #669
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by mschnell View Post
Or maybe allow for non-quoted text if same does not include spaces, but adhere to the quotes if present (like the command line in Windows does).

-Michael
Parsing is among my weaker skills, so we'll do it this way for now, and if people bitch enough, we'll add the feature you suggest
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-04-2018, 05:55 AM   #670
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,499
Default

Does not sound like hard to do. Even Microsoft were able to do it
-Michael
mschnell is offline   Reply With Quote
Old 02-04-2018, 10:41 AM   #671
fundorin
Banned
 
Join Date: Feb 2014
Location: Moscow, Russia
Posts: 554
Default

Quote:
Originally Posted by Geoff Waddington View Post
"Widget Name"
"Another Widget Name"
Can't you just call them Widget1...99 in plugmaps and then map those aliases to real variables in the main script?
fundorin is offline   Reply With Quote
Old 02-04-2018, 12:48 PM   #672
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by fundorin View Post
Can't you just call them Widget1...99 in plugmaps and then map those aliases to real variables in the main script?
Well, you could, but the whole idea is easy sharing of maps by using a standard naming convention.

We are thinking that the best way is just what is printed on the surface, so we need a strategy when there are spaces in the surface printing.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-04-2018, 01:05 PM   #673
Freex
Human being with feelings
 
Freex's Avatar
 
Join Date: Jul 2011
Location: Northern Ireland
Posts: 586
Default

underscore is as clean a convention as any, it's actually one less key stroke per name_name, than "name name"
Well 2 keystrokes, if you count spacebar lol.
The naming convention is solid. If you did get a map from A.Nother with a different surface, a quick google of said surface and you would know how A.Nother had mapped it.

Last edited by Freex; 02-04-2018 at 01:29 PM.
Freex is offline   Reply With Quote
Old 02-04-2018, 02:41 PM   #674
semiquaver
Human being with feelings
 
Join Date: Jun 2008
Posts: 4,916
Default

sure you don't want to just use JSON ?
semiquaver is offline   Reply With Quote
Old 02-04-2018, 02:45 PM   #675
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by semiquaver View Post
sure you don't want to just use JSON ?
Definitely under consideration.

The file format is extremely simple, JSON might be just a tad too much, not sure yet...
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-04-2018, 07:05 PM   #676
fundorin
Banned
 
Join Date: Feb 2014
Location: Moscow, Russia
Posts: 554
Default

Quote:
Originally Posted by Geoff Waddington View Post
Definitely under consideration.

The file format is extremely simple, JSON might be just a tad too much, not sure yet...
Using JSON could give you an ability to add backwards compatibility with older scripts, in future, and add new parameters without any problem.
fundorin is offline   Reply With Quote
Old 02-06-2018, 08:06 AM   #677
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

FYI update:

CSI now reads FX template files, here are a couple of Console1 FX template files:

ReaComp.fxt contents:

VST: ReaComp (Cockos)
Threshold Thresh
Character Gain
Attack Attack
Release Release
Ratio Ratio
Compressor Bypass
Parallel Wet
CompressorMeter GainReductionDB



UADPultecEQP1A.fxt contents:

VST: UAD Pultec EQP-1A (Universal Audio, Inc.)
HiGain HF_Atten
HiFrequency HF_Atten_Freq
HiMidGain HiMidGain
HiMidFrequency HF_Boost
HiMidQ HF_Q
LoMidGain LF_Atten
LoMidFrequency Low_Freq
LoGain LF_Boost
LoFrequency Low_Freq
Equalizer Bypass
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip

Last edited by Geoff Waddington; 02-06-2018 at 09:47 AM.
Geoff Waddington is offline   Reply With Quote
Old 02-06-2018, 09:06 AM   #678
fundorin
Banned
 
Join Date: Feb 2014
Location: Moscow, Russia
Posts: 554
Default

Nice, but I don't understand, what physical controls are used for those mappings? There are no similar names in the left column for compressor and eq plugins.
fundorin is offline   Reply With Quote
Old 02-06-2018, 09:38 AM   #679
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

Quote:
Originally Posted by fundorin View Post
Nice, but I don't understand, what physical controls are used for those mappings? There are no similar names in the left column for compressor and eq plugins.
Correct, that's because these are Console1 mappings.

The controls on the left are all present on a Console1, so you can have both a compressor and EQ mapped at the same time, like a channel strip.
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip
Geoff Waddington is offline   Reply With Quote
Old 02-06-2018, 04:07 PM   #680
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 4,229
Default

FYI update:

CSI now reads Action template files, here are a few files:

Console1.axt contents:

DisplayFX SetShowFXWindows


Track/Console1.axt contents:

ChannelFader TrackVolume
ChannelRotary TrackPan 0
ChannelMute TrackMute
ChannelSolo TrackSolo
ChannelInputMeterLeft TrackOutputMeter 0
ChannelInputMeterRight TrackOutputMeter 1
ChannelOutputMeterLeft TrackOutputMeter 0
ChannelOutputMeterRight TrackOutputMeter 1
TrackOnSelection MapTrackAndFXToWidgets


MCU.axt contents:

NudgeLeft TrackBank -1
NudgeRight TrackBank 1
BankLeft TrackBank -8
BankRight TrackBank 8
Rewind Rewind
FastForward FastForward
Stop Stop
Play Play
Record Record
NextMap NextMap
LockTracks ImmobilizeSelectedTracks
UnlockTracks MobilizeSelectedTracks
Shift Shift
Option Option
Control Control
Alt Alt
Read TrackAutoMode
Write TrackAutoMode
Trim TrackAutoMode
Touch TrackAutoMode
Latch TrackAutoMode
Group TrackAutoMode
ShiftRead GlobalAutoMode
ShiftWrite GlobalAutoMode
ShiftTrim GlobalAutoMode
ShiftTouch GlobalAutoMode
ShiftLatch GlobalAutoMode
ShiftGroup GlobalAutoMode
Save Reaper 40026
ShiftSave Reaper 40022
Undo Reaper 40029
ShiftUndo Reaper 40030
Marker Reaper 40172
ShiftMarker Reaper 40157
OptionMarker Reaper 40174
Nudge Reaper 40173
Cycle CycleTimeline
Click Reaper 40364
Zoom LatchedZoom
Scrub LatchedScrub


Track/MCU.axt contents:

ChannelDisplay TrackNameDisplay
TrackTouchControlled TrackVolumeDisplay ChannelDisplay
ChannelFader TrackVolume
ChannelFaderTouch TrackTouch
Cycled ChannelRotaryPush ChannelRotary TrackPan 0 TrackPanWidth 3
ChannelSelect TrackUniqueSelect
ShiftChannelSelect TrackRangeSelect
ControlChannelSelect TrackSelect
ChannelRecordArm TrackRecordArm
ChannelMute TrackMute
ChannelSolo TrackSolo
__________________
CSI - You can donate here: geoffwaddington.ca
Beta software: https://stash.reaper.fm/v/38349/CSI%20beta.zip
EuCon software:
https://stash.reaper.fm/v/37947/reaper_csurf_EuCon.zip

Last edited by Geoff Waddington; 02-06-2018 at 04:12 PM.
Geoff Waddington 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 11:10 PM.


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