Page 1 of 1

MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 5:31 am
by lemon
Hi everybody,

my plan was to edit my projects on my Windows 7 notebook and to use a RPi for the shows. The RPi has 4 MIDI controllers attached and obviously I use them to recall my widgets on the virtual console.
But now I've noticed that as long as I open a project on my WIndows 7 notebook (with no MIDI controller attached) every MIDI programming I've made is lost, and after reloading the project on my RPi I have to assign every button again.
Is there a workaround to avoid this?

Thank you very much

Andreas

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 11:33 am
by janosvitok
Hi,

this bothered me as well... I tried to come up with a solution but didn't find one. I roughly know what to change in the code, but didn't get to actually implement.

One thing you may try (I don't have my BCF right here, so I can't test now):
- right after you open your workspace, assign any present input device to your MIDI input universes (artnet or loopback may be good candidates). Keep the input profile as is.
- then do all your changes, save and transfer to RPi.
- on RPI, restore the MIDI devices back.

The MIDI assignment is still there until you open vc widget properties and the input line is not present. Current code will clear the external input control.
What is needed is to distinguish between "not patched" and "patched but not present".

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 11:43 am
by plugz
Hello,
The MIDI assignment is still there until you open vc widget properties and the input line is not present. Current code will clear the external input control.
What is needed is to distinguish between "not patched" and "patched but not present".
I fail to see any issue with a "not connected" input.
Wouldn't it be better to NOT clear the external input ?

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 11:43 am
by janosvitok
plugz wrote:Wouldn't it be better to NOT clear the external input ?
It may be possible that I didn't understand quite right your double negative question :)
I wanted to say that it's better to NOT clear the unconnected external input BUT as far as it is not connected, it is not saved to QXW.

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 11:51 am
by janosvitok
David,

the issue is this: I usually use BCF2000 with QLC+. I have assigned buttons and faders in VC to BCF buttons and faders. That's fine.

BUT:
1. Sometimes I don't want to bring the BCF to gig -- sometimes keyboard and mouse are enough. If I open the workspace and save it, all the MIDI assigment is gone.
So that when I bring BCF again to next gig, all MIDI connections to VC widgets must be redone.

2. sometimes it would be handy to enter the MIDI connections (external input) in "blind mode" -- without the actual device connected. I.e. assign profile to universe, choose MIDI channels from profile and save.
Later when the MIDI device is actually connected, just assign the device to respective input/feedback universe and be done. It would save quite some time.

3. Sometimes I want to do a quick change in the workspace, but I don't want the hassle of connection all devices to the computer.

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 12:01 pm
by plugz
Alright Jano, then we're saying the same thing :)

The current input source should not be cleared when the input is not present in the I/O tab.

I'll take care of this ;)

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 12:01 pm
by lemon
Ok guys, so we have the same problem (and many others certainly would have them, too).
janosvitok wrote:I wanted to say that it's better to NOT clear the unconnected external input BUT as far as it is not connected, it is not saved to QXW.
You're right, the assignments are not saved in the QXW, but there MUST be a place where they are stored. But where is it?
plugz wrote:I'll take care of this ;)
I suppose janosvitok is one of the developers. Are you also?

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 12:01 pm
by janosvitok
lemon wrote:You're right, the assignments are not saved in the QXW, but there MUST be a place where they are stored. But where is it?
They are in qxw, unless the line is not connected, then the assigments are cleared.
lemon wrote:I suppose janosvitok is one of the developers. Are you also?
David is developer. Check his commits https://github.com/mcallegari/qlcplus/commits/master ;-)

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 4:04 pm
by plugz
I did not manage to reproduce the issue :(


What I tried:

- Create a blank workspace, create a button in the Virtual Console
- Universe 1 has OSC Input
- Assign Universe1:Channel1 to the button's input
- Save, close.

Then edit the saved file to change the input's universe from 1 to 2. Universe 2 has no input defined.

- When loading the file and editing the button's properties, it does display it's input as None:None.
- When saving the file, the file still contains (XML-wise) Universe2:Channel1. (I don't have the "input not saved issue")
- When loading the file again, setting Universe 2 input to OSC, and editing the button properties, it correctly displays Universe2:Channel1 as input.



I did not lose the widget's input properties :/

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 4:11 pm
by lemon
Did you do that on different workstations?

Re: MIDI programming lost if project is edited on another system

Posted: Thu May 21, 2015 6:25 pm
by janosvitok
Weird. I get the same result - the data is still stored in the XML. That's nice :) What did confused me is that GUI shows None:None if the input line is not present.

So it seems the state is much better than I hoped :)

Re: MIDI programming lost if project is edited on another system

Posted: Fri May 22, 2015 7:43 am
by plugz
Did you do that on different workstations?
No, but it should act the same way.

The couple Universe,Channel is saved for each of the widgets, but it is not displayed correctly when the input is not present.


So it seems the state is much better than I hoped :)
Yes.
Should I try to let QLC+
- Show the couple Uni:Channel, even when not really "connected"
AND
- Allow assigning input channels from not connected inputs
?

Re: MIDI programming lost if project is edited on another system

Posted: Fri May 22, 2015 7:43 am
by lemon
plugz wrote:- Show the couple Uni:Channel, even when not really "connected"
I think that would be a good idea.

Re: MIDI programming lost if project is edited on another system

Posted: Fri May 22, 2015 1:01 pm
by plugz
- Show the couple Uni:Channel, even when not really "connected"
Done in GIT.
- Allow assigning input channels from not connected inputs
Also done in GIT.



Also: in theory, even without these changes, your workspaces should not LOSE their input if you don't reassign them in the virtual console.
All you have to do is select an input source in the I/O tab, the inputs will magically reappear.

Re: MIDI programming lost if project is edited on another system

Posted: Fri May 22, 2015 1:31 pm
by lemon
That's perfect, thank you very much!

Any chance I can build from GIT the Windows version also? I'd like to create projects on Windows and use them on RPi.

Re: MIDI programming lost if project is edited on another system

Posted: Fri May 22, 2015 1:31 pm
by mcallegari
lemon wrote:That's perfect, thank you very much!
Any chance I can build from GIT the Windows version also? I'd like to create projects on Windows and use them on RPi.
I do not suggesting building on Windows unless you have strong skills in dealing with building systems (in this case MinGW)
Anyway, instructions here: viewtopic.php?f=7&t=1818

Good luck :roll:

Re: MIDI programming lost if project is edited on another system

Posted: Fri May 22, 2015 1:36 pm
by lemon
I'll give it a try, thank you, Massimo!