Thread (24 messages) 24 messages, 3 authors, 2015-07-21

[PATCH v2 3/5] drm/rockchip: vop: support plane scale

From: tfiga@chromium.org (Tomasz Figa)
Date: 2015-07-03 14:37:38
Also in: dri-devel, linux-rockchip, lkml

On Fri, Jul 3, 2015 at 7:22 PM, Mark yao [off-list ref] wrote:
On 2015?07?03? 17:58, Tomasz Figa wrote:
quoted
quoted
quoted
quoted
quoted
Aren't the scl_modes for CbCr planes always the same as for Y plane?
quoted

No, such as src(1920 x 1080) -> dst(1280x800), yuv format is NV12.
so Y plane horizontal and vertical is scale down.

but src_w = 1920 / 2 = 960 < 1280
      src_h = 1080 / 2 = 540 < 800.

So Cbcr horizontal and vertical is scale up.
Sorry, I don't follow.

If we scale down Y plane in NV12 from 1920x1080 to 1280x800, then
original CbCr plane will be 960x540 and destination CbCr plane will be
640x400 (because CbCr plane of NV12 is subsampled 2x2, which is half
the width and half the height of Y plane), so both planes are being
scaled down.
destination CbCr plane is 1280x800, destination can't be subsample.
Ah, I see, so internally it's always scalling to destination plane
size. This means that calculation for both Y and CbCr must be done
indeed, but even then you could use helper functions for that, since
they differ only in parameters.

Best regards,
Tomasz
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help