Commit 77c82386 authored by Andres Calderon Jaramillo's avatar Andres Calderon Jaramillo Committed by Commit Bot

VaVDA: Use kReduced for H.264 on older boards.

CL:2246846 modified the VaapiVideoDecodeAccelerator to use
BufferAllocationMode::kNone for H.264 on Gemini Lake or later. However,
for older devices, it started using kSuperReduced mode which caused
widespread failures on resolution change tests.

This CL brings back the original fallback to kReduced for H.264 which
shouldn't have been removed in the previous CL anyway.

Bug: b:159661743, b:159659506, 910986, 1054097
Test: video.DecodeAccel.h264_resolution_switch on pyro & caroline.
Test: video.Seek.switch_h264_alt on pyro & caroline.
Change-Id: I3eb883b8d68c60469751db4a12049ab56e60a0b4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2260937
Commit-Queue: Andres Calderon Jaramillo <andrescj@chromium.org>
Commit-Queue: Miguel Casas <mcasas@chromium.org>
Reviewed-by: default avatarMiguel Casas <mcasas@chromium.org>
Cr-Commit-Position: refs/heads/master@{#781440}
parent 26c1ce49
......@@ -1185,6 +1185,13 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
return BufferAllocationMode::kNone;
}
// For H.264 on older devices, another +1 is experimentally needed for
// high-to-high resolution changes.
// TODO(mcasas): Figure out why and why only H264, see crbug.com/912295 and
// http://crrev.com/c/1363807/9/media/gpu/h264_decoder.cc#1449.
if (profile_ >= H264PROFILE_MIN && profile_ <= H264PROFILE_MAX)
return BufferAllocationMode::kReduced;
// If we're here, we have to use the Vpp unit and allocate buffers for
// |decoder_|; usually we'd have to allocate the |decoder_|s
// GetRequiredNumOfPictures() internally, we can allocate just |decoder_|s
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment