When is Urs going to finally release that Diva MIDI controller? Kickstarter?

VST, AU, AAX, CLAP, etc. Plugin Virtual Instruments Discussion
Post Reply New Topic
RELATED
PRODUCTS

Post

PAK wrote: Since this was a Diva thread, I might as well ask a final Diva specific question.. As you may know, the Octave and Detune controls share the same automation parameter, even though each control expects different behaviour.

Octave needs to add or subtract 12 in 5 steps (-24,-12,0,+12,+24). The difficulty is caused by the fact that the host automation presents the range as +/-30, and the detune knob is busy controlling the extra +/-6 of this range. On Automap, when you have (eg) Octave at +12 and Detune at +1, this makes the total +13. When Octave adds another +12, to step to +24, it sees the value generated will actually be +25, which is outside its allowed +/-24 range. This causes it to jump to the next allowed value and reset the detune position to centre.

I just wondered if your controller contains enough logic to be able to work around this rather "unique" design decision? Thanks if you could answer these :)
Yeah this was kind of annoying using auto map with Diva. What I did was assign a couple buttons to up/down octaves by one octave only (so it couldn't reset the detune). Then I have one knob controlling pitch by 1 semi-tone increments and another for fine tune.

This brings up a good point about automap. It allows a lot of freedom with how parameters respond to controls on the hardware. I think it's pretty essential to be able to adjust the step size/resolution for parameters since so many function differently. There are controls out there that also don't use up the whole range of a parameter, like menu items where the only the first few values are used and the rest is empty. I'm still considering buying a nektar but as far as I understand is doesn't have the ability to adjust the set size or resolution or min/max of a control to deal with this kind of thing.

I think auto map got it mostly right, except that there is no quick way to jump to different pages. The single page buttons are just a workflow killer for any larger plug-ins. But the Nektar has a page scroller where you can see the name of the parameter page, which really appeals to me. That's how it should be, it shouldn't matter how many controls there are, you should be able to jump to the one you want right away. Automap ruined it's usefulness with so many plug-ins by making you go to each next page one at a time.

Post

Doc Brown wrote:Could you please explain the difference between "host" automation and "midi cc" automation?
That is a big question. I'm not sure if I'm qualified to answer. It's possible to control parameters with very high resolution, through host automation but it also depends on how the parameters are implemented in the plug-in and how they are scaled/quantized by the DAW. There are other benefits but ultimately the controller is still transmitting MIDI, just not necessarily as standard CCs.
Doc Brown wrote:I am going to map my analog knobs and faders to the software via the midi learn feature. My host Reaper also supports parameter learn even if the soft synth doesn't support midi "learn".

Is there any advantage to either method? Is the resolution the same for both? I think Reaper's MIDI learn system uses automation parameters but I don't know if
I think Reaper does use automation parameters for it's MIDI learn system but I don't know how it handles high resolution or incremental control data.
Doc Brown wrote:Lastly, is the resolution basically 0-127 for pots and sliders using the Doepfer or the livid instruments midi interfaces?
I have no idea, you would have to ask them.

Post

Echoes in the Attic wrote:What I did was assign a couple buttons to up/down octaves by one octave only (so it couldn't reset the detune). Then I have one knob controlling pitch by 1 semi-tone increments and another for fine tune.
The best compromise I found was to set controls to +/-6 jumps on Octave (rather than 12) and use the full +/-30 range. 6 is a multiple of both 30 and 24, so it works surprisingly well to maintain tuning, and you just make sure you don't take the last step past the min/max. Then I'll just tune the rest of the way with the full res 6001 point Detune.
There are controls out there that also don't use up the whole range of a parameter, like menu items where the only the first few values are used and the rest is empty.
Yep. On that note, did you know Diva's code rounds the menu automation values differently on the top half of the synth Vs the bottom half? The top takes the correct amount of 24 steps to automate, whereas you have to assign 25 steps on the bottom half so it rounds the values properly, leaving you with one step left deliberately blank for it to work without skipping steps. It's pretty cool Automap's resolution options are flexible enough to work around these sorts of bugs.
I think auto map got it mostly right, except that there is no quick way to jump to different pages
Yes. In fairness, I agree Novation did a lot of things right with Automap. I wish they would find an alternative to wrapping though, because it causes far too much stability issues. Some of them, like the graphics corruption in Diva's VST3, are probably not even Novation's fault! But the fact that they wrap dll's makes their system prone to all sorts of issues like that. It's also crazy not to be able to hook up two Remote SL's and let it see it as one big controller.. You'd think they might want to sell extra controllers :)

I agree about the pages too. Replacing that with nested controls would be the biggest thing they could do for their controllers. If anyone's reading this and wondering why that's such a big deal, here's a plain English example..

How would you map the FX part of Diva? There's 2 FX slots, each with 5 effect types. That's 10 FX with a total of almost 80 controls. How do you 1:1 map all that without a control surface the size of a house?! The answer: you can't.

A nesting system means you could set aside 10 knobs and 2 buttons. This figure is because no effect requires more than 10 knobs (the delay) or 2 buttons (the two Rotary FX drop down menus). You'd then use a further 10 buttons - five for selecting the first slots 5 FX, and 5 for the second slots FX. Each of these 10 effect buttons would have the ability to change the CC (or host automation) values assigned to the other 10 knobs and 2 buttons so that they controlled whichever of the 10 effects you selected.

Now you have the entire Diva FX system mapped to 10 knobs and 12 buttons, and accessing any FX control is never more than a single button push away! That is the power of what a nested controller system would give you.. it would make a gigantic difference for generic control.

On Novation's current system a full control map of everything host automatable in Diva takes a dozen pages to do in a somewhat logical way, and the FX themselves take 3 of those pages. You might have to scroll back and forth through as much as 12 pages just to get to the parameters you want. It's enough of a hassle that most people will end up sticking to their mouse, or never make maps more than a page or two in size.

Nested controls still don't replace the need for enough physical controls. You'd still want a control surface at least as big as a Remote SL, and ideally twice the size, to have enough controls to work exceptionally well with software like Diva. But with the physical controls, and enough nested logic, you get as close as you're ever going to get to being on par with a dedicated control surface.

Unfortunately, I don't know anyone making that product yet :)

Post

Sorry guys. I have answers to your questions but unfortunately not a lot of time to write them down. :dog:
To answer two big questions quickly:

Diva's Tune parameters were a bit frustrating. We have some flexibility when it comes to scaling parameters but I couldn't find a way to stick to semi-tone values or anything that made sense. Hopefully we can find a solution for this kind of parameter in the future.

What you refer to as "nested controls" is handled by what we call "value dependent controls". I will use your example of Diva's effect section. The effect section has a handful of parameters for each effect type, and each effect type corresponds to a range of values for the "Effect Type" parameter. We can change the mapping of the effect parameters based on those value ranges, so when the chorus effect is active, you only see chorus parameters, when the delay is active, you only see delay parameters, etc. This way you don't have to change pages each time you change the effect type, because it happens automatically.

Post

justin3am wrote:Diva's Tune parameters were a bit frustrating. We have some flexibility when it comes to scaling parameters but I couldn't find a way to stick to semi-tone values or anything that made sense. Hopefully we can find a solution for this kind of parameter in the future.
You just need a "quantized" parameter that is centered / bi-polar. In case of Diva's octave control, it splits 60 semitones into 5 segments, or 6 points. However, as it's bipolar it needs a point in the center. Thus one segments is split in two parts below and above the 5 remaining points. The sixth point is omitted because it now lies outside the parameter's range.

This allows a "modulo" parameter that fine tunes within those segments to be bipolar as well.

It's an extremely useful setup that translates to many real world examples.

Post

Urs wrote:It's an extremely useful setup that translates to many real world examples.
Can you name a single hardware controller which can automate octave/range correctly without resetting the detune position then? :)

