[meta-freescale] gstreamer strange distorted image.

Otavio Salvador otavio at ossystems.com.br
Mon Sep 16 18:47:07 PDT 2013


On Mon, Sep 16, 2013 at 9:37 PM, Eric Nelson
<eric.nelson at boundarydevices.com> wrote:
> On 09/16/2013 05:23 PM, Eric Nelson wrote:
>>
>> On 09/16/2013 02:19 PM, Otavio Salvador wrote:
>>>
>>> On Mon, Sep 16, 2013 at 5:34 PM, Dennis Han <jshan at live.co.kr> wrote:
>>>>
>>>> I tested you patch more detail and found a problem.
>>>>
>>>> In brief.
>>>>
>>>> 1. With original value
>>>> IC_RSZ_MAX_RESIZE_RATIO = 0x00004000
>>>>>>
>>>>>> it's OK
>>>>
>>>>
>>>>
>>>> 2. With a new value
>>>> IC_RSZ_MAX_RESIZE_RATIO = 0x00002000
>>>>>>
>>>>>> center pixels are overlapping
>>>>
>>>>
>>>>
>>>> I think this patch has to be ignored.
>>>
>>>
>>> Good for testing and letting us know about the result. Eric, does it
>>> also fails for you?
>>>
>>
>> The re-sizing patch did nothing for me, while our patch
>> fixed the issue playing the file in both qtmediaplayer
>> and gst-launch/playbin2.
>>
>> I'm not testing with qt-in-use-image, but another qt4e
>> image with a patched-up 4.0.0 kernel.
>>
>> This makes sense because the video is 1280x720 and the
>> display is also 1280x720.
>>
>
> I meant to add some details about what we're seeing.
>
> It's very clear when playing full-screen that the
> issue is one of a missing color-space conversion.
>
> Playing Dennis' video clearly shows that the data
> is in NV12 (YUV planar) format, with two instances
> of the video across the top of the screen, followed
> by a very distorted bottom 1/3 or so.
>
> Our patch circumvents code elsewhere in the V4L2
> driver that appears to be an optimization for the
> case where the YUV plane can be output directly and
> the display can somehow do the conversion.
>
>
> https://github.com/boundarydevices/linux-imx6/commit/c4eb189e1cae98c5535c0a26e859a010b0c70510

Shouldn't 'g_fb_setting[i].disp_support_csc' be fixed to properly return 0?

> Also interesting is that when qmediaplayer starts up,
> it seems to tell V4L2 to start up a 1280x720 plane,
> but not at offset 0,0. In other words, it's not full-screen,
> so the "bypass CSC" logic seems to be missing another
> component in determining whether the YUV plane is "full screen".
>
> Oh, and the Qt4 Phonon layer should probably be patched
> to shrink the overlay size if the initial window position
> doesn't allow the overlay to fit on the screen.

Patches?! This is 'encrypted' for me so I have no way to help on this ;-)

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750



More information about the meta-freescale mailing list