QLC+ 5 Preview - Update #1

A place where updates of QLC+ activities and technical articles are posted as if it was a blog
User avatar
mcallegari
Posts: 4446
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

And to inaugurate this brand new area of the QLC+ forum, what else is better than a fresh update of the QLC+ 5 developments ?

So, here's the video, right away

It's clearly a preview and there are indeed unfinished features and a few glitches that I will correct in time.
The meaning of the video, for now, is mostly "this is what I have in mind and where I got so far, do you like it ?" :)

There are two things that I like to point out about this video:
- Do not ask for a release date !
- It has been recorded in 1280x720 for YouTube, so everything seems to be too crowdy. On resolutions like 1280x1024 up to 1920x1080, things look much better ! As for tablets, I'd say this UI is suitable for 1024x768 and above.

Since when I record videos I don't have a list of things to show (and my memory apparently is getting faulty...) I always forget some bits.
One is a thing that has been requested by users a few times: percentage values everywhere.
I listened, and I did it.
intensity_tool_dmx.png
intensity_tool_dmx.png (9.57 KiB) Viewed 15583 times
intensity_tool_perc.png
intensity_tool_perc.png (8.55 KiB) Viewed 15583 times
fixture_dmx.png
fixture_perc.png
Basically whenever there are DMX values, there will be percentage values as well.

Another thing I forgot is that when you start setting DMX values in a view, either DMX or 2D (for now ;) ), you can dump them into a new Scene, but at some point you will need to reset the current values and start fresh. Well, that's the CTRL+R key combination and it's already implemented.
I will add a couple of buttons at the bottom of the left panel, so touchscreen users will be able to select/deselect all the fixtures (CTRL+A) or reset DMX values (CTRL+R)

I did the mistake of clicking on the "Grid View" button, but that's indeed an unfinished business ! The performances to render 512 squares are terrible, especially on Android, so I will probably start fresh and write it again.
The grid area will be multi-purpose. It will show the Universe DMX map, but also fixture groups displacements (those used by RGB matrices) or the complete fixture information.

At this stage of the developments, I am still learning a lot of this "new" technology that I am using, called QML, so I write code, continue to write, and then rewrite some parts cause I discovered great optimizations meanwhile.

To give you the idea, the QLC+ 4 UI is written 95% in C++ and 5% in XML.
The QLC+ 5 UI will be written 50% in C++, 45% in QML (which is JSON-like code) and 5% in JavaScript. This all because QML and JavaScript can run small pieces of code in a declarative language, instead of a tough language like C++.
However, the UI logic heavy lifting will be performed in C++...I do not trust QML that much for now...

The whole "new UI" process is very slow though...slower than I expected, but...the QLC+ 4 UI took more than 10 years to become what it is now, so I guess patience is a virtue at this stage.

I'll probably use this blog area to share a few updates more frequently, and produce a video when I have a consistent number of things to show.

Next in my list are (hear hear): the Chaser Editor and the Virtual Console :)
OddSocks
Posts: 152
Joined: Tue Apr 14, 2015 11:33 am
Real Name: Tim Cullingworth

I think that this new direction looks very exciting.

Keep up all the good work and forgive us if we are impatient with waiting to play with the new "BEAST" ;-)
jacobuserasmus
Posts: 1
Joined: Wed Aug 12, 2015 2:27 pm
Real Name: Jacobus Erasmus

I just want to say whoa great work. I check in on qlcplus every now and then to see what is happening and what the advances are.
gmint
Posts: 114
Joined: Wed Apr 15, 2015 8:04 pm
Real Name: George Qualley IV

Massimo,

As always, the work looks great. Just one comment that I would have based on what you've indicated thusfar. I find it very useful to be able to use QLC+ on a touchscreen and while it seems very antiquated, a good number of touchscreens (especially ELOs which are suitable for more rugged environments i.e. wet fingers) are still at 1024*768. I assume that it wouldn't be a problem to design a VC layout for this screen size, but would you anticipate being able to actually do some programing on a monitor of this size?
User avatar
mcallegari
Posts: 4446
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

gmint wrote:I assume that it wouldn't be a problem to design a VC layout for this screen size, but would you anticipate being able to actually do some programing on a monitor of this size?
Well, that's the idea. When I started the analysis of the new UI I considered the current situation of touchscreens and I'm trying to design the layouts to be always usable on smaller screens. Obviously everything has a limit.

