Massimo,
since ubuntu 16.04 is out, it might be useful to enable git builds for it on OBS.
J.
Ubuntu 16.04
-
- Posts: 1325
- Joined: Mon Apr 13, 2015 7:05 am
- Location: Bratislava, Slovakia
- Real Name: Jano Svitok
- Contact:
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Donejanosvitok wrote:since ubuntu 16.04 is out, it might be useful to enable git builds for it on OBS.
- sbenejam
- Posts: 608
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
After I upgraded to Xubuntu 16.04 I discovered some issues that could affect QLC+.
Gstreamer0.10 is not complete and don't play some video formats. Some plugins are missing (bad, ugly)
QLC+ compiled with default Qt5.5.1 in Xubuntu video don't play.
QLC+ compiled with Qt5.6 some video formats plays (ogv, dv, ). Others formats (mp4, mkv) mpeg format dont work even if it is played with gst-launch0.10 needs gstreamer0.10-plugin-ffmpeg from alternative PPA's.
Gstreamer1.0 plays all video and audio formats with gst-launch1.0 on Xubuntu 16.04. I tried to activate gstreamer1.0 suport on Qt5.6 qtmultimedia and did not work. Qt5.6 qtmultimedia is linked to gst0.10 not to gst1.0.
I have to do more tests with Qt5, qtmultimedia and QLC+.
Gstreamer0.10 is not complete and don't play some video formats. Some plugins are missing (bad, ugly)
QLC+ compiled with default Qt5.5.1 in Xubuntu video don't play.
QLC+ compiled with Qt5.6 some video formats plays (ogv, dv, ). Others formats (mp4, mkv) mpeg format dont work even if it is played with gst-launch0.10 needs gstreamer0.10-plugin-ffmpeg from alternative PPA's.
Gstreamer1.0 plays all video and audio formats with gst-launch1.0 on Xubuntu 16.04. I tried to activate gstreamer1.0 suport on Qt5.6 qtmultimedia and did not work. Qt5.6 qtmultimedia is linked to gst0.10 not to gst1.0.
I have to do more tests with Qt5, qtmultimedia and QLC+.
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
I switched to Ubuntu 16.04 as well and the default now is gstreamer 1.0.sbenejam wrote:After I upgraded to Xubuntu 16.04 I discovered some issues that could affect QLC+.
Gstreamer0.10 is not complete and don't play some video formats. Some plugins are missing (bad, ugly)
QLC+ compiled with default Qt5.5.1 in Xubuntu video don't play.
QLC+ compiled with Qt5.6 some video formats plays (ogv, dv, ). Others formats (mp4, mkv) mpeg format dont work even if it is played with gst-launch0.10 needs gstreamer0.10-plugin-ffmpeg from alternative PPA's.
Gstreamer1.0 plays all video and audio formats with gst-launch1.0 on Xubuntu 16.04. I tried to activate gstreamer1.0 suport on Qt5.6 qtmultimedia and did not work. Qt5.6 qtmultimedia is linked to gst0.10 not to gst1.0.
I have to do more tests with Qt5, qtmultimedia and QLC+.
QtMultimedia supports gst 1.0 since 5.6 but I just checked and you're right, the official 5.6.0 linux build is still built against 0.10.
As always, it's a mess and QtMultimedia keeps on being the weakest Qt module ever.
On the other hand, it's not easy for them to make everyone happy, so I guess they preferred to be conservative...even though 16.04 is a LTS and gst 0.10 is damn obsolete now.
Honestly, I don't want to take the responsibility for this...maybe a good soul prepared a PPA for QtMultimedia built on gst 1.0. I could do it myself, but really, I don't have time for it.
Building just QtMultimedia from sources (if you really need it) is not that difficult.
I'd say: give Qt 5.7.0 RC a try. There are snapshots available now. Maybe if you're lucky, they started to build with gst 1.0
- sbenejam
- Posts: 608
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
I've been testing qtmultimedia 5.6 build with qmake -r GST_VERSION=1.0 from Qt5.6 official bundle. Any video format don't play, only the audio plays, I tested in qt-creator some video examples, a Media Player example program works perfectly and plays many video formats.
I doon't know the difference between qlcplus video implementation versus Media Player example from Qt5.6.
I searched qtmultimedia PPA with no luck. I tested too Qt5.7 RC and is compiled only with gst-0.10 by default.
I doon't know the difference between qlcplus video implementation versus Media Player example from Qt5.6.
I searched qtmultimedia PPA with no luck. I tested too Qt5.7 RC and is compiled only with gst-0.10 by default.
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
I've just done some tests.
QtMultimedia 5.6.0 is definitely broken on Ubuntu 16.04.
I cannot even play a video with the 'player' example, which is the most similar code to what I've done in QLC+.
It wants a JACK server running, and even if I start JACK, I cannot play any video ! WTF
I'm really pissed off about how much unprofessional the QtMultimedia team is. I won't even point you to the emails I've sent to the Qt dev mailing list, cause you would get scared.
Right now I don't have time to dedicate to this topic cause I need to release 4.10.4, but I'll try to see if there is something that can be done to solve this crap.
At this point (and after all the issues we've had with the audio playback as well) I think it is time to abandon QtMultimedia for good. At least for the video part. I'm really sick of it.
QtMultimedia 5.6.0 is definitely broken on Ubuntu 16.04.
I cannot even play a video with the 'player' example, which is the most similar code to what I've done in QLC+.
It wants a JACK server running, and even if I start JACK, I cannot play any video ! WTF
I'm really pissed off about how much unprofessional the QtMultimedia team is. I won't even point you to the emails I've sent to the Qt dev mailing list, cause you would get scared.
Right now I don't have time to dedicate to this topic cause I need to release 4.10.4, but I'll try to see if there is something that can be done to solve this crap.
At this point (and after all the issues we've had with the audio playback as well) I think it is time to abandon QtMultimedia for good. At least for the video part. I'm really sick of it.
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Hey Santiago,
I've sent a message to the Qt mailing list. Let's see what they think: http://lists.qt-project.org/pipermail/d ... 26090.html
I've sent a message to the Qt mailing list. Let's see what they think: http://lists.qt-project.org/pipermail/d ... 26090.html
- sbenejam
- Posts: 608
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Hi Massimo,
As they explain gst version is automatically detected, maybe uninstalling gst 0.1 libs before build Qt?. You built only qtmultimedia or all Qt5.7?. Is there a good howto on how to build Qt with gst 1.0?
I posted last weekend on Qt forums and I don't get a good reply. ;-(
As they explain gst version is automatically detected, maybe uninstalling gst 0.1 libs before build Qt?. You built only qtmultimedia or all Qt5.7?. Is there a good howto on how to build Qt with gst 1.0?
I posted last weekend on Qt forums and I don't get a good reply. ;-(
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
They have a QTBUG open for the issue: https://bugreports.qt.io/browse/QTBUG-53668
...but they're targeting Qt 5.8...meaning other 6 months of broken videos
Attached my script to build Qt5 on a desktop.
Please note that this script is generic and if you'll use it in the future, you could find build errors depending on the status of the GIT sources. Normally Linux builds fine though.
If you need to add Qt modules, add a "git clone" line before "configure"
After the script is done, cd into qt5-GIT and do a "sudo make install"
Qt will be installed in /opt, so to build QLC+ you will have to do
[EDIT] I just realized a couple of modules are missing in the script to build QLC+. Add this at the end of the clone list:
...but they're targeting Qt 5.8...meaning other 6 months of broken videos
Attached my script to build Qt5 on a desktop.
Please note that this script is generic and if you'll use it in the future, you could find build errors depending on the status of the GIT sources. Normally Linux builds fine though.
If you need to add Qt modules, add a "git clone" line before "configure"
After the script is done, cd into qt5-GIT and do a "sudo make install"
Qt will be installed in /opt, so to build QLC+ you will have to do
Code: Select all
/opt/qt5-dev/bin/qmake
Code: Select all
git clone -b $BRANCH --depth=1 https://code.qt.io/qt/qtserialport.git
git clone -b $BRANCH --depth=1 https://code.qt.io/qt/qtscript.git
- Attachments
-
- build_qt5_dev.sh.tar.gz
- (526 Bytes) Downloaded 360 times
- sbenejam
- Posts: 608
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Hi Massimo,
I try to compile QT, this weekend. Many thanks.
I've got a question off topic. I tried Capture Argo last weekend. I could not connect QLC + and Capture Argo, last month I managed to make it work. In Capture Argo input universes, do not detect Artnet inputs. QLC + is sending Artnet packets correctly, tested and with an Artnet Monitor on Android.
I think that I have configured both programs correctly. Any ideas.
[EDIT]
I reinstalled Capture Argo again and it's working now.
I try to compile QT, this weekend. Many thanks.
I've got a question off topic. I tried Capture Argo last weekend. I could not connect QLC + and Capture Argo, last month I managed to make it work. In Capture Argo input universes, do not detect Artnet inputs. QLC + is sending Artnet packets correctly, tested and with an Artnet Monitor on Android.
I think that I have configured both programs correctly. Any ideas.
[EDIT]
I reinstalled Capture Argo again and it's working now.
- sbenejam
- Posts: 608
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Results of my first attempt.
Qt5.7 compile fine without errors.
QLC+ compiled fine without errors.
QLC+ plays audio fine.
QLC+ video play shows a black screen audio plays and seems to hang, it stops playing some format.
I don't understand nothing. Maybe I'm missing some libraries. I'll try same steps in other computer soon.
;-(
Qt5.7 compile fine without errors.
QLC+ compiled fine without errors.
QLC+ plays audio fine.
QLC+ video play shows a black screen audio plays and seems to hang, it stops playing some format.
I don't understand nothing. Maybe I'm missing some libraries. I'll try same steps in other computer soon.
;-(
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
You are right. I get a black screen as well
There must be something in the QLC+ code too then, which has to be changed for Qt 5.7.
What a mess.
There must be something in the QLC+ code too then, which has to be changed for Qt 5.7.
What a mess.
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Found it. Indeed a bug in Qt 5.7.0 that was not there in 5.6.0.
In ui/src/videoprovider.cpp, move the 5 lines block at line 181 to line 80.
This is the block:
I already created a Qt issue report: https://bugreports.qt.io/browse/QTBUG-53835
In ui/src/videoprovider.cpp, move the 5 lines block at line 181 to line 80.
This is the block:
Code: Select all
if (m_videoWidget == NULL)
{
m_videoWidget = new QVideoWidget;
m_videoWidget->setStyleSheet("background-color:black;");
m_videoPlayer->setVideoOutput(m_videoWidget);
}
- sbenejam
- Posts: 608
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
Hey Massimo,
With this modification now works as expected.
With this modification now works as expected.
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Qt 5.7.0 has been released and it still links gstreamer 0.10.
They just don't care....
They just don't care....
- sbenejam
- Posts: 608
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
I tested on a Xubuntu 17.04 recently installed, qt5 (5.7.1) has gst-1.0 support enabled, gst-0.1 has no packages at all.mcallegari wrote: ↑Sun Jun 19, 2016 8:02 am Qt 5.7.0 has been released and it still links gstreamer 0.10.
They just don't care....
The modification of videoprovider.cpp is still needed to play video. I not tested audio playing yet.
- mcallegari
- Posts: 4722
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Thanks for reporting Santiago.
[EDIT] I've just pushed a change to detect at runtime where the video surface must be initialized. Should work with all Qt5 versions.
[EDIT] I've just pushed a change to detect at runtime where the video surface must be initialized. Should work with all Qt5 versions.
- sbenejam
- Posts: 608
- Joined: Sun Apr 12, 2015 6:28 pm
- Real Name: Santiago Benejam Torres
- Contact:
I would test it tonight on a Xubuntu 16.04 lts on my laptop with qt5 5.8.0, maybe tomorrow I'll try it on a Xubuntu 17.04 installation with distribution default qt5 package. A couple of weeks ago I helped my niece in a small theater show. It was the first that used video playback with QLC + in production and I had no problem.mcallegari wrote: ↑Tue Apr 25, 2017 12:05 pm Thanks for reporting Santiago.
[EDIT] I've just pushed a change to detect at runtime where the video surface must be initialized. Should work with all Qt5 versions.
Good job Massimo.
{EDIT}: Tested on Xubuntu 16.04 with qt5 5.8.0 release from Qt. Audio an video plays as expected. Tomorrow I'll test on Xubuntu 17.04 with default qt5 version.
{EDIT}: Tested on Xubuntu 17.04 with default qt5 version on distro. Compiled fine, video playing worked as expected.