Update.
The message "No m_videoSink available!" is clearly an alarm that something is
going wrong.
So I checked the code and...surprise !
The EGLFS platform is not even considered ! Well done !
Code extract from qtmultimedia/src/gsttols/qgstreamervideowindow.cpp line 59:
if (elementName) {
m_videoSink = gst_element_factory_make(elementName, NULL);
} else if (QGuiApplication::platformName().compare(QLatin1String("xcb"),
Qt::CaseInsensitive) == 0) {
// We need a native X window handle to be able to use xvimagesink.
// Bail out if Qt is not using xcb (the control will then be ignored by the
plugin)
m_videoSink = gst_element_factory_make("xvimagesink", NULL);
}
if (m_videoSink) {
...
}
else
qDebug() << "No m_videoSink available!";
I tried to add something like:
else if (QGuiApplication::platformName().compare(QLatin1String("eglfs"),
Qt::CaseInsensitive) == 0) {
m_videoSink = gst_element_factory_make("eglglessink", NULL);
}
The error message disappears, but I get a black fullscreen result.
I don't even see the player example UI.
I guess it depends on the compositing between the gst window and the main eglfs
window.
So I haven't gone any further.
I can tweak the player example to accept a filename from the command line and
play it automatically.
At least I can check if the video playback is OK in this way.
This is extremely sad. I thought the gst 1.0 support came especially for the
raspberry Pi, since the little dude cannot afford software decoding (thus the
need of OMX -> thus the need of gst 1.0)
I can try the same tests on Xorg, but it's out of my scope.
I don't want to use Xorg but instead I will use Wayland.
_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development