You're explaining how the control works, which isn't actually the issue!! The problem is caused because two controls are automating the same thing, and both expect to react in different ways. This causes the value range for one control to be outside of the expected range for the other control, and the controller needs to know how it should deal with things when it comes across this unexpected condition.

Basically, to solve this, a controller needs the ability to send +12 up to a value of +24, but not send +12 if the present value is greater than +18, and send -12 down to a value of -24, but not send -12 if the present value is less than -18. If it has this extra logic then things will work as expected. I'm not aware of a hardware controller which can do that.

Post

PAK wrote:
Urs wrote:It's an extremely useful setup that translates to many real world examples.
Can you name a single hardware controller which can automate octave/range correctly without resetting the detune position then? :)

You're explaining how the control works, which isn't actually the issue!! The problem is caused because two controls are automating the same thing, and both expect to react in different ways. This causes the value range for one control to be outside of the expected range for the other control, and the controller needs to know how it should deal with things when it comes across this unexpected condition.

Basically, to solve this, a controller needs the ability to send +12 up to a value of +24, but not send +12 if the present value is greater than +18, and send -12 down to a value of -24, but not send -12 if the present value is less than -18. If it has this extra logic then things will work as expected. I'm not aware of a hardware controller which can do that.
Well, if you MIDI Learn it with our built-in system it works as advertised. Thus it can't be too hard to implement. Please complain to hardware manufacturers, we are happy to share our 7 lines of source code that do the trick with MIDI.

