From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ptmx.org (ptmx.org [178.63.28.110]) by yocto-www.yoctoproject.org (Postfix) with ESMTP id 4018DE005B1 for ; Mon, 9 Dec 2013 13:29:35 -0800 (PST) Received: from [192.168.178.14] (chello080108009040.14.11.vie.surfer.at [80.108.9.40]) by ptmx.org (Postfix) with ESMTPSA id 6C3E4221D8; Mon, 9 Dec 2013 22:29:34 +0100 (CET) Message-ID: <52A6369F.70809@pseudoterminal.org> Date: Mon, 09 Dec 2013 22:31:11 +0100 From: Carlos Rafael Giani User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.1 MIME-Version: 1.0 To: Joshua Kurland References: <528A463E.7050802@pseudoterminal.org> <529BE43B.6040603@pseudoterminal.org> <52A62888.1000300@pseudoterminal.org> <52A63381.7000609@pseudoterminal.org> In-Reply-To: Cc: "meta-freescale@yoctoproject.org" Subject: Re: Regarding GStreamer-1.x status on iMX6Q X-BeenThere: meta-freescale@yoctoproject.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Usage and development list for the meta-fsl-* layers List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Dec 2013 21:29:36 -0000 Content-Type: multipart/alternative; boundary="------------070602060708070703060507" --------------070602060708070703060507 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Try: DISPLAY=:0 gst-launch-1.0 playbin uri=file:///myfile video-sink=eglvivsink This assumes you have X11 built and running on your machine. egvivsink support for Wayland and rendering to framebuffer will come in a later version. Please also check your CPU usage. If it is much higher with some videos, I'd like to know. There is one area where an unfortunate design limitation of the VPU libraries (and potentially the VPU itself) can cause this problem. I am thinking about workarounds, but its uncertain if it can be overcome. Worst case, some videos require tweaking of one GStreamer element property. cheers On 2013-12-09 22:26, Joshua Kurland wrote: > Ah, okay. Gst-inspect-1.0 now shows imxvpu, imxipu, etc. In order to > decode a simple video from a file, what would the new pipeline look > like? Normally I would run something like 'gst-launch-0.10 playbin2 > uri=file:///myfile video-sink=mfw_v4lsink'. Can I make a one-to-one > conversion from the old mfw_v4lsink to some other custom element? > > > On Mon, Dec 9, 2013 at 4:17 PM, Carlos Rafael Giani > > wrote: > > Thats because they have different names. They all start with "imx" > (with the exception of the eglvivsink). > These are entirely different plugins, written from scratch. > > > On 2013-12-09 22:14, Joshua Kurland wrote: >> Thanks Carlos, that script helped out a lot and I am able to >> compile the binaries. I modified your script to use the >> wandboard-quad sysroots and ran the script. I then ran ./waf and >> sudo ./waf install. I copied the binaries from /usr/local/lib >> to my board in /usr/lib and /usr/lib/gstreamer-1.0. Everything >> seemed fine, but when I use gst-inspect-1.0 to find mfw_v4lsink >> nothing is found. The same can be said for other Freescale >> elements that I had been using in Gstreamer-0.10. >> >> Thanks, >> Josh Kurland >> >> >> On Mon, Dec 9, 2013 at 3:31 PM, Carlos Rafael Giani >> > wrote: >> >> On 2013-12-09 21:05, Joshua Kurland wrote: >> >> I am having a bit of difficulty compiling the >> gstreamer-imx binaries using waf. I set up the >> environment variables and ran waf, but it was unable to >> find 'libfslvpuwrap'. But libfslvpuwrap.pc is found in >> my >> sysroot/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib/pkgconfig/libfslvpuwrap.pc. >> I am adding libfslvpuwrap as a package under the >> IMAGE_INSTALL section of my image recipe, is this not the >> correct way? I've attached my environment script as well >> as the error log, I would appreciate any help I can get. >> >> Thanks, >> Josh Kurland >> >> >> The environment variables look wrong to me. >> 1. export >> CFLAGS="--sysroot=/opt/poky/1.5+gst/sysroots/x86_64-linux/usr/bin/cortexa9-vfp-neon-poky-linux-gnueabi" >> : sysroot is not supposed to point to the cross compiler >> directory, but to the sysroot of the *device* (same goes for >> the LDFLAGS, the PKG_CONFIG_SYSROOT_DIR, and the kernel >> headers path) >> 2. the "/build" part of the kernel headers path needs to be >> removed >> 3. do you use hardfloat or softfloat? In one place, you use >> cortexa9, in another, cortexa9hf >> >> I attached an example script that may be clearer (at >> successfully builds the plugins). It builds for the Sabre SD >> DualLite platform. >> >> cheers >> >> > > --------------070602060708070703060507 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit
Try:  DISPLAY=:0 gst-launch-1.0 playbin uri=file:///myfile video-sink=eglvivsink

