Re: [PATCH] media: cedrus: Convert to MPLANE uAPI
From: Jernej Škrabec
Date: Mon Dec 05 2022 - 16:03:06 EST
Hi Chen-Yu!
Dne torek, 29. november 2022 ob 08:45:30 CET je Chen-Yu Tsai napisal(a):
> The majority of the V4L2 stateless video decoder drivers use the MPLANE
> interface.
>
> On the userspace side, Gstreamer supports non-MPLANE and MPLANE
> interfaces. Chromium only supports the MPLANE interface, and is not yet
> usable with standard desktop Linux. FFmpeg support for either has not
> landed.
I don't like fixing userspace issues in kernel, if kernel side works fine.
Implementing missing non-MPLANE support in Chromium will also allow it to work
with older kernels.
Hans, what's linux-media politics about such changes?
Best regards,
Jernej
>
> A fallback route using libv4l is also available. The library translates
> MPLANE interface ioctl calls to non-MPLANE ones, provided that the pixel
> format used is single plane.
>
> Convert the Cedrus driver to the MPLANE interface, while keeping the
> supported formats single plane. Besides backward compatibility through
> the plugin, the hardware requires that different planes not be located
> too far apart in memory. Keeping the single plane pixel format makes
> this easy to enforce.
>
> Signed-off-by: Chen-Yu Tsai <wenst@xxxxxxxxxxxx>
> ---
>
> This has been tested with Fluster. The score remained the same with or
> without the patch. This also helps with getting VP8 decoding working
> with Chromium's in-tree test program "video_decode_accelerator_tests",
> though Chromium requires other changes regarding buffer allocation and
> management.