This is a part on Chromium side of the work in b/63083632. Besides, it helps to save battery if NV12 overlay is supported: https://chromium-review.googlesource.com/c/chromium/src/+/569144
I am trying to address Daniele's comment and test it. https://chromium-review.googlesource.com/c/chromium/src/+/784739/14/gpu/command_buffer/common/gpu_memory_buffer_support.cc#123
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/85fdf90b1ee12933fe61c0c0c92faaede517dbd7 commit 85fdf90b1ee12933fe61c0c0c92faaede517dbd7 Author: Owen Lin <owenlin@google.com> Date: Thu Jan 18 05:06:32 2018 media::vda: Specify the format when importing a buffer. We are going to switch the buffer format from YV12 to NV12 for video decoding on Intel. To smooth the transition, instead of hard coding the buffer format in both Android and Chromium. We let Android side to specify the pixel format of the buffer while calling Chromium side to import the buffer. BUG= 796816 TEST=1. Apply the CL: https://chromium-review.googlesource.com/c/ chromiumos/platform/minigbm/+/544489 which switch the buffer format. 2. Make sure video playback in ARC++ is OK. Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I615c815cb42dab8b165f0a789a7e6e748c69fb89 Reviewed-on: https://chromium-review.googlesource.com/784739 Commit-Queue: Owen Lin <owenlin@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Reviewed-by: Pawel Osciak <posciak@chromium.org> Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Reviewed-by: David Reveman <reveman@chromium.org> Cr-Commit-Position: refs/heads/master@{#530057} [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/components/arc/common/video_decode_accelerator.mojom [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/components/arc/video_accelerator/gpu_arc_video_decode_accelerator.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/components/arc/video_accelerator/gpu_arc_video_decode_accelerator.h [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/gpu/command_buffer/common/gpu_memory_buffer_support.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/v4l2/v4l2_slice_video_decode_accelerator.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/v4l2/v4l2_slice_video_decode_accelerator.h [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/v4l2/v4l2_video_decode_accelerator.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/v4l2/v4l2_video_decode_accelerator.h [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/vaapi/vaapi_picture_factory.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/vaapi/vaapi_picture_factory.h [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/vaapi/vaapi_video_decode_accelerator.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/vaapi/vaapi_video_decode_accelerator.h [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/vaapi/vaapi_video_decode_accelerator_unittest.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/vaapi/vaapi_wrapper.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/gpu/video_decode_accelerator_unittest.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/video/video_decode_accelerator.cc [modify] https://crrev.com/85fdf90b1ee12933fe61c0c0c92faaede517dbd7/media/video/video_decode_accelerator.h
Comment 1 by owenlin@chromium.org
, Jan 16 2018