All of lore.kernel.org
 help / color / mirror / Atom feed
From: Carlos Rafael Giani <dv@pseudoterminal.org>
To: Gary Thomas <samoht.yrag@gmail.com>, meta-freescale@yoctoproject.org
Subject: Re: imxipuvideosink in 3.10.53 on Nitrogex6xlite
Date: Thu, 21 May 2015 16:46:03 +0200	[thread overview]
Message-ID: <555DEFAB.9040802@pseudoterminal.org> (raw)
In-Reply-To: <555DE360.3000303@gmail.com>

Are you starting this from SSH or minicom? If so, make sure you call 
this first:

export DISPLAY=:0

Otherwise, it will not be able to connect to the X display. This might 
explain why the eglvivsink wasn't being picked.
As for the double mutex unlock, this might already have a fix. I'll check.


On 05/21/2015 03:53 PM, Gary Thomas wrote:
> On 2015-05-19 09:09, Carlos Rafael Giani wrote:
>> It is strange that gtk-play isn't picking this one. Anyway, if you 
>> explicitely pick it, you should have windowed output.
>
> I tried forcing this via:
>   gst-launch-1.0 playbin uri=file:///some_file.mp4
>
> It starts up, then fails with:
>   Setting pipeline to PAUSED ...
>   Pipeline is PREROLLING ...
>   [INFO]  Product 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
>
> Using GDB, I tracked this down to
> #4  0xb685d318 in gst_imx_egl_viv_sink_egl_platform_expose 
> (platform=0xa93ff460)
>     at ../src/eglvivsink/egl_platform_x11.c:497
>
> The code in question looks pretty simple:
>   gboolean 
> gst_imx_egl_viv_sink_egl_platform_expose(GstImxEglVivSinkEGLPlatform 
> *platform)
>   {
>     EGL_PLATFORM_LOCK(platform);
>     gst_imx_egl_viv_sink_egl_platform_send_cmd(platform, 
> GSTIMX_EGLX11_CMD_EXPOSE);
>     EGL_PLATFORM_UNLOCK(platform);
>     return TRUE;
>   }
>
> It's failing on the EGL_PLATFORM_UNLOCK() call.
>
> I did have some debug messages show up about this time (many of these):
>   mxc_vpu 2040000.vpu: VPU interrupt received.
> Could this be involved?
>
> Any ideas?  I'm running this version of that code:
>    git log 
> recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.10.1.bb
>      commit 1e5f8cea6a779c0dc374cdc3a9a6e2d0bdabbd32
>      Author: Otavio Salvador <otavio@ossystems.com.br>
>      Date:   Wed Apr 8 11:39:19 2015 -0300
>
>
>> Am 2015-05-19 um 13:54 schrieb Gary Thomas:
>>> On 2015-05-19 05:23, Carlos Rafael Giani wrote:
>>>>
>>>>
>>>> Am 2015-05-19 um 13:17 schrieb Gary Thomas:
>>>>> On 2015-05-19 05:11, Carlos Rafael Giani wrote:
>>>>>>
>>>>>>>>> Thanks for the explanation, perhaps it can help someone fix 
>>>>>>>>> this.  My
>>>>>>>>> guess is that the FSL plugin doesn't handle those dynamic 
>>>>>>>>> elements and
>>>>>>>>> thus is not equipped to set up the render in the appropriate 
>>>>>>>>> window on
>>>>>>>>> the screen.
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Also the full-screen behavior depends the videosink 
>>>>>>>>>>>> configuration, so
>>>>>>>>>>>> hard to give universal answer, as none will fit all cases.
>>>>>>>>
>>>>>>>> I doubt that the issue is caused exactly by the GstImxVpuDec or 
>>>>>>>> GstOverlaySink, as by looking at your pipeline they seem to 
>>>>>>>> have static pads. So it's more of how the
>>>>>>>> playbin/decodebin bins handle the pipeline creation process...
>>>>>>>
>>>>>>> All I know is that it does work correctly on other platforms, 
>>>>>>> e.g. a
>>>>>>> native x86 (intel-corei7-64), as well as when there are no i.MX 
>>>>>>> plugins
>>>>>>> installed, so it's definitely tied to the FSL plugin.
>>>>>>
>>>>>> The issue here is that the IPU sink does not know anything about 
>>>>>> windows. It directly overwrites the framebuffer's pixels. One way 
>>>>>> I am trying out is to create an empty window in
>>>>>> the sink and let the IPU overwrite its pixels, but this is not 
>>>>>> exactly clean, and can cause artifacts. If you want to render to 
>>>>>> a window, I recommend using the imxeglvivsink
>>>>>> instead. In fact, this should be the default one. How did you get 
>>>>>> the plugins?
>>>>>
>>>>> Nothing special, I simply included gst1.0-fsl-plugin in my image.
>>>>> I'm building my own X based image, which includes these packages:
>>>>>           gst-player-bin
>>>>>           gstreamer1.0-libav
>>>>>           gst1.0-fsl-plugin
>>>>>           gstreamer1.0-plugins-imx
>>>>>
>>>>
>>>> What do you get when you run "gst-inspect-1.0 imxeglvivsink" ?
>>>
>>> Output attached.
>>>
>>> Note: based on my capture of the gstreamer info (.dot), that plugin
>>> is not what is being used by gtk-play/gst-play.  You can find the .dot
>>> file in a previous reply on this thread (yesterday) or I'll send it
>>> again if you need.
>>>
>>>
>>>
>>>
>>
>>
>>



  parent reply	other threads:[~2015-05-21 14:46 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-18  5:34 imxipuvideosink in 3.10.53 on Nitrogex6xlite Paweł Żabiełowicz
2015-05-18  7:48 ` Carlos Rafael Giani
2015-05-18  8:18 ` Nikolay Dimitrov
2015-05-18 12:04   ` Gary Thomas
2015-05-18 12:26     ` Carlos Rafael Giani
2015-05-18 12:33       ` Gary Thomas
2015-05-18 15:55     ` Nikolay Dimitrov
2015-05-18 16:27       ` Gary Thomas
2015-05-18 23:52         ` Nikolay Dimitrov
2015-05-19 10:53           ` Gary Thomas
2015-05-19 11:04             ` Nikolay Dimitrov
2015-05-19 11:08               ` Gary Thomas
2015-05-19 11:11                 ` Carlos Rafael Giani
2015-05-19 11:16                   ` Nikolay Dimitrov
2015-05-19 11:17                   ` Gary Thomas
2015-05-19 11:23                     ` Carlos Rafael Giani
2015-05-19 11:54                       ` Gary Thomas
2015-05-19 15:09                         ` Carlos Rafael Giani
2015-05-19 15:13                           ` Gary Thomas
2015-05-19 15:28                             ` Nikolay Dimitrov
2015-05-21 13:53                           ` Gary Thomas
2015-05-21 14:13                             ` Gary Thomas
2015-05-21 14:40                               ` Nikolay Dimitrov
2015-05-21 14:49                                 ` Nikolay Dimitrov
2015-05-21 14:46                             ` Carlos Rafael Giani [this message]
2015-05-21 14:52                               ` Gary Thomas
2015-05-26 13:50                                 ` Gary Thomas
2015-05-26 13:59                                   ` Carlos Rafael Giani
2015-05-26 14:04                                     ` Gary Thomas
2015-05-26 18:53                                       ` Carlos Rafael Giani
2015-05-27 12:05                                         ` Gary Thomas
2015-05-28  6:33                                           ` Carlos Rafael Giani
2015-05-28 12:11                                             ` Gary Thomas
2015-05-29  7:06                                               ` Carlos Rafael Giani
2015-05-29  7:25                                                 ` Carlos Rafael Giani
2015-05-29 13:00                                                   ` Gary Thomas
2015-06-02 15:34                                                     ` Carlos Rafael Giani
2015-06-02 17:11                                                       ` Carlos Rafael Giani
2015-06-02 17:16                                                         ` Gary Thomas
2015-06-02 21:05                                                           ` Carlos Rafael Giani
2015-06-02 21:19                                                             ` Nikolay Dimitrov
2015-06-02 22:10                                                             ` Gary Thomas
2015-06-02 22:17                                                               ` Pushpal Sidhu
2015-06-02 22:33                                                                 ` Gary Thomas
2015-06-02 22:42                                                                   ` Pushpal Sidhu
2015-05-19 11:10               ` Nikolay Dimitrov
2015-05-19 11:19                 ` Gary Thomas
2015-05-19  6:48     ` Paweł Żabiełowicz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=555DEFAB.9040802@pseudoterminal.org \
    --to=dv@pseudoterminal.org \
    --cc=meta-freescale@yoctoproject.org \
    --cc=samoht.yrag@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.