Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER General Discussion Forum

Reply
 
Thread Tools Display Modes
Old 03-14-2017, 01:34 AM   #81
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

OK, I have been dipping my toe in the "JUCE" waters and may use this for UI (as I believe Klinke does).

Anybody have any objections or other thoughts on using JUCE ?

On the subject of donations/funding, anyone have thoughts on which approach to use (patreon/gofundme/kickstarter, etc.) ?
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 03-14-2017, 02:19 AM   #82
Reynaud
Human being with feelings
 
Join Date: Aug 2016
Posts: 68
Default

Is further Eucon driver development part of the plan here?

If so, where's the donate button I need to click multiple times?
Reynaud is online now   Reply With Quote
Old 03-14-2017, 05:56 AM   #83
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Quote:
Originally Posted by Reynaud View Post
Is further Eucon driver development part of the plan here?

If so, where's the donate button I need to click multiple times?
Yes, but from an MCU perspective. I've got mine working in MCU mode and will be soon deciphering the MIDI messages to see what we can get out of this approach with the Avid Artist series.

What would you like to see added to the functionality ?
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 03-14-2017, 07:27 AM   #84
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Germany
Posts: 3,460
Default

Quote:
Originally Posted by Geoff Waddington View Post
Anybody have any objections or other thoughts on using JUCE ?
Did you check the "Developers" forum ? Juce has been discussed for Reaper extensions there. Please do post your findings there, as well.

-Michael
__________________
www.boa-sorte.de
mschnell is online now   Reply With Quote
Old 03-14-2017, 08:58 AM   #85
Reynaud
Human being with feelings
 
Join Date: Aug 2016
Posts: 68
Default

Quote:
Originally Posted by Geoff Waddington View Post
What would you like to see added to the functionality ?
The S3 or S6 are closest to what I require in a control surface, and since these don't offer MCU functionality, it seems I need to give up on the idea of using a control surface with Reaper.

Perhaps I need to forgo control surfaces and simply use Reaper as a tape machine.
Reynaud is online now   Reply With Quote
Old 03-14-2017, 08:59 AM   #86
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Quote:
Originally Posted by mschnell View Post
Did you check the "Developers" forum ? Juce has been discussed for Reaper extensions there. Please do post your findings there, as well.

-Michael
Thanks, yes, i have Xenakios code up and running here.
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 03-15-2017, 03:06 AM   #87
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Quote:
Originally Posted by Reynaud View Post
The S3 or S6 are closest to what I require in a control surface, and since these don't offer MCU functionality, it seems I need to give up on the idea of using a control surface with Reaper.

Perhaps I need to forgo control surfaces and simply use Reaper as a tape machine.
Well, you bring one of the goals of this project, which is to do exactly that, use Reaper more like a tape machine.

That is to say, offload the console functions, enabling a simpler UI in Reaper.

An example, if you use an Apollo, all record monitoring is done through the Apollo console app.

That means the input monitoring selection in Reaper now has no function (for audio), so it could be removed from the UI thereby reducing Reaper UI complexity.

On the topic of S3's and especially S6's, the main goal of this project is to give the user the ability to construct a poor man's S6 (one might even say a better S6) by integrating simpler components.

As a somewhat silly example to keep it simple:

A phone makes a great Transport controller, we already have some great stuff (and I'm sure a lot more coming) with the web interface.

A phone also makes a great large clock.

Usually the transport controller functionality is most needed whilst recording and the big clock functionality is needed less during recording.

You might want that phone functionality to change based on whether you were in record mode.

That means that whatever placed Reaper into record (mouse click, control surface, etc,) has to integrate somehow with the phone (perhaps OSC) telling it to switch apps.

That's the level of multi unit integration I think we should aim for.

From a single device viewpoint, any button press, fader movement, etc should be able to trigger any Reaper action, including script launch, etc.

This should be available either globally, or on a project specific basis (e.g. fader 6 on MCU1 is locked to vocal track in MyTune.RPP)

That's the level of customization I think we should aim for.

So the idea is to allow for custom setups/workflows/etc. tailoring whatever components you have at your disposal to maximize workflow in a given context.

Now as far as the Eucon stuff is concerned, my feeling, and to be very clear this is my view alone and not Cockos's or anyone else's, is that the basic EuCon design is very much in line with ProTools, it emphasizes standardization over flexibility/customization.

I think a better match for Reaper is a much more flexible/customizable approach (with the necessary added complexity), it's the Reaper way
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 03-15-2017, 04:52 AM   #88
Reynaud
Human being with feelings
 
Join Date: Aug 2016
Posts: 68
Default

Quote:
Originally Posted by Geoff Waddington View Post
Well, you bring one of the goals of this project, which is to do exactly that, use Reaper more like a tape machine.

That is to say, offload the console functions, enabling a simpler UI in Reaper.

An example, if you use an Apollo, all record monitoring is done through the Apollo console app.

That means the input monitoring selection in Reaper now has no function (for audio), so it could be removed from the UI thereby reducing Reaper UI complexity.
I am already offloading all of the required monitoring functions to a DAD AX32 which uses DADman to manage all speaker routing construction and provides the required Monitor control functionality. The DADman application is Eucon enabled so all source selection, switching between the various 24 channel wide stems, where monitor and headphone cue construction and selection is all possible from within DADman itself, via ProTools Control and an iPad or via hardware such an Avid S6. This aspect will be further developed in April apparently with the release of an updated Eucon driver especially since Avid has rebranded the AX32 as the MTRX and they are also using DADman (which may change to an Avid specific version soon).

With respect to monitoring, as illustrated, Reaper is already just a glorified tape machine. But, since one can't purchase an S6 with just the monitor section, there's a lot of wasted hardware control with potential assignment within Reaper.

In terms of input monitoring, this is centered around Merging HAPI MicPre and A/Ds which are all already controllable via iPad using the default Safari browser over a Ravenna network. i.e. Mic/Line levels, pad, phantom selection, phase control etc are all available in the browser. So in this respect, too, Reaper is also potentially just a glorified tape machine. But the software control experience isn't perfect, as touch control is a lousy and an inaccurate experience in fast moving scoring sessions. When dealing with 80+ mic inputs, the iPad control or any software control is too slow and too inaccurate. It's fine for less than a handful of simultaneous inputs, and for very basic single instrument overdubs. But a phone or a tablet or any touch screen UI just fails to deliver the control required in large sessions.

As more and more film scoring engineers are exploring the use of Reaper due it being currently the only DAW that is able to create 24 channel wide stems for NHK mic arrays and higher track widths for use with other immersive audio formats, Reaper needs to accommodate these type of workflows and appeal to these potential users. Sequoia will be adding 32 channel wide tracks in version 14, so the competition is catching up quickly. Reaper is no longer just a hobbyists playground, but it may lose out in retaining these type of users (film score and immersive music mixers) as the other DAW systems catch up.


Quote:
Now as far as the Eucon stuff is concerned, my feeling, and to be very clear this is my view alone and not Cockos's or anyone else's, is that the basic EuCon design is very much in line with ProTools, it emphasizes standardization over flexibility/customization.
As described above, Eucon is moving beyond just ProTools, as is the case with DADman. Merging have a Eucon conversion utility that allows Eucon surfaces to be used with Pyramix and or any OASIS-based Controller (Open Audio System Integration Solution). Avid have been working directly with Merging to give S6 customers the same experience whether they are controlling ProTools or Pyramix on the same Controller, even simultaneously. The Eucon/OASIS conversion tool remains updated as Avid enables changes.

There is absolutely no reason why the same relationship won't be possible with Reaper. After all, Avid are a hardware company, with software being merely an attractor to sell more hardware.

The next trend that is developing rapidly is Ravenna-enabled controllers where all hardware is controlled by a physical controller (or software) and the DAW is merely a glorified transport (and in some cases not even required). This is only now developing and will take some time to trickle down, where users have access to a single Controller as the centrepiece in a Ravenna-based facility. Perhaps this tosses control surfaces as we know and use them today in to legacy-ware. Perhaps, this also has potential new customers looking elsewhere as solutions targeting their specific needs are brought to market.

Perhaps, at that point any glorified tape recorder will do, even something very unsophisticated.

Last edited by Reynaud; 03-15-2017 at 05:21 AM.
Reynaud is online now   Reply With Quote
Old 03-15-2017, 05:21 AM   #89
Diego
Human being with feelings
 
Diego's Avatar
 
Join Date: Jan 2011
Location: Italy and... world
Posts: 96
Default

Quote:
Originally Posted by Geoff Waddington View Post
Yes, but from an MCU perspective. I've got mine working in MCU mode and will be soon deciphering the MIDI messages to see what we can get out of this approach with the Avid Artist series.
So you're not using your plugin anymore? I've never used my Avid surface in MCU mode: what can you do in this mode? Interested since I bought and use an Artist Mix and a Artist Transport with your Eucon plugin now.
__________________
G66 Technical Manager for Italy
Main Guitars: Rash DP18 | Ibanez UNIVERSE 777
MainRig: Fractal Audio Axe-FX II XL+ |Focusrite LS 56 | Reaper

Last edited by Diego; 03-27-2017 at 08:29 AM.
Diego is offline   Reply With Quote
Old 04-17-2017, 02:46 AM   #90
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

OK, been thinking about this a bit.

Here's a shot conceptually, please find the holes, errors, omissions, etc.

I won't feel bad, in fact, that will make me happy, because we'll get a better end result.

Let's start with a Mackie Control Universal, most everyone is familiar with the MCU or a variation.

It has a button marked "FLIP" -- the faders and rotaries change roles.

Borrowing terminology from digital mixers, this is really just an example of a "layer", a very simple one.


Alright, we're ready to design some software to configure a layer.

OK to set up a layer, launch the Configurator.

Press a switch or move a fader on the control surface, it is automatically detected and remembered as the trigger for the next thing we'll need, an "action".

An action is simply what happens when you activate a trigger.

It can be something like mute, solo, volume change, etc.

It can also be something like a Reaper action, launch of a script, or even telling another control surface in your personal aggregation to switch layers.

Once the layer definition is complete (you have configured all the controls to your taste/workflow), you can save this layer, to be recalled later.



There are tons of details to work out, but this is the basic concept.

Would love to hear from as many of you as possible.

Let's work together to make Reaper the very best at integrating various controllers.
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 04-17-2017, 03:09 AM   #91
nofish
Human being with feelings
 
nofish's Avatar
 
Join Date: Oct 2007
Location: home is where the heart is
Posts: 7,224
Default

^^^

Sound roughly similar to how Klinke's MCU editors work (plugin / action mapping editor windows, I assume you're probably familiar with it anyway so I don't post a screenshot).

These do it fine for me so yes, your suggestion sounds good to me.

(sorry for repeatedly referring to Klinke's plugin, it's just that's what I know and use currently).
nofish is offline   Reply With Quote
Old 04-17-2017, 03:17 AM   #92
Diego
Human being with feelings
 
Diego's Avatar
 
Join Date: Jan 2011
Location: Italy and... world
Posts: 96
Default

Thanks Geoff, this sounds good.
It can be a a good starting point.
__________________
G66 Technical Manager for Italy
Main Guitars: Rash DP18 | Ibanez UNIVERSE 777
MainRig: Fractal Audio Axe-FX II XL+ |Focusrite LS 56 | Reaper
Diego is offline   Reply With Quote
Old 04-18-2017, 02:40 AM   #93
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Ok, also have to think global vs project.

For instance you might want to lock Fader 9 to Master globally (always), but lock Fader 1 to Track 23 for a certain project only.

We will be storing both types of info.

Help me out, what is on your wish list to go into each type (I don't mean just faders, I mean everything you would like to save) ?
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 04-18-2017, 03:19 AM   #94
airon
Human being with feelings
 
airon's Avatar
 
Join Date: Aug 2006
Location: City
Posts: 9,722
Default

I'm inspired by existing stuff, but it can probably get us an idea or two to improve upon.

The most useful feature of the Icons to me was the "Custom Fader Zone". Activating this placed a bunch of control resources in to a "we're doing X"-mode, which in the case of the Avid Icon(-ES) meant that a set of 3/8/16 track channels-worth of controls are dedicated to a task you would choose with a different set of buttons.

From your perspective, at first you have a GLOBAL layer that you can switch between for all your control resources, i.e. the track channels on an MCU for example and some custom buttons that would have no permanent function like the F-keys on the MCU.

Custom Zones are portioned off pieces of the global layer. To keep things simple, I'd start with only one custom zone. Nutjobs will put up 10, but let's get it working well first, is my opinion.

Those Custom Zones might as well be called the Custom Layer.

The global layer is the foundation and the non-global layer is on top of that, working at a higher priority. Both the global and custom layer should be able to do a variety of things.

The global layer would shrink as controls are taken over by the custom layer.


Things the Custom Layer is used for, though any of this stuff could be used for the global layer too. These are all actions.
  • Spill zones for track groups and VCA slaves in Reaper.
    Select a track and use an action such as "Spill other group members to

  • Custom parameters (8 banks callable with their own action)
    Put stuff from selected tracks, or globally in to the Custom Zone.

    For global controls you might want to have several banks of the Custom Zone. Great for some folks who prefer this.

    I already do this with midi stuff, but I also have a bank of touch-sensitive faders that just sit there most of the time(the MCU), and I cannot use the faders, its knob or its buttons for anything else. I often only need a track or two for volume control.

    Thus when I need it, I'd like to use the majority of those control resources to control the volume of the sends on selected tracks for example.

    The control resources is dumb. The software can do something smart with it.

  • Show VCA Masters
    The user picks which control resources maniupulates the volume control, the solo and the mute control.

    Also gives you a good starting point to show the VCA Masters slave tracks.

  • Show Track Group Members of group X
    If not using VCAs, this is a way to spill all the send-fx tracks for example.

  • Show Tracks whose names contain "foo" or whatever the user decides. Simple track filters.

  • many more things people are sure to come up with.



Control resources require optional feedback. We need a way to edit and share feedback configurations amongst users so more and more can be included in the default distribution of whatever it is that will be made here.

Stuff to save in projects
  • Anything the user changes from a default layout, if the user chooses to. Perhaps a global "Save with project" checkbox in the main config dialog.
  • Custom layers for selected-track control of parameters, including volume/pan/mute/send-volume/send-pan/send-mute. They're likely to be per-project and often included in project templates.
  • Custom layer types, if reconfigured or extended from the defaults.


Configuration
How do you want to let the user pick what control resources is assigned to which parameter ?
__________________
Dialogue/FX Editor & Re-Recording Mixer
(Video)Using Latch Preview
"My ego comes pre-shrunk" - Randy Thom

Last edited by airon; 04-18-2017 at 03:36 AM.
airon is offline   Reply With Quote
Old 04-18-2017, 12:38 PM   #95
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

I think we're assigning different meanings to Global.

I mean this:

Global -- the control surface behaviour with every project
example -- Play button plays no matter what project is currently open

Project -- project specific
example -- Fader 1 is locked to Track 23 in MyTune.rpp

I like the idea of zones, although I'm not sure it's the same definition as yours, but I definitely think the concept is valuable, thanks.
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 04-19-2017, 02:09 AM   #96
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

OK, more thoughts.

After watching Juce for a bit, it seems to be too much a moving target, we'll go with WDL/SWELL for the UI.

Some tentative terminology terms to consider:

Zone -- a collection of controls, perhaps not contiguous, perhaps spanning more than one physical device.

Layer -- a collection of non-overlapping Zones.

You can't switch Zones quickly in the workflow sense, too easy to get conflicts with other Zones clobbering your Zone and vice versa.

You can and do regularly switch Layers in the workflow sense.

A UI consideration, it must be very easy to clone a zone/layer and modify to taste.

Just some morning thoughts...
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 04-19-2017, 04:30 AM   #97
ivansc
Human being with feelings
 
Join Date: Aug 2007
Location: Near Cambridge UK and Near Questembert, France
Posts: 15,919
Default

Starting to sit up and take notice of where you are heading now, Mr.W

This is SUCH a worthwhile project!
__________________
UK and USA: Our leaders MAY be buffoons but they are still dangerous buffoons.
ivansc is offline   Reply With Quote
Old 04-19-2017, 06:59 AM   #98
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Leaning towards Stripe over PayPal for the donationware account.

Any thoughts for/against ?
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 04-19-2017, 09:03 AM   #99
airon
Human being with feelings
 
airon's Avatar
 
Join Date: Aug 2006
Location: City
Posts: 9,722
Default

Do we want a simple graphical depiction of the users control resources ?

Simple scalable symbols, perhaps SVG graphics that the user gets to position on a canvas.

The idea is to have an overview where the user can inspect the created zones and layers. Very simple colour changes would depict whether a control is assigned for a currently active zone.

For example, an inexpensive controller like the Behringer X-Touch has eight knobs, one fader(non-motorized), sixteen buttons and two layers(which counts for a whole new set of the same controls). Two circles for knobs, line and box for faders and rectangles for buttons.

The user could move the mouse cursor on the graphical representation of a knob or button and an info box would auto-show what it is currently assigned to, as well as which zone that assignment belongs to.

Standard sizes, movable to replicate the layout the user is using. It's purely a one-time setup process. We could include a stack of presets for different devices. Those presets might even help us collect resources, though manual setup of each control resource may be necessary, since a lot of them are customizable with their own editors (like all Behringer X-Touch units, all Midi Fighter Twisters and many more).

Too much to start with ? Would you rather collect control resources in a list, or even forego such a setup and just manage things like Reaper does via channel, note/cc,method ?

I uploaded a small idea on how this could look in a very simple fashion. The example is a representation of one layer of part of my setup. The 4x4 banks have four layers each. The X-touch at the bottom has two. Maybe it's too much to have graphical representations of this stuff, but it could be something to go for in the future.

https://stash.reaper.fm/30528/graphic...tion%20v01.png
__________________
Dialogue/FX Editor & Re-Recording Mixer
(Video)Using Latch Preview
"My ego comes pre-shrunk" - Randy Thom

Last edited by airon; 04-19-2017 at 09:21 AM.
airon is offline   Reply With Quote
Old 04-19-2017, 11:07 AM   #100
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Quote:
Originally Posted by airon View Post
Do we want a simple graphical depiction of the users control resources ?
Don't think so, each time a new product came out we would have to add stuff.

I see the UI as a more complex descendant of the EuCon editor UI: https://stash.reaper.fm/v/17210/EuCon%20Map%20Editor.pdf

A tree like structure, let's name an arbitrary top and call it a Set.

A Set Contains Layers

A Layer contains Zones

A Zone contains Controls (faders, encoders, switches, displays, etc.)
A Zone is group of controls, possibly on different physical devices, that logically belong together.

A Control triggers a Reaper Behaviour
A Control may also trigger a Control surface only behaviour - e.g. change Layer

This UI will get very complex and drill-downish, so I think a tree is one option to manage that complexity, but certainly open to ideas.

On the other hand we have to be careful to manage our resources wisely, this tool will be used infrequently, a handsome, tastefully coloured UI is not necessary, utilitarian will do nicely, allowing us to add more meat and potatoes functionality.
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 04-19-2017, 12:02 PM   #101
airon
Human being with feelings
 
airon's Avatar
 
Join Date: Aug 2006
Location: City
Posts: 9,722
Default

I can certainly agree on the simplicity. Maybe I'll just draw some diagrams and offer them as simple SVG files so people can label up stuff themselves in Inkscape, which is freely available.

Set
Layer
Zone
Control
Action
The tree view seems most useful for Zones.
__________________
Dialogue/FX Editor & Re-Recording Mixer
(Video)Using Latch Preview
"My ego comes pre-shrunk" - Randy Thom

Last edited by airon; 04-20-2017 at 08:56 AM.
airon is offline   Reply With Quote
Old 04-21-2017, 02:05 PM   #102
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Ok, some more thoughts:

First let's give a working title to this plugin -- "Reaper_CSurf_Integrator", obviously feel free to come with suggestions for a better name

Let's define a button with MIDI messages.

We'll use the Mute button on an MCU as an example.

When you press Ch 2 Mute on an MCU it sends the following midi messages to Reaper:

90 12 7f -- pressed
90 12 00 -- released

You can also send midi messages from Reaper to the Ch 2 Mute button light:

90 12 7f -- on
90 12 01 -- blinking
90 12 00 -- off


So now we have defined a trigger (button), and a feedback mechanism (the button light in this case).

Let's think about how you would go about using the software.

You have no surfaces installed.

You get an MCU, so you install Reaper_CSurf_Integrator,
Options->Preferences->Plugins->control/OSC/web.

You then start configuring your new MCU to work with Reaper.
You choose a pair of MIDI ports (in/out) for communication.

>>>>>>>>>
There will be pre made maps for all the usual suspects, but we will describe the manual process for illustration, i.e. what you would do for a rare or custom control surface.
>>>>>>>>>

Press the Ch 2 Mute button.
Reaper captures the midi message and presents a text box so you can name this message -- you will probably name it something like "Ch 2 Mute pressed", but you are free to name it whatever you like.

Same for Release -- "Ch 2 Mute released"

Then you define the feedback -- on/blinking/off in a similar fashion.

You do this for each control.

Now you have defined:
A means of communication -- in this case midi I/O.
A set of definitions for each physical control (and feedback mechanism) present on the control surface.

You have now described the physical control surface resources at your disposal and their capabilities.

Save this to disk.

End of Step 1.



OK, mapping can now be done more easily.

Let's map a behaviour to this control:

Let's go way out on a limb and map this to "Ch 2 Mute" in Reaper

Because we defined the feedback mechanism in Step 1, the mapping software can be smart and ask us if we want to send feedback (in this case, of course we do, we want to see the Mute light up when we press it, and when we click the mouse on Ch 2 Mute).

We can allow overrides, etc., but smart config here will likely save a lot of time for most cases.

This mapping pair is now available for inclusion in a Zone/Layer.

I think this 2 Step process is the way to go -- well I do today, at least right now.

What do you think ?

How could we improve it?
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 04-21-2017, 02:18 PM   #103
matthewjumpsoffbuildings
Human being with feelings
 
Join Date: Mar 2013
Posts: 391
Default

Sounds good Geoff
__________________
[array] soundcloud facebook arraytheband.com.au
matthewjumpsoffbuildings is offline   Reply With Quote
Old 04-26-2017, 09:43 AM   #104
airon
Human being with feelings
 
airon's Avatar
 
Join Date: Aug 2006
Location: City
Posts: 9,722
Default

Basic, uncomplicated and it's similar to what users already experience when binding midi/osc triggers to actions and parameters. Once this is in the bag, it's on to the details, which in the case of feedback are going to be interesting.

+1
__________________
Dialogue/FX Editor & Re-Recording Mixer
(Video)Using Latch Preview
"My ego comes pre-shrunk" - Randy Thom
airon is offline   Reply With Quote
Old 04-26-2017, 02:47 PM   #105
gpunk_w
Human being with feelings
 
Join Date: Dec 2010
Posts: 3,142
Default

I skimmed the thread a bit but it seems to me that the first problem you have here is the total lack of useful hardware controllers, they are all either MCU style or just super simple.
The best plugin controller is still the BCR because of the number of dials vs cost.
The best console controller would simply be a ton of the 8 ch fader/extender units from somebody like Icon, so you can actually have 1:1, 40 cheapo moving faders is much better than 8 moving faders of an MCU in my eyes, and the price difference is surprisingly not that different all things considered.

1st off for the faders, they are touch sensitive, when you touch the faders have the channel names all appear in a floating panel on the computer monitor, that is way way better than trying to read tiny little LCD displays on hardware "Wonder what this channel is, touch it, bam it shows the name on screen"

2nd for the BCR type controller, create a two way visual configuration, an online database would soon build up.
In the configuration app, you would see an image of the plugin you are about to control, this would be shown based on the current plugin selection, floating over this would be a broken down version of the currently selected hardware (BCR in this case), these would have arrows pointing from the plugin image to the matching hardware controls.

These are just ideas, but this is the sort of thing that should be done, negating crappy tiny LCD and boosting the value of limited controllers like the cheap 8 way fader packs from Icon and such.

Personally i would even like to see a DAW controller app like you are planning to be able to run on an extra monitor, so you could have huge name displays and VUs and such.
__________________
Reaper scripters, that is all !!!!!!!!!!!!!!!!
gpunk_w is offline   Reply With Quote
Old 05-01-2017, 03:45 PM   #106
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Ok, now set up for donations, I think

Just go to geoffwaddington.ca
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 05-01-2017, 03:51 PM   #107
matthewjumpsoffbuildings
Human being with feelings
 
Join Date: Mar 2013
Posts: 391
Default

Sweet, Ill be donating asap
__________________
[array] soundcloud facebook arraytheband.com.au
matthewjumpsoffbuildings is offline   Reply With Quote
Old 05-03-2017, 05:50 AM   #108
gpunk_w
Human being with feelings
 
Join Date: Dec 2010
Posts: 3,142
Default

How about having a multi touch overlay as part of the software, have it use the rtconfig file dimensions for the MCP, and have it always on top.

So we can put the MCP on a second touchscreen and have multi touch for the faders.
__________________
Reaper scripters, that is all !!!!!!!!!!!!!!!!
gpunk_w is offline   Reply With Quote
Old 05-04-2017, 02:29 AM   #109
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Sure, that could be done through OSC/Web for a pad or phone, might be possible on a second monitor too, through the Reaper API.
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 05-10-2017, 07:59 AM   #110
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Ok, I'm thinking it would be good to separate the editor and the plugin to keep the plugin lean.

That means it would work like this:

1) Run a Reaper Action to edit your config.
2) Install the plugin.

So now, each time you edit the config, you must remove and install the plugin to get the new changes, will take a couple of seconds.

For something you do since in awhile I think this is sufficient, what say you folks ?
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 05-10-2017, 07:09 PM   #111
gpunk_w
Human being with feelings
 
Join Date: Dec 2010
Posts: 3,142
Default

Yeah its a no brainer, most VST change prefs (outputs themes and such) reload plugin for changes to take effect, so yeah we are all used to configure/reload
__________________
Reaper scripters, that is all !!!!!!!!!!!!!!!!
gpunk_w is offline   Reply With Quote
Old 05-12-2017, 02:21 AM   #112
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Yummm....

Just thought of a good one.

Because screen sets can be changed with a combo keypress, we can change them with a control surface.

So, for instance, when you go into record, you could change to your record mode screenset.

This requires the ability to trigger more than one action (in this case put Reaper into record AND change the screenset), so we will design the software so that it is possible to assign ordered lists of actions (not just one action) to a trigger.
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 05-12-2017, 08:56 AM   #113
gpunk_w
Human being with feelings
 
Join Date: Dec 2010
Posts: 3,142
Default

I never really fully understand why anybody uses screensets to be honest, is it a fear of making layouts or something ?
Layouts would seem to be a much better thing to change when hitting record or whatever, maybe i don't have enough windows open at the same time in Reaper or something ?

And to be fair, you don't need to trigger multiple actions at all, just create a macro in reaper with both actions and trigger the macro, probably make it a bit easier your end, save reinventing the wheel.
__________________
Reaper scripters, that is all !!!!!!!!!!!!!!!!
gpunk_w is offline   Reply With Quote
Old 05-12-2017, 09:14 AM   #114
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Quote:
Originally Posted by gpunk_w View Post
I never really fully understand why anybody uses screensets to be honest, is it a fear of making layouts or something ?
Layouts would seem to be a much better thing to change when hitting record or whatever, maybe i don't have enough windows open at the same time in Reaper or something ?
Sure, screensets was just an example.

Quote:
Originally Posted by gpunk_w View Post
And to be fair, you don't need to trigger multiple actions at all, just create a macro in reaper with both actions and trigger the macro, probably make it a bit easier your end, save reinventing the wheel.
For simple actions, yes, for other things in the volume/automation/pan/etc. world it's a bit more complex.
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 05-12-2017, 09:22 AM   #115
LugNut
Human being with feelings
 
Join Date: Jun 2013
Location: So Florida
Posts: 616
Default

Hi,
Been following this w interest.
Geoff have you ever used miditranslatorpro? Because most of what you have been discussing can be done right now with mtp between reaper and hardware. But I'm not a coder, so maybe I'm missing something.
LugNut is offline   Reply With Quote
Old 05-12-2017, 09:52 AM   #116
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Quote:
Originally Posted by LugNut View Post
Hi,
Been following this w interest.
Geoff have you ever used miditranslatorpro? Because most of what you have been discussing can be done right now with mtp between reaper and hardware. But I'm not a coder, so maybe I'm missing something.
Yes, the examples have been simple on purpose, you could probably use existing software to do the simple things mentioned in the examples.

Think of this project as sort of a miditranslatorpro on steroids
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
Geoff Waddington is offline   Reply With Quote
Old 05-12-2017, 01:10 PM   #117
LugNut
Human being with feelings
 
Join Date: Jun 2013
Location: So Florida
Posts: 616
Default

Quote:
Originally Posted by Geoff Waddington View Post
Yes, the examples have been simple on purpose, you could probably use existing software to do the simple things mentioned in the examples.

Think of this project as sort of a miditranslatorpro on steroids
Nice..looking forward to it!
LugNut is offline   Reply With Quote
Old 05-12-2017, 01:23 PM   #118
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Germany
Posts: 3,460
Default

Quote:
Originally Posted by Geoff Waddington View Post
Think of this project as sort of a miditranslatorpro on steroids
Very obviously MidiTranslator is for non-Reaperers.
I once considered to buy MidiTranslatorPro plus Forte, before I found Reaper and found that it can do what that combinations would be necessary for, and a LOT more, for a much lower price.

-Michael
__________________
www.boa-sorte.de
mschnell is online now   Reply With Quote
Old 05-12-2017, 06:44 PM   #119
gpunk_w
Human being with feelings
 
Join Date: Dec 2010
Posts: 3,142
Default

Quote:
Originally Posted by Geoff Waddington View Post
For simple actions, yes, for other things in the volume/automation/pan/etc. world it's a bit more complex.
Can you give an example Geoff, i am interested not bitching.
__________________
Reaper scripters, that is all !!!!!!!!!!!!!!!!
gpunk_w is offline   Reply With Quote
Old 05-12-2017, 07:16 PM   #120
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 1,643
Default

Quote:
Originally Posted by gpunk_w View Post
Can you give an example Geoff, i am interested not bitching.
Well, I may be wrong but something like this might be hard to do unless you coded your own extension:

Control surface fader move sends new value to software.

Software is configured to:
1) Update Reaper with the new value
2) Send a message to control surface to display the updated value as the fader moves, and after a couple of seconds of fader non movement, revert the display to whatever it was displaying before the fader move.

I think I'll add the capability even if we can't think of a good use case right now, it just feels right to do it that way -- the old programming maxim, if you build it to work with collections from the start, it will work just fine with a collection of size one
__________________
Groove is the subtle control of chaos -- feel free to donate to the open source control surface integration project -- geoffwaddington.ca
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 05:19 AM.


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