s5p-mfc: Fail to encode NV12 input buffers without V4L2 ImageProcessor |
||
Issue descriptionI420 pixel format is being used for testing video encoding. From the driver code, s5p-mfc (exynos 5250) doesn't support I420. Therefore, it will convert the format to I420 with V4L2 IP. https://chromium.googlesource.com/chromiumos/third_party/kernel/+/63339c90a50443b7c2473c8a67ae26bccead58e3/drivers/media/platform/s5p-mfc/s5p_mfc_enc.c#35 Recently, I added NV12 input test case, crrev.com/c/1276326. Then, s5p-mfc fails in the test case [1], even though it supports NV12. That means, s5p-mfc can encode NV12 input buffers which is converted and output by V4L2IP, but cannot do directly input NV12 input buffer without conversion by V4L2IP. There can be some causes, some size alignment which is enforced by the IP at its output, but fails if s5p-mfc is used directly. tfiga@, could you triage this issue? Thanks! [1] NOTE: it backed green because I disabled the test case on s5p-mfc. https://stainless.corp.google.com/search?view=matrix&row=board&col=build&first_date=2018-10-20&last_date=2018-10-26&test=video_VideoEncodeAccelerator.h264.bvt&board=daisy&exclude_cts=false&exclude_not_run=false&exclude_non_release=false&exclude_au=true&exclude_acts=true&exclude_retried=true&exclude_non_production=false
,
Oct 26
May this be blocker to introduce libyuvIP (crrev.com/c/1090699, b/73752373)? After the change, V4L2VEA always converts I420 to NV12 by libyuvIP.
,
Oct 26
Hmm, we don't want to use libyuvIP on a system which has a hardware IP. For s5p-mfc, V4L2VEA would use the V4L2IP currently. Why would it suddenly stop using it?
,
Oct 29
,
Nov 21
Hiro, did you inspect v4l2_format struct S_FMT replied? In my experience, buffer layout is important to make VEA works. The input layout must be the same as what S_FMT replies. |
||
►
Sign in to add a comment |
||
Comment 1 by tfiga@chromium.org
, Oct 26Labels: media-kernel-shortlist OS-Chrome
Status: Assigned (was: Untriaged)