There are 2 considerations here:
1) the biggest constrain of touchscreens is the size of a finger (which apparently is around 40 pixels) so everything must be sized around that value, even if it looks too big on a desktop PC. I will probably end up having some global properties where one can set the UI scaling
2) the situation on Android is quite fragmented, while on iOS we know exactly what there's around. Apple is still strong on tablets, so I believe the reference device is the iPad. The first generation had a 9.7" / 1024x768 screen.
I would say tablets below those inches/pixels are in a "use at your own risk" zone. I don't see how a 7" tablet can help other than for a pure Virtual Console usage.

There's also a footnote that I need to point out:
1) I don't have an iPad
2) While on Android it is possible to create an app (signed or unsigned APK) and load it manually, on iOS it is not possible.
Everything must enter a iOS device through the Apple Store. This little trick costs to developers $99 per year. So basically if I've got my Mac ($1000) and my iPad ($500) sitting next to it on my desk, I still have to pay $99 to transfer my application into it, even if I'm the sole user of that app.
To publish an app on Android, Google requests something like €35 one shot.
Now this makes me sick and I'm still thinking if I really want to board myself into this crap.
Unfortunately the iPad is so damn popular, especially in the US, but to pay off those stupid $99 I would have to give a price to QLC+ on iOS...and consequently on Android too, to make no difference between users.
That is not how I would like to do things.

Thanks Apple...again.
gmint
Posts: 114
Joined: Wed Apr 15, 2015 8:04 pm
Real Name: George Qualley IV

Massimo,

First, one think I wanted to mention about the video: I love the ability to drag and drop to a collection. I use collections a ton and this will be a huge timesaver for me. I can't wait for that.

On the touchscreen front, as long as it's usable on a 1024x768 display, I think you're pretty much set. That said, I have a couple of thoughts (which are really nothing more than that, so don't take this as me trying to influence your vision in any way). What's your thought with how a DMX interface would work on a tablet? Are we talking something like plugging a USB to DMX adaptor in to the device, or are you thinking something more along the lines of Art-Net or E.131 only?

It certainly won't stop people from using an iPad, but when you consider all of the dongles and such that you need to get something workable for a serious show, it seems to make more sense just to go with a computer. First, there's the cost. Something like the Enttec ODE is like $200 more than the OpenDMX. Second, there's the complexity of making a device that was never designed for this purpose work in a fairly complex environment. If you go wireless from the iPad to some sort of a wired bridge, then at least you eliminate the physical connection to the iPad but let me tell you, I have some wireless DMX hardware and while it works fairly well, it's certainly not perfect. As far as Wi-Fi goes, I'd be really, really hesitant to trust that in a live situation (case in point: I recently acquired a couple of very, very cool Behringer X-Air mixers which are controlled by a computer or iPad but one of the first things I've done is to make sure that I have a hardwired connection to the mixer for shows because the wireless tech just isn't to the point where it can be trusted in critical environments).

That's just my two cents, of course but I thought this through for quite some time and I just can't see any way that an iPad or a tablet would be a real advantage over an actual computer in most cases.
User avatar
mcallegari
Posts: 4446
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

gmint wrote:What's your thought with how a DMX interface would work on a tablet? Are we talking something like plugging a USB to DMX adaptor in to the device, or are you thinking something more along the lines of Art-Net or E.131 only?
George, thanks for raising this important topic.

I have already investigated the possibility to have the USB DMX plugin (so libFTDI) to work on Android. In theory it is possible, but as you said, tablets are not made for that and I wouldn't use them for a show either. Unless it's a very small show.
On the iPad, I don't even know if it is possible to connect USB devices to it ?

The QLC+ truly "native" plugins are ArtNet, E1.31, loopback and OSC. I have rewritten the OSC plugin from scratch for this reason: running everywhere.

This leads to wider considerations then.

The UI I am writing has several purposes:
- look the same on every platform
- can be used with fingers instead of a mouse (this consider also PCs with touchscreen, Raspberry Pi + TS, Windows tablet PCs, etc...)
- cover mobile platforms like Android and iOS. This is purely thanks to Qt.
- keep up-to-date with the latest Qt technology. They are now focused on QML, and several parts of the code take advantage of OpenGL rendering accelerations (if available), resulting in more fluid UIs. Qt is a constantly evolving world and if you don't keep the pace, you risk to end up as a corner case, and no one will give you support anymore. For example, with Qt 5.6 they will deprecate the QtScript module, which QLC+ uses for RGB scripts. So I already know that I will have to rewrite the RGB Script engine using another Qt module.

So, to get back to your point. What's the purpose of QLC+ on "mobile" tablets ?
I think the answer at the moment is: we'll find out in time.

An example scenario that come up in my mind is a guy designing his next show on a tablet...on a plane.

Another case I can imagine is (which would require a bit of work though...):
- a PC with QLC+ with all the DMX adapters, running a big show
- 4 tablets with 4 technicians, controlling different parts of the show simultaneously
This would mean QLC+ on mobile could have a "remote" mode to control another QLC+ running on a different machine.
Quite different from the web interface in the sense that each tablet would have the whole project loaded, so every tablet can do real VC operations like re-assign a function to a button or a slider, live edit a function, etc..
This would require a dedicated channel (or a plugin) to synchronize each QLC+ instance to the others.
Wouldn't it be cool though ? :)

I think we can discuss here what users foresee (or wish) for QLC+ on mobile platforms. So, ideas season is open ! :)
User avatar
mumbles
Posts: 113
Joined: Thu Jul 16, 2015 4:39 am
Location: Central USA
Real Name: Justin

