meta-qt5 on master-next does not build video mediaservices

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

meta-qt5 on master-next does not build video mediaservices

4,116 Views
michaelb_
Contributor III

Hello

I am pretty new to imx6 and yocto development. So, please excuse if my question is dumb or if I am doing something wrong.

I have a nitrogen6x board and tried to build a qt5 enabled image.I used the master-next branch with kernel 3.10, added the meta-qt5 branch and an image recipe that included qt5 and several apps (taken from here Integrate Qt5 into yocto sato image on Wandboard - Wandboard Wiki).

The build runs fine, everything seems to work (including qt5, hw accelerated GPU and VPU, tested with gstreamer), except: qt5 is build without any video mediaservice providers, so that I cannot use video in qt5.

Here is my /usr/lib/qt5/plugins/mediaservice folder:

libqtmedia_audioengine.so

I am wondering, if I did something stupid wrong (but I did follow the mentioned howto), or if qt5.2.1 is missing the video media service? In the wandboard image from here http://www.wandboard.org/images/downloads/yocto-1.5_qt5_wandboard_20140106.zip, which was apparently done following the same tutorial (but with QT5.1.1) the folder looks like this:

libgstaudiodecoder.so  libgstcamerabin.so  libgstmediacapture.so  libgstmediaplayer.so

Thanks a lot for any help!

Michael

Labels (4)
Tags (4)
0 Kudos
8 Replies

1,376 Views
ricercasviluppo
Contributor I

Hi, was you able to play a video?

I got all the video informations at the console but the video isn't played.

Can you please show your PACKAGECONFIG set up and the qt module installed?

Thanks

0 Kudos

1,376 Views
michaelb_
Contributor III

Yes, for me it works nicely now. Here I posted some notes:

https://community.freescale.com/docs/DOC-100419

P.S.: I wonder why all my comments first need to be verified by a moderator.

0 Kudos

1,376 Views
ricercasviluppo
Contributor I

What image are you building?

Thanks

0 Kudos

1,376 Views
michaelb_
Contributor III

Core-image-minimal plus custom packages

0 Kudos

1,376 Views
michaelb_
Contributor III

Well, I found the solution:

There has been a commit disabling gstreamer multimedia services by default (see here: https://github.com/meta-qt5/meta-qt5/commit/faad8d1df1aee67f9d1a7e9ea3c13f92d04baf8e).

In order to get the plugins built, you need to add:

PACKAGECONFIG_append_pn-qtmultimedia =" gstreamer010"


to your local.conf or your custom layer.


Unfortunately, the integration of qtmultimedia with imx6 is still very bad and not usable at all. I guess I need to look for another platform (bay trail looks promising).

0 Kudos

1,376 Views
michaelb_
Contributor III

As I don't seem to get any help here, can somebody maybe recommend a place where I can find some help regarding the missing gstreamer mediaservice plugins in qt5.2.1?

0 Kudos

1,376 Views
michaelb_
Contributor III

So, I am one step further: I did all the steps again, but this time checking out dora instead of master-netx (btw. is there a method to change the branch easily, or is it necessary to always start completely new, when switching the branch?).

Dora has qt5.1.1 and here the mediaservices for gstreamer are built. However, I had some other problems, so I ended up with using this image and copying all qt5 files from the published wandboard image to my image. This way I came to a working qt5 image.

Results are, however, that video playback is very much sloppy using the glimagesink, so this is now usable for me. :-(

One other possibility could be to use eglfs and draw the video with gstreamer to the BG while QT renders the OSD to the FG?

0 Kudos

1,376 Views
michaelb_
Contributor III

I am wondering if these warnings have anything to do with the gstreamer plugin not building?

WARNING: gst-plugins-base-adder-0.10.36 was registered as shlib provider for libgstadder.so, changing it to gstreamer1.0-plugins-base-adder-1.2.3 because it was built later

WARNING: gst-plugins-base-alsa-0.10.36 was registered as shlib provider for libgstalsa.so, changing it to gstreamer1.0-plugins-base-alsa-1.2.3 because it was built later

WARNING: gst-plugins-base-app-0.10.36 was registered as shlib provider for libgstapp.so, changing it to gstreamer1.0-plugins-base-app-1.2.3 because it was built later

WARNING: gst-plugins-base-audioconvert-0.10.36 was registered as shlib provider for libgstaudioconvert.so, changing it to gstreamer1.0-plugins-base-audioconvert-1.2.3 because it was built later

WARNING: gst-plugins-base-audiorate-0.10.36 was registered as shlib provider for libgstaudiorate.so, changing it to gstreamer1.0-plugins-base-audiorate-1.2.3 because it was built later

WARNING: gst-plugins-base-audioresample-0.10.36 was registered as shlib provider for libgstaudioresample.so, changing it to gstreamer1.0-plugins-base-audioresample-1.2.3 because it was built later

WARNING: gst-plugins-base-audiotestsrc-0.10.36 was registered as shlib provider for libgstaudiotestsrc.so, changing it to gstreamer1.0-plugins-base-audiotestsrc-1.2.3 because it was built later

WARNING: gst-plugins-base-encodebin-0.10.36 was registered as shlib provider for libgstencodebin.so, changing it to gstreamer1.0-plugins-base-encodebin-1.2.3 because it was built later

WARNING: gst-plugins-base-gio-0.10.36 was registered as shlib provider for libgstgio.so, changing it to gstreamer1.0-plugins-base-gio-1.2.3 because it was built later

WARNING: gst-plugins-base-ivorbisdec-0.10.36 was registered as shlib provider for libgstivorbisdec.so, changing it to gstreamer1.0-plugins-base-ivorbisdec-1.2.3 because it was built later

WARNING: gst-plugins-base-ogg-0.10.36 was registered as shlib provider for libgstogg.so, changing it to gstreamer1.0-plugins-base-ogg-1.2.3 because it was built later

WARNING: gst-plugins-base-subparse-0.10.36 was registered as shlib provider for libgstsubparse.so, changing it to gstreamer1.0-plugins-base-subparse-1.2.3 because it was built later

WARNING: gst-plugins-base-tcp-0.10.36 was registered as shlib provider for libgsttcp.so, changing it to gstreamer1.0-plugins-base-tcp-1.2.3 because it was built later

WARNING: gst-plugins-base-theora-0.10.36 was registered as shlib provider for libgsttheora.so, changing it to gstreamer1.0-plugins-base-theora-1.2.3 because it was built later

WARNING: gst-plugins-base-typefindfunctions-0.10.36 was registered as shlib provider for libgsttypefindfunctions.so, changing it to gstreamer1.0-plugins-base-typefindfunctions-1.2.3 because it was built later

WARNING: gst-plugins-base-videorate-0.10.36 was registered as shlib provider for libgstvideorate.so, changing it to gstreamer1.0-plugins-base-videorate-1.2.3 because it was built later

WARNING: gst-plugins-base-videoscale-0.10.36 was registered as shlib provider for libgstvideoscale.so, changing it to gstreamer1.0-plugins-base-videoscale-1.2.3 because it was built later

WARNING: gst-plugins-base-videotestsrc-0.10.36 was registered as shlib provider for libgstvideotestsrc.so, changing it to gstreamer1.0-plugins-base-videotestsrc-1.2.3 because it was built later

WARNING: gst-plugins-base-volume-0.10.36 was registered as shlib provider for libgstvolume.so, changing it to gstreamer1.0-plugins-base-volume-1.2.3 because it was built later

WARNING: gst-plugins-base-vorbis-0.10.36 was registered as shlib provider for libgstvorbis.so, changing it to gstreamer1.0-plugins-base-vorbis-1.2.3 because it was built later

WARNING: gst-plugins-base-ximagesink-0.10.36 was registered as shlib provider for libgstximagesink.so, changing it to gstreamer1.0-plugins-base-ximagesink-1.2.3 because it was built later

WARNING: gst-plugins-base-xvimagesink-0.10.36 was registered as shlib provider for libgstxvimagesink.so, changing it to gstreamer1.0-plugins-base-xvimagesink-1.2.3 because it was built later

etc...

0 Kudos