Segmentation fault when using external MIDI input

Generic issues not specifically related to a QLC+ area.
Post here only if you can't really find the reason of an issue
Post Reply
dobs
Posts: 4
Joined: Tue Jan 02, 2018 4:13 am
Real Name:

Hi there,

I'm new to both QLC+ and Linux in general, so I may be overlooking something obvious... But my situation is this:

I've been attempting to set up my XL35 Mini Par Light through QLC+ so that I can control it using a MIDI device. So far, I've been able to successfully create the fixture and control it using various functions, and I've had no difficulty using buttons in the Virtual Console to link keys on my keyboard to any given function. I've also had no trouble actually connecting my MIDI device ‒ I can see that it is connected when I press the keys, move the faders, etc. ‒ it shows the joystick, no problem. The issue occurs when I attempt to set an External Input to my MIDI device... As soon as I switch to Operate Mode (via the green play button), IF there is a button in the Virtual Console that references a MIDI device, then QLC+ crashes with a segfault, like so:

Code: Select all

# qlcplus

Q Light Controller Plus version 4.11.1
This program is licensed under the terms of the Apache 2.0 license.
Copyright (c) Heikki Junnila (hjunnila@users.sf.net)
Copyright (c) Massimo Callegari (massimocallegari@yahoo.it)

Segmentation fault (core dumped)
I've attempted to find the problem using the -d flag, but strangely it doesn't print any additional information at all.

Note that this exact same issue has occurred both on my Raspberry Pi 3 (running the qlcplus-raspbian-jessie-20171028.img that was provided to me) and on my laptop (running Arch Linux), so I don't expect it's an OS issue, though I could certainly be wrong.

Can someone please help me to resolve this? I'm not sure where to go from here, as I've searched the forum and found nothing particularly relevant to my issue. I am happy to try anything and everything when it comes to troubleshooting.

Thanks.
User avatar
mcallegari
Posts: 4462
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Apparently this is the same as
viewtopic.php?f=33&t=11625

However, being able to reproduce on Linux would definitely speed up to solve the issue.
The -d option doesn't show anything because you're using a released version of QLC+ which doesn't include debug information.

Which Qt version are you using ?
Does it happen with the latest GIT sources (building QLC+ yourself) or with an OBS build ?
Is this behaviour sistematic or is it random ?
dobs
Posts: 4
Joined: Tue Jan 02, 2018 4:13 am
Real Name:

Here's my Qt version:

Code: Select all

# qmake --version

QMake version 3.1
Using Qt version 5.10.0 in /usr/lib
Perhaps some additional information would be helpful:
  • Light source: TSSS XL35 Mini Par Light (manual)
  • USB-DMX interface: Lixada USB-DMX512
  • USB-MIDI interface: Unlabeled, but lsusb tells me it's "Textech International Ltd. MIDI Interface cable"
  • MIDI controller: Multiple attempted, mainly using a Novation 25SL MkII,
    for which I've created a custom
The problem seems to be systematic, as it happens without fail, provided that I've assigned a MIDI input to my button. Likewise, it does occur using the OBS build for Arch Linux, and I also just compiled from the Git sources, which had the same problem.
User avatar
mcallegari
Posts: 4462
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

Thanks for the info.
Unfortunately I cannot reproduce this issue in my environment: QLC+ git, Qt 5.9.3, KDE Neon, MIDI from KORG NanoKontrol 2, DMX out to Open DMX USB clone

I think there is something I'm missing but I don't understand what it is.
Can you please share a simple workspace that crashes in your environment ?

[EDIT] tried also with Qt 5.10.0 and not reproduced :(
User avatar
GGGss
Posts: 2665
Joined: Mon Sep 12, 2016 7:15 pm
Location: Belgium
Real Name: Fredje Gallon

Out of curiosity: How many midi controllers are attached?

I remember one case where I had novation touchpad pro & mini connected and all QLC+ did was crashing without any lead to what or who. (BFC2000 was connected also)
Didn't had the time to document since we were setting up... the show went on with only the touchpad pro. (and a redo of all VC features to make sure no controls were bound to the mini)
All electric machines work on smoke... when the smoke escapes... they don't work anymore
dobs
Posts: 4
Joined: Tue Jan 02, 2018 4:13 am
Real Name:

Here's one edition of the workspace I've been playing with:
qlc_test_xl35mpl_(segfault).qxw
(2.49 KiB) Downloaded 79 times

I've set a handful of them up, but this one is pretty run of the mill in terms of how I've been trying to test everything out.

Note that I haven't yet created a proper Fixture Model for my XL35 Mini Par Light using the Fixture Editor. I'm unsure of whether or not this would affect anything. I did however set up a simple (unfinished) Input Profile for my Novation 25SL MkII MIDI controller, since that's what I'd like to use, but I don't experience any difference between using that profile versus if I use the Generic MIDI one.

With regards to multiple MIDI controllers, I've actually only attempted to use a single controller at any given time, though I have tried a variety of them, none of which have any problems being picked up by the software.
User avatar
mcallegari
Posts: 4462
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

I think I found it.
As soon as I plugged a uDMX adapter, the issue came out.
Apparently, the attempt to preserve input/output mapping even when the adapters/controllers are disconnected, caused this.
In your workspace (thanks for that!) you can clearly see nonsense feedback entries referencing non existing plugins:

Code: Select all

<Feedback Line="0"/>
A valid feedback entry should look like:

Code: Select all

<Feedback Plugin="MIDI" Line="0"/>
Should be fixed on GIT. OBS and Windows TEST versions are available. Please let me know if the issue is gone.
dobs
Posts: 4
Joined: Tue Jan 02, 2018 4:13 am
Real Name:

Brilliant observation, everything seems to be in working order now :)

Thanks very much for all your patience and hard work, Mr. Callegari.
Post Reply