mcallegari wrote:
gmint wrote:What's your thought with how a DMX interface would work on a tablet? Are we talking something like plugging a USB to DMX adaptor in to the device, or are you thinking something more along the lines of Art-Net or E.131 only?
George, thanks for raising this important topic.

I have already investigated the possibility to have the USB DMX plugin (so libFTDI) to work on Android. In theory it is possible, but as you said, tablets are not made for that and I wouldn't use them for a show either. Unless it's a very small show.
On the iPad, I don't even know if it is possible to connect USB devices to it ?

An example scenario that come up in my mind is a guy designing his next show on a tablet...on a plane.

Another case I can imagine is (which would require a bit of work though...):
- a PC with QLC+ with all the DMX adapters, running a big show
- 4 tablets with 4 technicians, controlling different parts of the show simultaneously
This would mean QLC+ on mobile could have a "remote" mode to control another QLC+ running on a different machine.
Quite different from the web interface in the sense that each tablet would have the whole project loaded, so every tablet can do real VC operations like re-assign a function to a button or a slider, live edit a function, etc..
This would require a dedicated channel (or a plugin) to synchronize each QLC+ instance to the others.
Wouldn't it be cool though ? :)

I think we can discuss here what users foresee (or wish) for QLC+ on mobile platforms. So, ideas season is open ! :)

I like the Idea of multiple tablets. and the possibility to design while traveling. Id be nice to have something like Midi DJ remote for tractor. (https://youtu.be/ZfV3kv906lE) except for QLC+. So basically you have 3 tablets with all 3 panels and by selecting 1 of 3 panels ( a different panel on each tablet) you end up with a full size (or close to it) controller. but not running the full software on tables.

side note: It is posable to use Korg nano series with IOS devices. with the use of camera adapter (USB to lighting). Im not sure about using adapter with FTDI though.

I had a vision of 3 iPads propped up with a nanoKontrol2 or nanoPad2 connected/ setting in front of each one. with iPads communicating with Mac Mini or Raspberry Pi running QLC+ as coordinator sending Artnet out to lights (Raspberry Pi running QLC+ (Artnet in /USB DMX out). :D

As a systems integrator I understand theres a lot of cost involved in R & D and Id consider purchasing and donating an iPad air2 and camera kit for mcallegari if this would help push the development of the demanding growth of iOS development. I know this wouldn't cover the Apple developer yearly fees. But hardware was one of the things mentioned earlier that seamed to be one of the development limitations. I know submitting apps to the App store is one option but at least through the development process you may consider using apples TestFlight .
Last edited by mumbles on Mon Aug 17, 2015 4:53 am, edited 1 time in total.
OSX 10.10.5 QLC+ 4.9.1
Surface Pro4 Windows 10
Raspberry Pi B OLA 0.95
Raspberry Pi 2B QLC+

Swisson XMt-350
Chauvet RDM2Go
Enttec Pro Mk2
ultraDMX Micro
FTDI USB-RS485-WE-1800-BT XLR

Korg nanoKONTROL2
Korg nanoPAD2
User avatar
mcallegari
Posts: 4446
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Hey George, out of curiosity I wanted to see how an up-to-date version of QLC+ 5 looked on Android.
So I captured a screen similar to what I've shown in the video on an Android 10" tablet with resolution 1024x600 (don't ask me why...)

Here's the result
Screenshot_2015-08-17-18-26-12.png
The fact I've been able to capture that shot is already a good sign I am going in the right direction :)
However I would say 600 vertical pixels are not enough. I'd be curious to see a 1024x768 one...
gmint
Posts: 114
Joined: Wed Apr 15, 2015 8:04 pm
Real Name: George Qualley IV

Massimo,

I was going to mention the possibility of the camera connector. I know it's kind of hack to get USB out of the iPad for a lot of things. While I don't necessarily share your occasional Apple anger :D I can definitely see the possibility of that particular ability going away without a lot of notice which would obviously be a very bad thing.

I definitely share your vision for using the iPad as a remote for QLC+. I can see that as definitely be something useful. It would be especially useful if the iPad could function as a supplemental (say second or third console). Even if I didn't *need* it, I'd have a hard time not adding an iPad or two and pretending that I have a Whole Hog :)