If this discussion gets dragged on and on and on and on and on forever, then we'll happily offer a skin for Diva that has it all in a single knob, like the Digital Oscillator already does, but for all models.

Why on earth if one wants a hardware controller so it needs to correspond to the UI, is also beyond my comprehension.

It's done. It's better for mousing. It won't change.

Post

Urs wrote: You just need a "quantized" parameter that is centered / bi-polar. In case of Diva's octave control, it splits 60 semitones into 5 segments, or 6 points. However, as it's bipolar it needs a point in the center. Thus one segments is split in two parts below and above the 5 remaining points. The sixth point is omitted because it now lies outside the parameter's range.

This allows a "modulo" parameter that fine tunes within those segments to be bipolar as well.

It's an extremely useful setup that translates to many real world examples.
Thanks Urs, that information is very helpful. I hope I didn't come across as criticizing what you have done. I understand the usefulness in the way the tune parameters work, in practice. It's just an example of something we can improve in our plug-in mapping implementation. :)

Post

Urs wrote:Why on earth if one wants a hardware controller so it needs to correspond to the UI, is also beyond my comprehension.
It's not about that Urs. Where on earth did you pull that from? It's about avoiding unexpected / unwanted behaviour, like a value jump or resetting in this case. That's all. Nothing more or less.

The reality is you've implemented something in a way which doesn't work with ANY (afaik) host automation based controllers. Yep, you can "ignore" that an Octave button exists, but it's a pretty big range and so workflow benefits from an Octave control. So, even if you'd put out Diva without an Octave control in the first place, I'd still have implemented it on the hardware side :)

Since it is there, is it unreasonable for people to expect you give them a way to automate it without causing these position resets when using actual host automation? You sure make it feel like that! :)
It's done. It's better for mousing. It won't change.
I know it won't Urs :) You like your idea, and that's all that matters. Nothing wrong with that, except for the fact that the rest of the world doesn't operate to that.

So, here we are, two and a half years later, and still nothing can automate that aspect of Diva without causing resets, and host automation is the only viable method to fully automate all of Diva. There's nothing wrong with your idea in principle Urs, but you should've at least tried to carry some of the bigger hardware devs along so they had solutions to work around it with their controllers.

Btw - You think it works that well for mousing? You must have about 5 metres of deskspace in front of you to travel the whole range in one go? :D

Post

PAK wrote: Btw - You think it works that well for mousing? You must have about 5 metres of deskspace in front of you to travel the whole range in one go? :D
Mousewheel works here, if we're talking about a skin with no footage knobs.

I do tend to think the difference between GUI and some hardware control schemes are not really all that troubling. You've noted that that things are not at all impossible in automap, just a certain step is partially complicated. It's already a less-than-seamless option due to the paging, so :shrug:

Post

