Voltage Modular + Windows Touchscreen

For discussion of the Voltage Modular synthesis ecosystem.
Post Reply
HowlingMod
Posts: 98
Joined: Thu Feb 28, 2019 4:17 pm

Voltage Modular + Windows Touchscreen

Post by HowlingMod » Sat Feb 27, 2021 2:00 pm

i recently acquired a touchscreen, replacement of one of 3 monitors.

voltage modular seems to work quite nice with a touchscreen, but 2 things kills the workflow;

no scrolling (yes with the sidebars, or how do you call them, but that is better with the mouse), the least problematic thingy.

when drawing cables, voltage modular does not scroll. when a module, or input or output is not in visible range, like drawing a cable with a mouse.

i don't think this will have any priority. but still. there are touchscreen users. perhaps it is simple or not. (in JUCE it is simple....).

my main purpose for a touchscreen is the studio, or the only purpose, because some brands brake their own software, while it are great controllers, but plugins that haven't a fixed parameter set, like voltage modular, or LION, or MSoundFactory, many others.. mapping isn't possible (it is, but to make a map for each patch???).

i saw in the facebook group, that someone with a MAC, also has the same result; not scrolling when drawing cables.

you never know, if don't ask the question, you don't get it. but i can get, this isn't a priority (sssht, VCV isn't capable at all, and it will problably never be..).
i7-6700K (@4.4), 32 gb, gtx 1060 6gb, win 10 pro. voltage modular core; psp ultimate, andrew macaulay ultimate, ben davis complete, MRB, Vult, Weevil, one & two year bundle etc. (446 modules)

https://soundcloud.com/sada-exposada

ColinP
Posts: 85
Joined: Mon Aug 03, 2020 7:46 pm

Re: Voltage Modular + Windows Touchscreen

Post by ColinP » Sat Feb 27, 2021 3:03 pm

Yes, I too would like to see VM auto scroll when dragging a cable to the edge of the window when using touchscreen - just like it does with a mouse or touchpad.

In my mind a touchscreen should have almost identically behaviour to a mouse or touchpad. Because it doesn't I never really use the touchscreen in VM instead opting for the mouse.

Scrolling in general is a problem in VM. I'm often working with very large patches and use the cursor keys and mouse wheel to scroll but the screen redraw is glacial. It seems like about 10 times slower and less smooth than it ought to be. I'm not bothered about silly effects like cable swing, I just expect a bit block transfer to do the scroll and then VM to draw the small part of the screen that needs refreshing at blazing speed. It ought to be like super super smooth (at, or close to, screen refresh speed when running on a powerful computer). But then I am a retired games programmer.

Drag select also doesn't work as expected. If I want to select a group of modules I have to begin the operation on a bit of unoccupied cabinet space. I'd expect it to work on a bit of module that isn't occupied with controls (like the right-click operation is different when on a control or a blank bit of a module).

What I intuitively expect to happen is that a drag operation (by mouse, touchpad or touchscreen) on a control changes the control's setting, a drag on the top of a module moves the module, a drag on a part of a module other than a control or the top creates a rectangular selection lasso so that I can select multiple modules and finally that a drag on an unoccupied part of a cabinet scrolls everything so that I can (very quickly and smoothly) change what is in view in the window.

I realise that these suggestions are of such a low priority that they might never be adopted but it would be great to see VM behave like this eventually.

User avatar
rsover
Posts: 39
Joined: Wed Mar 04, 2020 1:53 pm
Location: Romania
Contact:

Re: Voltage Modular + Windows Touchscreen

Post by rsover » Sat Feb 27, 2021 8:40 pm

To improve scrolling while patching cables, a feature to allow better workflow would be to implement a hold cable in the jack functionality.
I know that we have the Command (probably Ctrl on Windows) to keep the cable in while inserting in many outputs, but works only when holding the key. This does not allow scrolling with mouse or other operations to be made.

