AnsweredAssumed Answered

Gstreamer on Sabre SDB with LTIB - how to get VPUDEC?

Question asked by Moreno Hassem on Dec 5, 2013
Latest reply on Dec 10, 2013 by jimmychan

I'm using the Sabre SDB platform with a iMX6Q on it. I've downloaded the BSP from Freescale (L3.0.35_4.0.0_130424_source) and installed LTIB on a Virtual Machine runnning Ubuntu 12.04. My goal is to play a h264 video using the VPU.

 

 

What do I have to compile to get the VPUDEC filter for Gstreamer? I'm compiling the rootfs with: libfslvpuwrap and gst-fsl-plugins. These are the only alterations I made to the Min Profile for the SABRE_SDB_Q. Some things happen after I flash everything to the card, using the procedure detailed on the user guide:

 

 

0) I have to boot the kernel several times to get to the logon screen. I do that either by resetting several times or turning the thing on and off. I just made the two small changes noted above to the rootfs and none to the kernel, so this is very odd and worrying. I'm probably doing something outrageously wrong.

 

 

1) When I finally get to boot the device, I get no console on HDMI, but the following command displays the test pattern on that video output:

 

 

gst-launch -v videotestsrc ! mfw_v4lsink

 

 

2) The gst-inspect command shows I have no mfw encoders, just decoders. A lot of filters and modules get blacklisted though. Using the gst-inspect -b yields:

 

 

Blacklisted files:

  libgstlevel.so

  libgstvideofilter.so

  libgstshapewipe.so

  libgstreplaygain.so

  libgstvideobox.so

  libgstoss4audio.so

  libgstmultifile.so

  libgstrtp.so

  libgstvideocrop.so

  libgstrtpmanager.so

  libgstossaudio.so

  libgsteffectv.so

  libgstgoom.so

  libgstalpha.so

  libgstflv.so

  libgstrtsp.so

  libgstmultipart.so

  libgstvideo4linux2.so

  libgstvideomixer.so

  libgsticydemux.so

  libgsty4menc.so

  libgstwavparse.so

  libgstmulaw.so

  libgstautodetect.so

  libgstflxdec.so

  libgstdebug.so

  libgstapetag.so

  libgstalaw.so

  libgstgoom2k1.so

  libgstisomp4.so

  libgstalphacolor.so

  libgstequalizer.so

  libgstimagefreeze.so

  libgstudp.so

  libgstmatroska.so

  libgstspectrum.so

  libgstdeinterlace.so

  libgstwavenc.so

  libgstid3demux.so

  libgstaudiofx.so

  libgstavi.so

  libgstaudioparsers.so

  libgstnavigationtest.so

  libgstcutter.so

  libgstsmpte.so

  libgstauparse.so

  libgstinterleave.so

  libgstannodex.so

 

3) Trying to use gst-launch with a filesrc, aiurdemux and the mfw_h264decoder, all outputting to the mfw_v4lsink yields a pipeline error:

 

 

/GstPipeline:pipeline0/MFW_GST_H264DEC_INFO_T:mfw_gst_h264dec_info_t0.GstPad:sink: caps = video/x-h264, parsed=(boolean)true, width=(int)720, height=(int)404, framerate=(fraction)24000/1001, codec_data=(buffer)000000016764001facd980b435f9e6a040402800001f480005dc0478c18cd00000000168e9786cb22c

ERROR: from element /GstPipeline:pipeline0/MFW_GST_H264DEC_INFO_T:mfw_gst_h264dec_info_t0: fatal error

Additional debug info:

non recoverable error while decoding the H.264 Data

 

 

4) Compiling the MPEG4 encoder kernel support is impossible, it returns an error. Searching for this error on Google leads to an unreplied topic on the iMX Community.

 

 

Any clues? I'm probably doing something terribly wrong, but I'm using a fairly standard and supported BSP, so possibly you guys can help me.

 

 

Regards!

Outcomes