Interesting thread. I do find the best plugins are very convincing sonically. The frustration for me is editing via mouse. The only thing I miss about my hardware synths are the dedicated control surfaces.
Urs wrote:Why on earth if one wants a hardware controller so it needs to correspond to the UI, is also beyond my comprehension.
I bought a Novation Remote Zero SL a long time ago and tried using it. There are not enough knobs to control everything on the screen (unless you flip through pages). So you have to make some adjustments with the hardware controller and others with mouse. I found switching back and forth between knobs and the mouse confusing since the physical layouts did not correspond. In my experience, it was easier to use the mouse 100% of the time instead of "context switching" between knobs and the mouse. My Remote Zero is now an expensive paper weight.

Since building specialized control surfaces for each plugin would be expensive, I think a good compromise would be giving plugins alternate skins that correspond to popular control surfaces.
PAK wrote:Btw - You think it works that well for mousing? You must have about 5 metres of deskspace in front of you to travel the whole range in one go? :D
Yes, Diva's fine control (Shift) is too fine for me requiring the mouse to move very far to have any affect on the sound. I would like to have an option for adjustments in between course and fine - maybe the Alt key?

Post

xh3rv wrote:Mousewheel works here
I know.. I was just imagining Urs going from one side of the room to the other, with his mouse on a giant conference style desk, to demonstrate why the truly endless nature of it all was so important.. (The reality being you still have to stop and lift your mouse or finger at some point ;) )
I do tend to think the difference between GUI and some hardware control schemes are not really all that troubling. You've noted that that things are not at all impossible in automap, just a certain step is partially complicated. It's already a less-than-seamless option due to the paging, so
That's true and I agree. But this particular issue is caused by U-he saying "Psst.. See that Octave control there? It doesn't really exist for hardware control!"

Urs then posts "WTF does it matter?.. Do people really want to lovingly mimic our GUI so much?!" (D'oh!!!)

Of course, the answer is "no". It just so happens octave controls are actually a useful thing, and the way we presently have to fake them with host automation causes issues which can't be solved due to the reasons outlined.

Urs could fix the issue and still keep his idea. It would require creating an additional control which is only exposed in host automation. The problem is Urs thinks this is highly unreasonable to expect. Instead of U-he being required to code something, every single hardware maker should recode their controllers with additional logic to be able to handle a condition.. which only happens in Diva.. because Diva provides no way to automate an Octave control.

As far as Urs is concerned, what's the problem? He's figured out how to get standard MIDI to work with it. Y'know.. the same thing which makes it pretty much impossible to automate Diva fully. Those hardware guys can update their code. Except 2.5 years later, how's that attitude worked out?

Oh well. FWIW.. I'd encourage people to go the host automation route. It works well.. this is more like the cosmetic equivalent of a wart on its nose :clown: :D

Post

xh3rv wrote:Mousewheel works here, if we're talking about a skin with no footage knobs.
Frantz wrote:I do find the best plugins are very convincing sonically. The frustration for me is editing via mouse.
The PowerMate is cool:

Image

You hover over the knob with your mouse and turn the PowerMate, it acts like a mouse wheel but with better control. I think it would be especially good with a touchscreen, that would be like editing a Moog Source or Studio Electronics ATC, which is awesome.

http://www.youtube.com/watch?v=uogntlyV4Gw

Post

PowerMate looks promising. Thanks.

Post

justin3am wrote:I humbly suggest taking a look at Nektar Technology's Panorama series controllers.
I spent quite a bit of time perfecting our plug-in maps for Diva, ACE and soon, Bazille. As with Kore, the Panorama series uses host automation rather than MIDI CCs for high resolution control of plug-in parameters and we create custom menu structures that make sound design intuitive (for example, when controlling Diva's oscillators, filters, envelopes and effects, the parameter mapping updates dynamically when you change modes to reflect the parameters which apply to the currently selected mode).

At the moment our plug-in maps only work in Cubase but we have plans to implement the plug-in map functionality in other DAWs as well.
That sounds great... if you happen to use Cubase... when it works for Live, I'll likely buy a Panorama! ;-)

Post Reply

Return to “Instruments”