Holding cable could be initiated with Command + click but (keep that state even if I let go of Command), and when finished patching the cable destinations (I can use the mouse scrolling) I can press the Command and the cable is no longer pinned. This might conflict with other shortcuts like command+zooming.
Alternatively the end of the Hold operation can be done with other shortcut, but not sure what are all the shortcuts.

By the way, is there any cheatsheet with all the shortcuts?

Other shortcuts improvements can be done by utilizing the full keyboard when not having the mini midi keyboard on screen.

Navigation improvements could be done by allowing jumping on the cabinet rows with hyperlinks (keyboard shortcut or midi learn).

I use Apple Sidecar on a IPad and with the Pen as an alternative to the mouse.
Voltage Modular, Arturia V Collection / Ableton Live 10 Lite

MacBook Pro 2019, 2,3 GHz 8-Core Intel Core i9 (16GB Ram), OSX Big Sur (11.0.1)

HowlingMod
Posts: 98
Joined: Thu Feb 28, 2019 4:17 pm

Re: Voltage Modular + Windows Touchscreen

Post by HowlingMod » Tue Mar 02, 2021 1:51 pm

ColinP wrote:
Sat Feb 27, 2021 3:03 pm
Yes, I too would like to see VM auto scroll when dragging a cable to the edge of the window when using touchscreen - just like it does with a mouse or touchpad.

In my mind a touchscreen should have almost identically behaviour to a mouse or touchpad. Because it doesn't I never really use the touchscreen in VM instead opting for the mouse.

(...)

I realise that these suggestions are of such a low priority that they might never be adopted but it would be great to see VM behave like this eventually.
i don't make very large patches, mainly because, i don't know, haha.. because a patche of a few rows, in my case, is already too full, of sound, or too full; rich..

i am trying to make larger patches, to broaden my horizon...

a touchscreen is seen as a mouse, yes, but still, i couldn't find any information about the differences, a trackpad on a laptop works as expected. you think a touchscreen could the same. i didn't have set my desktop to tablet mode, will that change anything. yes, where are my shortcuts...

low priority, but i am already glad that a have a more direct control/interaction with VM, as an instrument, for tweaking knobs and buttons, very responsive in that way, strangely.
rsover wrote:
Sat Feb 27, 2021 8:40 pm
To improve scrolling while patching cables, a feature to allow better workflow would be to implement a hold cable in the jack functionality.
I know that we have the Command (probably Ctrl on Windows) to keep the cable in while inserting in many outputs, but works only when holding the key. This does not allow scrolling with mouse or other operations to be made.

Holding cable could be initiated with Command + click but (keep that state even if I let go of Command), and when finished patching the cable destinations (I can use the mouse scrolling) I can press the Command and the cable is no longer pinned. This might conflict with other shortcuts like command+zooming.
Alternatively the end of the Hold operation can be done with other shortcut, but not sure what are all the shortcuts.

By the way, is there any cheatsheet with all the shortcuts?

Other shortcuts improvements can be done by utilizing the full keyboard when not having the mini midi keyboard on screen.

Navigation improvements could be done by allowing jumping on the cabinet rows with hyperlinks (keyboard shortcut or midi learn).

I use Apple Sidecar on a IPad and with the Pen as an alternative to the mouse.
yes that is also a great option, or windows you can use the surface as an 'iPad' with touchable, i believe.. or i am wrong, i am trying to get the full potential of the touchscreen, so i write in several threads now, and people have different goals and setups.

it is strange; softube modular; drawing a cable; scrolls, gesture for scrolling, one finger! it works, knobs, easy.

buttons... no. it works, but with double touch (double click as it were..), and that does work erraticaly, mainly i think, i have small fingers, but still, a capacitive pen would solve that.

and it is strange: in Voltage Modular, buttons; work perfect, as knobs. but no scrolling...

and indeed, what are the shortcuts, i tend to forget always about shortcuts.. but they are quite handy...

and @ColinP again, the workflow in VM with modules is ok, better than in softube modular, but sometimes, softube modulars acts more predictable..

