> Gstreamer 1.0+ goes some way to addressing these issues....
The Apalis T30 board has GPU from the NVidia. So, when I use
'gst-inspect' I see some of 'nv' sinks.
So, as I understand, the easy ways to do it are:
1) I should try to use GStreamer 1.0 (instead of 0.10) "as is" with QtMM
(rebuild QtMM with this GStreamer), at first stage.
2) I need try to change QtMM sources and try to set the specific
vendor-video sinks there, at second stage... (in case the first stage
does not work).
Is it?
BTW: As I remember, I saw some environment variable which allows to
setup custom video sink... I need to see sources of QtMM... if I'm not
mistaked..
maybe it will help...
> but even within the standard packages there still seems to be
multiple APIs for codecs which produce EGL surfaces and none of them
have been utilized in QtMultimedia yet
Could you please provide an examples of this API which is not adopted in
QtMM?
BR,
Denis
///
/
25.05.2016 4:44, Andrew den Exter пишет:
The short answer is some amount of platform adaptation will be
required to enable hardware acceleration on your board. Looking at
the page you linked to; that adaptation might be achieved by creating
an implementation of QGstBufferPoolPlugin (gstreamer 0.10 only) which
exposes EGL surfaces associated with the x-nv-yuv buffers produced by
the accelerated codec. Or you might also need to create your own
video node by implementing QSGVideoNodeFactoryPlugin or something more
invasive may be required, it really depends on how the vendor
implemented their gstreamer plugins
The reason hardware acceleration doesn't just work is that hardware
vendors have traditionally had to create extensions to gstreamer in
order to implement their hardware accelerated plugins, and these
extensions tend to require a vendor specific video sink to work. If
all you care about is rendering to the full dimensions of a native
window then autovideosink will generally resolve to that vendor
specific video sink and that's why the standard example command line
examples tend to work. But when it comes to something more
complicated like compositing into an opengl scene or even as simple as
rendering to a sub rect of a window then you're into the realm of
vendor extensions and without a port to your specific hardware it
probably won't work. Gstreamer 1.0+ goes some way to addressing these
issues, but even within the standard packages there still seems to be
multiple APIs for codecs which produce EGL surfaces and none of them
have been utilized in QtMultimedia yet.
Andrew
On Wed, May 25, 2016 at 12:40 AM, Denis Shienkov
<[email protected] <mailto:[email protected]>> wrote:
Hi all.
I have the Toradex (Apalis T30) embedded board:
https://www.toradex.com/computer-on-modules/apalis-arm-family/nvidia-tegra-3
which has:
http://developer.toradex.com/files/toradex-dev/uploads/media/Colibri/Linux/Images/Apalis_T30_LinuxImageV2.6Beta1_20160331.tar.bz2
Linux Image, with the GStreamer 0.10.
Also I have compiled Qt 5.6 and installed it to the board.
When I try to play any *.MP4 video file from the QML Video item:
http://doc.qt.io/qt-5/qml-qtmultimedia-video.html
I see, that my video has very-very lags, and I see (with htop
utility) that CPU loading is ~300% (
three cores running on ~100%).
But, when I try to play the video, using the 'nvgstplayer'
utility, I see that CPU loading is ~46% and all fine. Seems, the
QML player loads the SW codecs instead of HW codecs...
Is there are any way to say to QML player to use a HW codecs? Or,
maybe, I need to fix a sources of QtMM (where I need to change
it?) Or, maybe, is there are another way to do this?
Otherwise, is just a **HELL** and there is no sense in QML
QtMultimedia at all (But I need QML for anumations). And I do not
know, how to fix it (I'm not expert in GStreamer).
PS: I have tried the 'gst-launch' pipelines instead of
'nvgstplayer', as described here:
http://developer.toradex.com/knowledge-base/video-playback-%28linux%29
but it crashes with sigsegv....
BR,
Denis
_______________________________________________
Development mailing list
[email protected] <mailto:[email protected]>
http://lists.qt-project.org/mailman/listinfo/development
_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development