mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-06 10:32:10 +00:00
When the video is flushed, V4L2DecodeComponent streamoff V4L2 output and input queue. Then crosvm releases all output buffers and calls VDA::Reset(). However, VaapiVDA implementation doesn't release output buffer at Reset(). If Vaapi decodes the following frame before V4L2DecodeComponent QBUF any output buffer, then crosvm will drop the decoded frame. This CL makes crosvm postpone sending the decoded frame if this situation happens. Crosvm would sends the decoded frame when receiving the buffer again. BUG=b:181087034 TEST=emerge-hatch-arc-r crosvm TEST=android.media.cts.AdaptivePlaybackTest TEST=seek video many times and check no error occurs at the end of video Change-Id: I0c8e59e2a206d6b2cd2009fd70380e7d5a366953 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2719245 Tested-by: Chih-Yu Huang <akahuang@chromium.org> Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Alexandre Courbot <acourbot@chromium.org> Commit-Queue: Chih-Yu Huang <akahuang@chromium.org> |
||
---|---|---|
.. | ||
src | ||
.build_test_serial | ||
Cargo.toml |