drag select does not always work correctly indeed. you get used to it, but still.

how big are your patches???

i have always believed that cherry audio, from the beginning that i own VM, about 2 years now, always had problems with their 'GUI thread'.. or GUI under-the-hood implementation..

i don't know what handles what, modules are in jave, but in a C++ 'box'. i am not well-versed anymore in programming terms, i never was a programmer, nor educated for it, but i could program, and pretty well. so it sometimes handy, to know how something is built.

if VM was completely JUCE, a touchscreen wouldn't be a problem, that i know, there is library for it. easy.

but i am glad, that their is some response. and perhaps, cherry audio, doesn't have to do a lot, to make it more touchscreen friendly, it depends, on the depencies, API's, how they implemented it all.. i don't have a clue how it works...
i7-6700K (@4.4), 32 gb, gtx 1060 6gb, win 10 pro. voltage modular core; psp ultimate, andrew macaulay ultimate, ben davis complete, MRB, Vult, Weevil, one & two year bundle etc. (446 modules)

https://soundcloud.com/sada-exposada

ColinP
Posts: 85
Joined: Mon Aug 03, 2020 7:46 pm

Re: Voltage Modular + Windows Touchscreen

Post by ColinP » Tue Mar 02, 2021 8:21 pm

how big are your patches???
Pretty big. Many screens in height, but this space isn't full of sound producing modules. Most of the space is taken by sequencing modules as I am working on creating large scale compositions - complete songs with multiple instruments.

On scrolling I don't think it's slow and jerky because of any underlying technology but rather that VM simply hasn't been optimised for scrolling around large scale patches. I might be wrong but when I scroll VM it appears to be doing a complete screen redraw, which is fine if you rarely scroll.

The way to do a fast scroll is to not redraw the entire screen but use what's called a bit block transfer (also called a BITBLT or by graphics programmers just a "blit") this copies the bit of the screen that remains the same to a new position and as it's handled by graphics hardware rather than the CPU the data movement is done at incredible speed. Then you are left with a tiny rectangular or "L" shaped area that does need to be redrawn, but because it's a small area it can be rendered quickly. So on a vertical scroll only an area that is the width of the window and say three or four pixels high needs to be drawn.

On a modern computer this small area should be able to be redrawn in less than 1/60th of a second. So if the scroll jumps in four pixel steps then in one second you should be able to scroll 240 pixels in a nice smooth motion. A more sophisticated version changes the jump size so that the scroll starts off moving one pixel per refresh and accelerates on repetition so that you get a lovely smooth response that can deliver pixel precision slow scrolling or zoom by at a hell of a pace to flash through thousands of pixels. You would have seen this mechanism countless times on your phone.

...Which brings me to something I forgot to mention on touch screen interaction. VM could respond to two-finger zoom gestures too.

EDIT:

Hmm, I might be wrong here as looking closer at the scrolling when dragging the scroll bars the response is pretty fast, it's still jerky but looks fast. So the scrolling might just need a little bit of work to smooth the jerking motion that I'm getting with the cursor keys and mouse wheel. Adding some low-pass filtering to the scroll x and y position might make a huge difference.

HowlingMod
Posts: 98
Joined: Thu Feb 28, 2019 4:17 pm

Re: Voltage Modular + Windows Touchscreen

Post by HowlingMod » Wed Mar 03, 2021 7:59 am

ColinP wrote:
Tue Mar 02, 2021 8:21 pm
how big are your patches???
Pretty big. Many screens in height, but this space isn't full of sound producing modules. Most of the space is taken by sequencing modules as I am working on creating large scale compositions - complete songs with multiple instruments.

On scrolling I don't think it's slow and jerky because of any underlying technology but rather that VM simply hasn't been optimised for scrolling around large scale patches. I might be wrong but when I scroll VM it appears to be doing a complete screen redraw, which is fine if you rarely scroll.

