Coding Chase - Projects

My 3D Hub

Thank You For Donating:

Ikeeki (linux-sunxi@irc.freenode.net)
Computer Troubleshooters Brasil

Saturday 18 October 2014

Gstreamer Hyperloop

So I've been trying to get Gstreamer and Qt to play nice with each other on Cubieboard, but so far, no go.

Distinct attempts so far have been as follows:
  1. Hacking QtMultimedia to specifically invoke the working vdpausink pipeline
    1. this seems to be handled by  qtmultimedia/src/plugins/gstreamer/mediaplayer/qgstreamerplayersession.cpp on the Qt5 sources, on the VM host.
  2. Setting the default playbin2 pipeline on GStreamer to use the vdpau elements, with GST_RANK_PRIMARY + 1
    1. this seems to be handled by gst-plugins-bad-0.10.23/sys/vdpau/gstvdpau.c in the embedded rootfs (check the previous Gstreamer + libvpau-sunxi post)
Scenario #1 got me all the way to invoking VDPAU to a black screen from Qt and scenario #2 won't go all the way even from gst-launch on account of qtdemux:

playsink gstplaysink.c:2922:is_raw_pad:<playsink0:video_sink> Caps contains raw and non-raw structures:

video/x-vdpau-video, chroma-type=(int)0, width=(int)[ 1, 4096 ], height=(int)[ 1, 4096 ];
video/x-raw-yuv, format=(fourcc)I420, width=(int)[ 1, 4096 ], height=(int)[ 1, 4096 ];
video/x-raw-yuv, format=(fourcc)YV12, width=(int)[ 1, 4096 ], height=(int)[ 1, 4096 ];
video/x-raw-yuv, format=(fourcc)NV12, width=(int)[ 1, 4096 ], height=(int)[ 1, 4096 ]


A third possibility is to go with qtgstreamer, an alternative to QtMultimedia - still working that angle as well!

Thursday 16 October 2014

Qt5Box 0.3 - some issues

Just a quick update on v0.3:

I just noticed that the Cubieboard A10 SD Card images haven't been updated for the misconfigurations reported on the previous README:

  • Setting proper permissions on /opt (both framebuffer and X11)
  • Changing the automatic login user on /etc/slim.conf from "wickwire" to "cubie" (X11)

These fixes have been corrected on 0.3, towards 0.4 with hopefully I'll launch with Qt 5.4.x when it comes out.

I'll also attempt to include libvdpau+GStreamer on A10 X11 and Cubietruck X11, if I can!

Saturday 11 October 2014

Qt5Box 0.3 - "Isaac"

Finally, Qt5Box 0.3 is out! 

This release includes a Jenkins CI setup, which I've been using to perform automated Qt5 cross-compile jobs, as well as accelerated GStreamer support using libvdpau-sunxi (only available on X11, and specifically to Qt5Box, only on the Cubieboard A20 X11 SD Card Image).

I didn't have time yet to reproduce the steps on Cubieboard A10 and Cubietruck, but basically everything's documented here in the blog, in previous posts.

Using Jenkins, I've been able to successfully include about 60 variations on Qt5, from all stable releases beginning on 5.0.0 all the way up to 5.3.2, for each Cubieboard device, and both X11 and Framebuffer.

Hopefully with Jenkins I'll be able to roll out the next Qt5Box versions faster - Qt 5.4 is just around the corner and there's always the possibility of including more devices than just the Cubieboard family!

Last but not least, a special thank you to Isaac Chavarria a.k.a. Ikeeki for lending me his working Cubieboard A10, which was vital to get things going for this release...!