Very interesting on the Android version!
User avatar
mumbles
Posts: 113
Joined: Thu Jul 16, 2015 4:39 am
Location: Central USA
Real Name: Justin

gmint wrote:Massimo,

I was going to mention the possibility of the camera connector. I know it's kind of hack to get USB out of the iPad for a lot of things. While I don't necessarily share your occasional Apple anger :D I can definitely see the possibility of that particular ability going away without a lot of notice which would obviously be a very bad thing.

I definitely share your vision for using the iPad as a remote for QLC+. I can see that as definitely be something useful. It would be especially useful if the iPad could function as a supplemental (say second or third console). Even if I didn't *need* it, I'd have a hard time not adding an iPad or two and pretending that I have a Whole Hog :)

Very interesting on the Android version!

I don't see usb midi control going away.. as this is a key component in Apples garageband and is part of the iOS SDK. and Midi Studio that is part of Mac OSX.
OSX 10.10.5 QLC+ 4.9.1
Surface Pro4 Windows 10
Raspberry Pi B OLA 0.95
Raspberry Pi 2B QLC+

Swisson XMt-350
Chauvet RDM2Go
Enttec Pro Mk2
ultraDMX Micro
FTDI USB-RS485-WE-1800-BT XLR

Korg nanoKONTROL2
Korg nanoPAD2
gmint
Posts: 114
Joined: Wed Apr 15, 2015 8:04 pm
Real Name: George Qualley IV

I wasn't saying USB Midi, I was more thinking if you managed to get the FTDI driver working over the camera connector...
User avatar
mumbles
Posts: 113
Joined: Thu Jul 16, 2015 4:39 am
Location: Central USA
Real Name: Justin

gmint wrote:I wasn't saying USB Midi, I was more thinking if you managed to get the FTDI driver working over the camera connector...
Ooooo... Gotcha :)
OSX 10.10.5 QLC+ 4.9.1
Surface Pro4 Windows 10
Raspberry Pi B OLA 0.95
Raspberry Pi 2B QLC+

Swisson XMt-350
Chauvet RDM2Go
Enttec Pro Mk2
ultraDMX Micro
FTDI USB-RS485-WE-1800-BT XLR

Korg nanoKONTROL2
Korg nanoPAD2
User avatar
mumbles
Posts: 113
Joined: Thu Jul 16, 2015 4:39 am
Location: Central USA
Real Name: Justin

I haven't read everything about Apples I/Okit but...... wouldn't Apples I/OKit guarantee a developers to support devices 3 party devices on iOS and Mac such as FTDI. This is also what I believe is needed for Mac's to use FTDI's without having to uninstall Apples D2XX driver and install FTDI's generic D2XX driver.

I still have yet to get USB DMX adapters to work directly plugged into my mac's running Yosemite. Im running QLC+ on Mac and outputting ArtNet to work around driver issues.
OSX 10.10.5 QLC+ 4.9.1
Surface Pro4 Windows 10
Raspberry Pi B OLA 0.95
Raspberry Pi 2B QLC+

Swisson XMt-350
Chauvet RDM2Go
Enttec Pro Mk2
ultraDMX Micro
FTDI USB-RS485-WE-1800-BT XLR

Korg nanoKONTROL2
Korg nanoPAD2
User avatar
mumbles
Posts: 113
Joined: Thu Jul 16, 2015 4:39 am
Location: Central USA
Real Name: Justin

I personally don't see camera adapter as a hack per say when it comes to iOS devices. Correct me if Im wrong but Its the something as an OTG adapter that android needs to connect standard USB devices. Camera adapter just uses lightning connector vs micro USB on device side I believe. Apple has just named their adapter a camera adapter for marketing purposes. And these adapters are needed because of physical limitations of the hardware being to thin to accommodate full size USB.

I know this was kind of off subject but I don't want to see feature possibly scrapped do to an adaptor.
OSX 10.10.5 QLC+ 4.9.1
Surface Pro4 Windows 10
Raspberry Pi B OLA 0.95
Raspberry Pi 2B QLC+