The way to do a fast scroll is to not redraw the entire screen but use what's called a bit block transfer (also called a BITBLT or by graphics programmers just a "blit") this copies the bit of the screen that remains the same to a new position and as it's handled by graphics hardware rather than the CPU the data movement is done at incredible speed. Then you are left with a tiny rectangular or "L" shaped area that does need to be redrawn, but because it's a small area it can be rendered quickly. So on a vertical scroll only an area that is the width of the window and say three or four pixels high needs to be drawn.

On a modern computer this small area should be able to be redrawn in less than 1/60th of a second. So if the scroll jumps in four pixel steps then in one second you should be able to scroll 240 pixels in a nice smooth motion. A more sophisticated version changes the jump size so that the scroll starts off moving one pixel per refresh and accelerates on repetition so that you get a lovely smooth response that can deliver pixel precision slow scrolling or zoom by at a hell of a pace to flash through thousands of pixels. You would have seen this mechanism countless times on your phone.

...Which brings me to something I forgot to mention on touch screen interaction. VM could respond to two-finger zoom gestures too.

EDIT:

Hmm, I might be wrong here as looking closer at the scrolling when dragging the scroll bars the response is pretty fast, it's still jerky but looks fast. So the scrolling might just need a little bit of work to smooth the jerking motion that I'm getting with the cursor keys and mouse wheel. Adding some low-pass filtering to the scroll x and y position might make a huge difference.
ok, yes when i have big patch mostly also sequencers, mainly for cv.. and utilities. but still my patches aren't that big.. the way i use it o wel..

nice to hear from a programmer how it works in detail, yes i know, and you can see it that, it depends on programs, that redraw or better draw what is not visible, is 'on the fly', sometimes, it fails, and you see it.. on windows it does not happen that much anymore, but in my time, loooong time, you could see white areas, sometimes.

and word processors; they do it, and still you see sometimes 'mistakes', fonts not drawn correctly, most of the time when you scroll too fast and if the were half visible.. scrolling back and forth.. strange, that it still happens, sometimes. i write a lot..

thanks for the insight. yes smartphones, i still call them that way, it seems 'old', do it nicely, even my old smartphone, very old one.

yes i scroll mostly with the scrollbars, strangely, with mouse (+shift for left to right and back..) works better, but still, i tend to scroll with bars.
i never noticed jerky drawing, but you have an eye for it, i look for the module i want to see... it is quite fast.

but back to touchscreen! two-finger gesture would also be nice, some modules recquire zooming, others not so...

so

1. when drawing a cable, scrolling as with mouse.
2. scrolling (left to right, up and down).
3. zoom (two fingers).

(i did not contact cherrry audio directly, i díd contact softube, they dont test it, or can't test it?? but strangely; scrolling works, drawing a cable; automatic scrolling. zoom does not work, but that isn't a part of softube modular, so..
it all works in softube modular except the buttons, they expect a 'click', and in voltage modular it works for buttons, without problems. because in softube modular, the focus gets to the knob you touch, and sometimes it retains its focus.. perhaps with some 'training', i can use the buttons in softube modular...)

it is remarkable that buttons work as expected for a touch screen, in VM. other plugins suffer also from it, like LION, and i think i can get, because of it, that it stops making sound, the soundengine 'thread'/'process' goes with a bang.... changing preset, gives sound back, but me patches from scratches... but still perhaps with some 'training', i can get LION to act tamed..

on another forum, that i visit everyday, a 'local' forum, i see that more people as expected, use a touchscreen, or iPad/surface with an app.

still a niche, i guess. but nice if Voltage Modular is completely touchscreen friendly, it will be the only one (of the big names).
i7-6700K (@4.4), 32 gb, gtx 1060 6gb, win 10 pro. voltage modular core; psp ultimate, andrew macaulay ultimate, ben davis complete, MRB, Vult, Weevil, one & two year bundle etc. (446 modules)

https://soundcloud.com/sada-exposada

Post Reply