mavlink / qgroundcontrol

Cross-platform ground control station for drones (Android, iOS, Mac OS, Linux, Windows)
http://qgroundcontrol.io
3.19k stars 3.53k forks source link

Windows build and Gstreamer #9963

Closed new-user-name closed 3 months ago

new-user-name commented 2 years ago

Expected Behavior

QGC should start

Current Behavior

QGC freezes

Steps to Reproduce:

Gstreamer 1.18.1 development and ordinary pack, gst-plugins-good-1.18.1, Qt 5.15.2, Qt Ctreator 5.0.2, QGC 4.1 self-build from source.

System Information

Windows 10

Detailed Description

Debug build just freezes after showing blank window, but it reaches exitCode = app->exec(); in main. Release build gives

QQmlApplicationEngine failed to load component
qrc:/qml/MainRootWindow.qml:460:5: Type FlyView unavailable
qrc:/qml/QGroundControl/FlightDisplay/FlyView.qml:147:5: Type FlyViewVideo unavailable
qrc:/qml/QGroundControl/FlightDisplay/FlyViewVideo.qml:52:5: Type FlightDisplayViewVideo unavailable
qrc:/qml/QGroundControl/FlightDisplay/FlightDisplayViewVideo.qml:76:13: Type QGCVideoBackground unavailable
qrc:/qml/QGroundControl/FlightMap/QGCVideoBackground.qml:19:1: module "org.freedesktop.gstreamer.GLVideoItem" is not installed

Build with DISABLE_VIDEOSTREAMING works fine. I think the problem is in Gstreamer installation, but gstqmlgl.dll is built from source and in Gstreamer plugins folder, and other Qt programs with GstGLVideoItem work fine.

GST_DEBUG=3 gives several warnings, no errors.

I can launch exe file from debug folder, it works. But running from QtCreator freezes.

booo commented 2 years ago

Could you please restate the problem?

As far as I understand you the debug build under windows with videostreaming enabled does not work when you use QtCreator to start it.

new-user-name commented 2 years ago

Neither debug no release builds start under QtCreator when DISABLE_VIDEOSTREAMING is off. Release build gives no window, debug build shows window and freezes.

Both builds work fine when launched from .exe.