From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by yocto-www.yoctoproject.org (Postfix, from userid 118) id 35A4CE0095C; Wed, 13 May 2015 11:30:25 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on yocto-www.yoctoproject.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.1 X-Spam-HAM-Report: * -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] Received: from mail.chez-thomas.org (mail.mlbassoc.com [65.100.170.105]) by yocto-www.yoctoproject.org (Postfix) with ESMTP id 28B40E00820 for ; Wed, 13 May 2015 11:30:23 -0700 (PDT) Received: by mail.chez-thomas.org (Postfix, from userid 1998) id 1A839F811DC; Wed, 13 May 2015 12:30:23 -0600 (MDT) Received: from [192.168.1.114] (zeus [192.168.1.114]) by mail.chez-thomas.org (Postfix) with ESMTP id E41DFF8119A; Wed, 13 May 2015 12:30:21 -0600 (MDT) Message-ID: <5553983F.8020109@mlbassoc.com> Date: Wed, 13 May 2015 12:30:23 -0600 From: Gary Thomas User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: Nikolay Dimitrov , meta-freescale@yoctoproject.org References: <554B7546.8050202@mail.bg> <554B764F.9080206@mlbassoc.com> <554B83B2.3000607@mail.bg> <554B84EF.9080108@mlbassoc.com> <554B8721.6050302@mail.bg> <5551E54E.3060504@mail.bg> <5551E881.6060602@mlbassoc.com> <5551F196.5070401@mail.bg> <5551F65B.8020005@mlbassoc.com> <5551F7CF.6020906@mlbassoc.com> <55534A22.5030900@mlbassoc.com> <5553514A.1030609@mlbassoc.com> <555358E3.7000304@mlbassoc.com> <555378E2.6010402@mlbassoc.com> <55538316.3040901@mlbassoc.com> <555394BC.5000903@mlbassoc.com> <5553972C.2060609@mail.bg> In-Reply-To: <5553972C.2060609@mail.bg> Subject: Re: Fido with kernel 3.10.17 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: Wed, 13 May 2015 18:30:25 -0000 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit On 2015-05-13 12:25, Nikolay Dimitrov wrote: > > > On 05/13/2015 09:15 PM, Gary Thomas wrote: >> On 2015-05-13 11:00, Gary Thomas wrote: >>> On 2015-05-13 10:16, Gary Thomas wrote: >>>> On 2015-05-13 08:00, Gary Thomas wrote: >>>>> On 2015-05-13 07:27, Gary Thomas wrote: >>>>>> On 2015-05-13 07:07, Otavio Salvador wrote: >>>>>>> On Wed, May 13, 2015 at 9:57 AM, Gary Thomas >>>>>>> wrote: >>>>>>>> On 2015-05-12 06:59, Otavio Salvador wrote: >>>>>>>>> >>>>>>>>> On Tue, May 12, 2015 at 9:53 AM, Gary Thomas >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> On 2015-05-12 06:48, Otavio Salvador wrote: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Tue, May 12, 2015 at 9:47 AM, Gary Thomas >>>>>>>>>>> wrote: >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On 2015-05-12 06:43, Otavio Salvador wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Tue, May 12, 2015 at 9:27 AM, Nikolay Dimitrov >>>>>>>>>>>>> >>>>>>>>>>>>> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> Gstreamer-1.0 freezes instantly with my test video streams. >>>>>>>>>>>>>> As I've >>>>>>>>>>>>>> invested some time in the past to really force >>>>>>>>>>>>>> gstreamer-0.10 to >>>>>>>>>>>>>> work, >>>>>>>>>>>>>> I'm quite reluctant to go forward with gstreamer-1.0, >>>>>>>>>>>>>> especially when >>>>>>>>>>>>>> its MPEGTS implementation is, well... half-working. So I'm >>>>>>>>>>>>>> sticking >>>>>>>>>>>>>> with >>>>>>>>>>>>>> what I've made to work so far. >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> Did you try the community plugin? We have been using it with >>>>>>>>>>>>> several >>>>>>>>>>>>> customers and in general it is working very well. >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Is that not what you would get when running the media player? >>>>>>>>>>>> >>>>>>>>>>>> Do you have an example pipeline that does work, e.g. play a >>>>>>>>>>>> complete movie (H264+mp3) in .mp4 container? >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> gst-play-1.0 works. >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Not for me on either of the i.MX6 boards I have here :-( What >>>>>>>>>> board(s) >>>>>>>>>> [and kernel] have you tested with? >>>>>>>>>> >>>>>>>>>> What did you play? What is your display device? Anything else >>>>>>>>>> you can provide that might help me figure this out... >>>>>>>>> >>>>>>>>> >>>>>>>>> Did you use the gstreamer1.0-imx? The fsl-image-multimedia works >>>>>>>>> for >>>>>>>>> many movies. >>>>>>>>> >>>>>>>> >>>>>>>> I found that my kernel was not enabling mxc_v4l2_output. I've >>>>>>>> enabled this >>>>>>>> and now the result is different, but always failing with: >>>>>>>> mxc_v4l2_output v4l2_out.32: Bypass IC. >>>>>>>> Attempt to unlock mutex that was not locked >>>>>>>> >>>>>>>> Do you have an image where this works correctly? I'd like to try >>>>>>>> it with >>>>>>>> my kernel on my hardware, etc. >>>>>>> >>>>>>> http://ci.ossystems.com.br/public/fsl-community-bsp/fido >>>>>>> >>>>>> >>>>>> Thanks. I tried an image for my SabreLite, but it seems to be missing >>>>>> important bits. This is the image I tried: >>>>>> >>>>>> http://ci.ossystems.com.br/public/fsl-community-bsp/fido/16/x11/nitrogen6x/fsl-image-multimedia-nitrogen6x.sdcard >>>>>> >>>>>> >>>>>> It doesn't have gst-play-1.0, nor much of anything as far as I can >>>>>> tell. >>>>>> X brings up a terminal window, but I don't see how to run anything >>>>>> else, >>>>>> e.g. chrome? >>>>>> >>>>>> What am I missing? Perhaps I chose the wrong image? How do I play >>>>>> a movie >>>>>> using this image (as your comment above says should work)? >>>>>> >>>>>> Thanks again >>>>>> >>>>> >>>>> I tried a different image that has more tools: >>>>> >>>>> http://ci.ossystems.com.br/public/fsl-community-bsp/fido/16/x11/nitrogen6x/fsl-image-machine-test-nitrogen6x.sdcard >>>>> >>>>> >>>>> Sadly, it's working the same as the image(s) I build myself: >>>>> >>>>> root@nitrogen6x:~# export DISPLAY=:0.0 >>>>> root@nitrogen6x:~# gst-play-1.0 Vlad+Louise.mp4 >>>>> mxc_cam_select_input: input(0) CSI IC MEM >>>>> mxc_v4l_open: Mxc Camera no sensor ipu1/csi0 >>>>> mxc_v4l_open: Mxc Camera no sensor ipu1/csi1 >>>>> Now playing /home/root/Vlad+Louise.mp4 >>>>> [INFO]liProduct Info: i.MX6Q/D/S >>>>> [INFO] bitstreamMode 1, chromaInterleave 0, mapType 0, >>>>> tiled2LinearEnable 0 >>>>> CODEC: BLN_MAD-MMCODECS_AACD_ARM_03.09.00_CORTEX-A8 build on Jun 19 >>>>> 2014 18:30:32. >>>>> Attempt to unlock mutex that was not locked >>>>> Aborted >>>>> >>>>> Please tell me again how this is working well for your customers? >>>>> What am I doing wrong? >>>>> >>>>> Note: I've tried multiple .mp4 files, with the same results. >>>>> >>>> >>>> I've tracked this down to the gst1.0-fsl-plugin package. >>>> Here's a GDB backktrace from the abort: >>>> >>>> (gdb) bt >>>> #0 0xb6b109d4 in __GI_raise (sig=sig@entry=6) at >>>> ../sysdeps/unix/sysv/linux/raise.c:55 >>>> #1 0xb6b144d4 in __GI_abort () at abort.c:89 >>>> #2 0xb6d537e4 in g_mutex_unlock_slowpath >>>> (mutex=mutex@entry=0xb39ff460, prev=) >>>> at >>>> /usr/src/debug/glib-2.0/1_2.44.0-r0/glib-2.44.0/glib/gthread-posix.c:1326 >>>> >>>> #3 0xb6d542f8 in g_mutex_unlock (mutex=mutex@entry=0xb39ff460) >>>> at >>>> /usr/src/debug/glib-2.0/1_2.44.0-r0/glib-2.44.0/glib/gthread-posix.c:1349 >>>> >>>> #4 0xb6d5441c in g_cond_wait (cond=0xfffffffe, >>>> cond@entry=0xb49085e4, mutex=0xb39ff460, mutex@entry=0xb49085f0) >>>> at >>>> /usr/src/debug/glib-2.0/1_2.44.0-r0/glib-2.44.0/glib/gthread-posix.c:1394 >>>> >>>> #5 0xb31d3a98 in compositor_compositing_thread (compositor=0xb49085d0) >>>> at >>>> /usr/src/debug/gst1.0-fsl-plugin/4.0.3-r0/gst1.0-fsl-plugins-4.0.3/plugins/overlay_sink/compositor.c:282 >>>> >>>> #6 0xb6d34be4 in g_thread_proxy (data=0xb4902a30) >>>> at >>>> /usr/src/debug/glib-2.0/1_2.44.0-r0/glib-2.44.0/glib/gthread.c:764 >>>> #7 0xb6c27de0 in start_thread (arg=0xb39ff460) at pthread_create.c:338 >>>> #8 0xb6bb4fa0 in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:89 >>>> from /tmp/p0382_root/lib/libc.so.6 >>>> >>>> The function in question is: >>>> >>>> static gpointer compositor_compositing_thread (gpointer compositor) >>>> { >>>> CompositorHandle *hcompositor = (CompositorHandle*) compositor; >>>> >>>> while (hcompositor->running) { >>>> COMPOSITOR_WAIT_SURFACE (hcompositor); >>>> compositor_do_compositing_surface_list (hcompositor); >>>> } >>>> >>>> GST_DEBUG ("compositor thread exit"); >>>> >>>> return; >>>> } >>>> >>>> It's failing on the 'COMPOSITOR_WAIT_SURFACE' function, the first time >>>> is is called. >>>> >>>> Anyone know why this might be failing? Does someone have a working >>>> example of this code - from either fido or current master? >>>> >>>> Thanks >>>> >>> >>> BTW, this patch fixes the problem and I can play my videos with gst-play. >>> Is it correct? >>> >>> Index: gst1.0-fsl-plugins-4.0.3/plugins/overlay_sink/compositor.c >>> =================================================================== >>> --- gst1.0-fsl-plugins-4.0.3.orig/plugins/overlay_sink/compositor.c >>> +++ gst1.0-fsl-plugins-4.0.3/plugins/overlay_sink/compositor.c >>> @@ -278,6 +278,7 @@ static gpointer compositor_compositing_t >>> { >>> CompositorHandle *hcompositor = (CompositorHandle*) compositor; >>> >>> + g_mutex_lock(&hcompositor->lock); >>> while (hcompositor->running) { >>> COMPOSITOR_WAIT_SURFACE (hcompositor); >>> compositor_do_compositing_surface_list (hcompositor); >>> >> >> "Working" was a bit premature :-( gst-play does work when I run it >> manually from the command line. When I run it from the window manager >> (i.e. click on 'media player'), it tries to run now (as opposed to >> quitting immediately), but there is no video shown, only a progress >> bar. >> >> Anyone know what might be the difference when running in these two >> modes? > > You can compare the command line arguments and processes' environments, > to look for any difference. Also, you can compare the gstreamer media > graphs. If only I could figure out how to get them out - none of the documented options seem to do much. -- ------------------------------------------------------------ Gary Thomas | Consulting for the MLB Associates | Embedded world ------------------------------------------------------------