Swisson XMt-350
Chauvet RDM2Go
Enttec Pro Mk2
ultraDMX Micro
FTDI USB-RS485-WE-1800-BT XLR

Korg nanoKONTROL2
Korg nanoPAD2
User avatar
mcallegari
Posts: 4446
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Wait wait, I don't want to start a FTDI discussion here, but there are 3 different things on Apple:
1- libFTDI: open source and used/bundled by QLC+
2- D2XX: proprietary and close source - OSX and Windows work with it but I do NOT bundle it in QLC+
3- Apple FTDI driver: the one causing all the issues since Mavericks

I do hope there's a reason for #3 and sooner or later I will discover it. Maybe an official FTDI support have become part of the Apple IOKit and possibly it can be used on iOS too, but here I lack of experience/interest in researching the "native" Apple world.

Can anybody point me to this USB-MIDI adapter that can be used on a iPad ?
It could be interesting to support it on an eventual mobile version. Does it work on a Mac too ?

[EDIT] Is it this one ? http://www.ikmultimedia.com/products/irigmidi2/
User avatar
mumbles
Posts: 113
Joined: Thu Jul 16, 2015 4:39 am
Location: Central USA
Real Name: Justin

mcallegari wrote:Wait wait, I don't want to start a FTDI discussion here, but there are 3 different things on Apple:
1- libFTDI: open source and used/bundled by QLC+
2- D2XX: proprietary and close source - OSX and Windows work with it but I do NOT bundle it in QLC+
3- Apple FTDI driver: the one causing all the issues since Mavericks

I do hope there's a reason for #3 and sooner or later I will discover it. Maybe an official FTDI support have become part of the Apple IOKit and possibly it can be used on iOS too, but here I lack of experience/interest in researching the "native" Apple world.

Can anybody point me to this USB-MIDI adapter that can be used on a iPad ?
It could be interesting to support it on an eventual mobile version. Does it work on a Mac too ?

[EDIT] Is it this one ? http://www.ikmultimedia.com/products/irigmidi2/

I currently use these 2 USB midi controllers with Mac OS X 10.10.4, Ubuntu mate 14.04.2 and iOS 8.4.1
Korg nanoKontrol2-- http://www.korg.com/us/products/control ... okontrol2/
Korg nanoPad2-- http://www.korg.com/us/products/controllers/nanopad2/

iPhone and iPad required this adapter to connect these midi controllers.
Apple Camera Adapter-- http://www.apple.com/shop/product/MD821 ... d984ae0a4f
OSX 10.10.5 QLC+ 4.9.1
Surface Pro4 Windows 10
Raspberry Pi B OLA 0.95
Raspberry Pi 2B QLC+

Swisson XMt-350
Chauvet RDM2Go
Enttec Pro Mk2
ultraDMX Micro
FTDI USB-RS485-WE-1800-BT XLR

Korg nanoKONTROL2
Korg nanoPAD2
sschaeffner
Posts: 2
Joined: Mon Aug 24, 2015 9:47 pm
Location: Munich, Germany
Real Name: Simon Schäffner
Contact:

Hi,

just a note on having to pay the $99 to be able to try out apps on iOS devices: since Xcode 7 (currently in beta) you can actually put apps on iOS devices to try them out without having to be part of Apple's developer program.

source: https://developer.apple.com/xcode/ ("Now everyone can get their app on their Apple device.")
User avatar
mcallegari
Posts: 4446
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

sschaeffner wrote:Hi,

just a note on having to pay the $99 to be able to try out apps on iOS devices: since Xcode 7 (currently in beta) you can actually put apps on iOS devices to try them out without having to be part of Apple's developer program.

source: https://developer.apple.com/xcode/ ("Now everyone can get their app on their Apple device.")
That's great news !
Thanks Simon for sharing the information.
I'll check it out as soon as I can. I need to find some kind soul to borrow an iPad first :)
xcode 7 is now in beta 6. By the time I find an iPad, let's hope it turns to final and let's hope it will work with Qt.
User avatar
mcallegari
Posts: 4446
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Excellent news everyone !
QLC+ 5 will run on iOS !
The brand new Apple XCode 7 allows to install a self signed app on a device, so I've been able to run QLC+ on a 4th generation iPad.
Surprisingly, the retina display doesn't bother my UI design. Great stuff !
I need to adjust some deployment issues (fixtures, plugins, scripts, etc are not loaded yet) but I'm confident I can make it.
Screen Shot 2015-09-19 at 15.48.06.png
Sharing a VC peek ;)
Screen Shot 2015-09-19 at 15.59.16.png
Post Reply