This assumes you have X11 built and running on your machine.
egvivsink support for Wayland and rendering to framebuffer will come in a later version.
Please also check your CPU usage. If it is much higher with some videos, I'd like to know. There is one area where an unfortunate design limitation of the VPU libraries (and potentially the VPU itself) can cause this problem. I am thinking about workarounds, but its uncertain if it can be overcome. Worst case, some videos require tweaking of one GStreamer element property.

cheers

On 2013-12-09 22:26, Joshua Kurland wrote:
Ah, okay.  Gst-inspect-1.0 now shows imxvpu, imxipu, etc.  In order to decode a simple video from a file, what would the new pipeline look like?  Normally I would run something like 'gst-launch-0.10 playbin2 uri=file:///myfile video-sink=mfw_v4lsink'.  Can I make a one-to-one conversion from the old mfw_v4lsink to some other custom element?


On Mon, Dec 9, 2013 at 4:17 PM, Carlos Rafael Giani <dv@pseudoterminal.org> wrote:
Thats because they have different names. They all start with "imx" (with the exception of the eglvivsink).
These are entirely different plugins, written from scratch.


On 2013-12-09 22:14, Joshua Kurland wrote:
Thanks Carlos, that script helped out a lot and I am able to compile the binaries.  I modified your script to use the wandboard-quad sysroots and ran the script.  I then ran ./waf and  sudo ./waf install.  I copied the binaries from /usr/local/lib to my board in /usr/lib and /usr/lib/gstreamer-1.0.  Everything seemed fine, but when I use gst-inspect-1.0 to find mfw_v4lsink nothing is found.  The same can be said for other Freescale elements that I had been using in Gstreamer-0.10.

Thanks,
Josh Kurland


On Mon, Dec 9, 2013 at 3:31 PM, Carlos Rafael Giani <dv@pseudoterminal.org> wrote:
On 2013-12-09 21:05, Joshua Kurland wrote:
I am having a bit of difficulty compiling the gstreamer-imx binaries using waf.  I set up the environment variables and ran waf, but it was unable to find 'libfslvpuwrap'.  But  libfslvpuwrap.pc is found in my sysroot/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib/pkgconfig/libfslvpuwrap.pc.  I am adding libfslvpuwrap as a package under the IMAGE_INSTALL section of my image recipe, is this not the correct way?  I've attached my environment script as well as the error log, I would appreciate any help I can get.

Thanks,
Josh Kurland


The environment variables look wrong to me.
1. export CFLAGS="--sysroot=/opt/poky/1.5+gst/sysroots/x86_64-linux/usr/bin/cortexa9-vfp-neon-poky-linux-gnueabi" : sysroot is not supposed to point to the cross compiler directory, but to the sysroot of the *device* (same goes for the LDFLAGS, the PKG_CONFIG_SYSROOT_DIR, and the kernel headers path)
2. the "/build" part of the kernel headers path needs to be removed
3. do you use hardfloat or softfloat? In one place, you use cortexa9, in another, cortexa9hf

I attached an example script that may be clearer (at successfully builds the plugins). It builds for the Sabre SD DualLite platform.

cheers




--------------070602060708070703060507--