VDAViideoDecoder doesn't handle resolution change correctly? |
|||||||
Issue descriptionWe have run into the regression related to resolution change, crbug.com/906475 . It turned out the CL to enable MojoVideoDecoder on CrOS was culprit, which was already reverted for some other issues, crrev.com/c/1328634. Doesn't VDAVideoDecoder handle resolution change correctly with CrOS VDAs? The regression happens with all of three CrOS VDAs, V4L2VDA, V4L2SVDA and VaapiVDA. Dan, could you take a look?
,
Nov 19
The test is a simple custom html page with a <video> element seeking via js: https://chromium.googlesource.com/chromiumos/third_party/autotest/+/HEAD/client/site_tests/video_VideoSeek/. I think it should be possible to reproduce via http://crosvideo.appspot.com/?cycle=true&mute=true&loop=true&seek=true as well though.
,
Dec 7
Affects at least Windows as well, will need to merge back at least some change (either the fix or turn off the flag).
,
Dec 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/35b82bc8409d987903dae8ff366ebebb9d526bf0 commit 35b82bc8409d987903dae8ff366ebebb9d526bf0 Author: Dan Sanders <sandersd@chromium.org> Date: Mon Dec 10 21:30:36 2018 [media] Fix race between ready and dismiss in VdaVideoDecoder. During the time between when VdaVideoDecoder posts PictureReady to the parent thread and when that task runs, it is possible for a VDA to dismiss the associated picture buffer. This CL adds a hop through the parent thread for DismissPictureBuffer(). Bug: 906623 Change-Id: I46db8aff8b7687e5ec7b00c70068002fe2f2983e Reviewed-on: https://chromium-review.googlesource.com/c/1362005 Reviewed-by: Hirokazu Honda <hiroh@chromium.org> Reviewed-by: Frank Liberato <liberato@chromium.org> Reviewed-by: Ted Meyer <tmathmeyer@chromium.org> Commit-Queue: Dan Sanders <sandersd@chromium.org> Cr-Commit-Position: refs/heads/master@{#615265} [modify] https://crrev.com/35b82bc8409d987903dae8ff366ebebb9d526bf0/media/gpu/ipc/service/picture_buffer_manager.cc [modify] https://crrev.com/35b82bc8409d987903dae8ff366ebebb9d526bf0/media/gpu/ipc/service/picture_buffer_manager.h [modify] https://crrev.com/35b82bc8409d987903dae8ff366ebebb9d526bf0/media/gpu/ipc/service/vda_video_decoder.cc [modify] https://crrev.com/35b82bc8409d987903dae8ff366ebebb9d526bf0/media/gpu/ipc/service/vda_video_decoder.h [modify] https://crrev.com/35b82bc8409d987903dae8ff366ebebb9d526bf0/media/gpu/ipc/service/vda_video_decoder_unittest.cc
,
Dec 11
Code changes are small, straightforward, and tested. The failure mode is not sensitive, it's video playback failure during video size changes.
,
Dec 11
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ca7f9b7713f5b5274b8d74a24d7526421e4c2350 commit ca7f9b7713f5b5274b8d74a24d7526421e4c2350 Author: Dan Sanders <sandersd@chromium.org> Date: Tue Dec 11 23:56:50 2018 [media] Refactorings for VdaVideoDecoder and PictureBufferManager. These refactorings were removed from https://crrev.com/c/1362005 to reduce the size of the patch. This change also fixes a previously unknown issue in PictureBufferManager whereby show_existing_frame picture buffers could be destroyed while there are still outstanding video frames using the textures. Bug: 906623 Change-Id: I0a243684c9a6d44dec5a5f279cf28f51b79c99c0 Reviewed-on: https://chromium-review.googlesource.com/c/1368780 Commit-Queue: Dan Sanders <sandersd@chromium.org> Reviewed-by: Hirokazu Honda <hiroh@chromium.org> Cr-Commit-Position: refs/heads/master@{#615730} [modify] https://crrev.com/ca7f9b7713f5b5274b8d74a24d7526421e4c2350/media/gpu/command_buffer_helper.cc [modify] https://crrev.com/ca7f9b7713f5b5274b8d74a24d7526421e4c2350/media/gpu/command_buffer_helper.h [modify] https://crrev.com/ca7f9b7713f5b5274b8d74a24d7526421e4c2350/media/gpu/fake_command_buffer_helper.cc [modify] https://crrev.com/ca7f9b7713f5b5274b8d74a24d7526421e4c2350/media/gpu/fake_command_buffer_helper.h [modify] https://crrev.com/ca7f9b7713f5b5274b8d74a24d7526421e4c2350/media/gpu/ipc/service/picture_buffer_manager.cc [modify] https://crrev.com/ca7f9b7713f5b5274b8d74a24d7526421e4c2350/media/gpu/ipc/service/picture_buffer_manager_unittest.cc [modify] https://crrev.com/ca7f9b7713f5b5274b8d74a24d7526421e4c2350/media/gpu/ipc/service/vda_video_decoder.cc [modify] https://crrev.com/ca7f9b7713f5b5274b8d74a24d7526421e4c2350/media/gpu/ipc/service/vda_video_decoder.h
,
Dec 12
can you verify which CL needs to be merged? Have you verified the fixes in canary?
,
Dec 12
Your change meets the bar and is auto-approved for M72. Please go ahead and merge the CL to branch 3626 manually. Please contact milestone owner if you have questions. Owners: govind@(Android), kariahda@(iOS), djmm@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Dec 13
Pls merge your change to M72 branch 3626 ASAP. Thank you.
,
Dec 13
Pls merge your change to M72 branch 3626 ASAP so we can pick it up for next M72 Beta release. Thank you.
,
Dec 14
Sorry, I had wrong filters configured and missed all of this D: Only the first CL is intended for M72, 35b82bc8409d987903dae8ff366ebebb9d526bf0. It has been tested and, due to my lack of attention, has baked in canary for some time. I will merge it immediately.
,
Dec 14
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3bff2ba90ba82d6389039a809252e045cf745105 commit 3bff2ba90ba82d6389039a809252e045cf745105 Author: Dan Sanders <sandersd@chromium.org> Date: Fri Dec 14 20:04:06 2018 [media] Fix race between ready and dismiss in VdaVideoDecoder. During the time between when VdaVideoDecoder posts PictureReady to the parent thread and when that task runs, it is possible for a VDA to dismiss the associated picture buffer. This CL adds a hop through the parent thread for DismissPictureBuffer(). Bug: 906623 Change-Id: I46db8aff8b7687e5ec7b00c70068002fe2f2983e Reviewed-on: https://chromium-review.googlesource.com/c/1362005 Reviewed-by: Hirokazu Honda <hiroh@chromium.org> Reviewed-by: Frank Liberato <liberato@chromium.org> Reviewed-by: Ted Meyer <tmathmeyer@chromium.org> Commit-Queue: Dan Sanders <sandersd@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#615265}(cherry picked from commit 35b82bc8409d987903dae8ff366ebebb9d526bf0) Reviewed-on: https://chromium-review.googlesource.com/c/1378632 Reviewed-by: Dan Sanders <sandersd@chromium.org> Cr-Commit-Position: refs/branch-heads/3626@{#364} Cr-Branched-From: d897fb137fbaaa9355c0c93124cc048824eb1e65-refs/heads/master@{#612437} [modify] https://crrev.com/3bff2ba90ba82d6389039a809252e045cf745105/media/gpu/ipc/service/picture_buffer_manager.cc [modify] https://crrev.com/3bff2ba90ba82d6389039a809252e045cf745105/media/gpu/ipc/service/picture_buffer_manager.h [modify] https://crrev.com/3bff2ba90ba82d6389039a809252e045cf745105/media/gpu/ipc/service/vda_video_decoder.cc [modify] https://crrev.com/3bff2ba90ba82d6389039a809252e045cf745105/media/gpu/ipc/service/vda_video_decoder.h [modify] https://crrev.com/3bff2ba90ba82d6389039a809252e045cf745105/media/gpu/ipc/service/vda_video_decoder_unittest.cc
,
Dec 17
,
Dec 19
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3bff2ba90ba82d6389039a809252e045cf745105 Commit: 3bff2ba90ba82d6389039a809252e045cf745105 Author: sandersd@chromium.org Commiter: sandersd@chromium.org Date: 2018-12-14 20:04:06 +0000 UTC [media] Fix race between ready and dismiss in VdaVideoDecoder. During the time between when VdaVideoDecoder posts PictureReady to the parent thread and when that task runs, it is possible for a VDA to dismiss the associated picture buffer. This CL adds a hop through the parent thread for DismissPictureBuffer(). Bug: 906623 Change-Id: I46db8aff8b7687e5ec7b00c70068002fe2f2983e Reviewed-on: https://chromium-review.googlesource.com/c/1362005 Reviewed-by: Hirokazu Honda <hiroh@chromium.org> Reviewed-by: Frank Liberato <liberato@chromium.org> Reviewed-by: Ted Meyer <tmathmeyer@chromium.org> Commit-Queue: Dan Sanders <sandersd@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#615265}(cherry picked from commit 35b82bc8409d987903dae8ff366ebebb9d526bf0) Reviewed-on: https://chromium-review.googlesource.com/c/1378632 Reviewed-by: Dan Sanders <sandersd@chromium.org> Cr-Commit-Position: refs/branch-heads/3626@{#364} Cr-Branched-From: d897fb137fbaaa9355c0c93124cc048824eb1e65-refs/heads/master@{#612437} |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by sandersd@google.com
, Nov 19