Consider improving VaVDA unit testing |
||
Issue descriptionVaapiVideoDecodeAccelerator, that is.
,
Aug 16
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b4f1b40236a3fa8f058b0ab3cf6e6a028f1ad7ec commit b4f1b40236a3fa8f058b0ab3cf6e6a028f1ad7ec Author: Miguel Casas <mcasas@chromium.org> Date: Thu Aug 16 01:05:42 2018 VaapiVDA: fold DecodeVASurface into callers VaapiVideoDecodeAccelerator::DecodeVASurface() is superfluous because the callers can do the call to |vaapi_wrapper_| themselves. Moreover, DecodeVaSurface() needs no logging because the underlying method ExecuteAndDestroyPendingBuffers() has already a lot of logs. Bug: 717265 Test: v_d_a vp8/vp9/h264 working as before on nautilus. simplechrome too. Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: Ibc40329808e744f6ca7af98cb7de4e13a7af5016 Reviewed-on: https://chromium-review.googlesource.com/1176279 Reviewed-by: Emircan Uysaler <emircan@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#583477} [modify] https://crrev.com/b4f1b40236a3fa8f058b0ab3cf6e6a028f1ad7ec/media/gpu/vaapi/vaapi_h264_accelerator.cc [modify] https://crrev.com/b4f1b40236a3fa8f058b0ab3cf6e6a028f1ad7ec/media/gpu/vaapi/vaapi_video_decode_accelerator.cc [modify] https://crrev.com/b4f1b40236a3fa8f058b0ab3cf6e6a028f1ad7ec/media/gpu/vaapi/vaapi_video_decode_accelerator.h [modify] https://crrev.com/b4f1b40236a3fa8f058b0ab3cf6e6a028f1ad7ec/media/gpu/vaapi/vaapi_vp8_accelerator.cc [modify] https://crrev.com/b4f1b40236a3fa8f058b0ab3cf6e6a028f1ad7ec/media/gpu/vaapi/vaapi_vp9_accelerator.cc
,
Aug 16
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d16716443c9d02294046597d894ae24e1a50ca12 commit d16716443c9d02294046597d894ae24e1a50ca12 Author: Miguel Casas <mcasas@chromium.org> Date: Thu Aug 16 20:34:07 2018 V4L2SliceVDA: Fold DecodeSurface() into callers Sister CL to crrev.com/c/1176279 -- this CL folds V4L2SliceVideoDecodeAccelerator::DecodeSurface() into callers. This simplifies extracting CreateSurface() and SurfaceReady() into an interface, in turn allowing better unit testing. Bug: 875005 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I07d6934316cac629b2e78e2e96b66a19864bdd9e Reviewed-on: https://chromium-review.googlesource.com/1178322 Reviewed-by: Dan Sanders <sandersd@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#583796} [modify] https://crrev.com/d16716443c9d02294046597d894ae24e1a50ca12/media/gpu/v4l2/v4l2_slice_video_decode_accelerator.cc [modify] https://crrev.com/d16716443c9d02294046597d894ae24e1a50ca12/media/gpu/v4l2/v4l2_slice_video_decode_accelerator.h
,
Aug 28
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e05a563ea82c6ed51e4ae19093afb066f0eb25c7 commit e05a563ea82c6ed51e4ae19093afb066f0eb25c7 Author: Miguel Casas <mcasas@chromium.org> Date: Tue Aug 28 13:58:10 2018 VaVDA: extract surface lifetime into an interface This CL extracts CreateSurface() and SurfaceReady() into a new interface: DecodeSurfaceHandler. This extraction reduces the coupling surface (always good) and allows e.g. easier testing in subsequent CLs. VaapiVideoDecodeAccelerator is made to implement the said templatised interface and teaches the Vaapi*Accelerator classes to use it (instead of the whole VaVDA). Partial diagram before: https://goo.gl/LBxH3h, after: https://goo.gl/E6sDrc. Test: v_d_a_unittests and simplechrome on nautilus Bug: 875005 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: Id376a6a25e664b0b6669b202062ebd7179346c50 Reviewed-on: https://chromium-review.googlesource.com/1178340 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: Dan Sanders <sandersd@chromium.org> Cr-Commit-Position: refs/heads/master@{#586680} [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/BUILD.gn [add] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/decode_surface_handler.h [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/vaapi/vaapi_h264_accelerator.cc [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/vaapi/vaapi_h264_accelerator.h [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/vaapi/vaapi_video_decode_accelerator.cc [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/vaapi/vaapi_video_decode_accelerator.h [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/vaapi/vaapi_vp8_accelerator.cc [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/vaapi/vaapi_vp8_accelerator.h [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/vaapi/vaapi_vp9_accelerator.cc [modify] https://crrev.com/e05a563ea82c6ed51e4ae19093afb066f0eb25c7/media/gpu/vaapi/vaapi_vp9_accelerator.h
,
Aug 28
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03 commit 4061cea4a7b1d8c4abd4e21a606be39c92b3aa03 Author: Filip Gorski <fgorski@chromium.org> Date: Tue Aug 28 20:13:54 2018 Revert "VaVDA: extract surface lifetime into an interface" This reverts commit e05a563ea82c6ed51e4ae19093afb066f0eb25c7. Reason for revert: Speculative revert based on discussion of the failure of: media/avtrack/video-track-selected.html on Linux Tests (dbg)(1): https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Linux%20Tests%20%28dbg%29%281%29/74035 Original change's description: > VaVDA: extract surface lifetime into an interface > > This CL extracts CreateSurface() and SurfaceReady() into a new > interface: DecodeSurfaceHandler. This extraction reduces the > coupling surface (always good) and allows e.g. easier testing in > subsequent CLs. > > VaapiVideoDecodeAccelerator is made to implement the said > templatised interface and teaches the Vaapi*Accelerator classes > to use it (instead of the whole VaVDA). > > Partial diagram before: https://goo.gl/LBxH3h, after: https://goo.gl/E6sDrc. > > Test: v_d_a_unittests and simplechrome on nautilus > Bug: 875005 > Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel > Change-Id: Id376a6a25e664b0b6669b202062ebd7179346c50 > Reviewed-on: https://chromium-review.googlesource.com/1178340 > Commit-Queue: Miguel Casas <mcasas@chromium.org> > Reviewed-by: Dan Sanders <sandersd@chromium.org> > Cr-Commit-Position: refs/heads/master@{#586680} TBR=mcasas@chromium.org,sandersd@chromium.org,andrescj@chromium.org Change-Id: Ic716d1cac32b9ef055c8bd57052ac0342c9dec5c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 875005 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Reviewed-on: https://chromium-review.googlesource.com/1194785 Reviewed-by: Filip Gorski <fgorski@chromium.org> Commit-Queue: Filip Gorski <fgorski@chromium.org> Cr-Commit-Position: refs/heads/master@{#586825} [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/BUILD.gn [delete] https://crrev.com/b90e8a21f4fa4347a694a7699e382ea1ed8a76d7/media/gpu/decode_surface_handler.h [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/vaapi/vaapi_h264_accelerator.cc [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/vaapi/vaapi_h264_accelerator.h [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/vaapi/vaapi_video_decode_accelerator.cc [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/vaapi/vaapi_video_decode_accelerator.h [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/vaapi/vaapi_vp8_accelerator.cc [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/vaapi/vaapi_vp8_accelerator.h [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/vaapi/vaapi_vp9_accelerator.cc [modify] https://crrev.com/4061cea4a7b1d8c4abd4e21a606be39c92b3aa03/media/gpu/vaapi/vaapi_vp9_accelerator.h
,
Aug 28
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b8b8620fbd75e24173ca3549ff3899497878a6a0 commit b8b8620fbd75e24173ca3549ff3899497878a6a0 Author: Filip Gorski <fgorski@chromium.org> Date: Tue Aug 28 21:02:39 2018 Reland "VaVDA: extract surface lifetime into an interface" This reverts commit 4061cea4a7b1d8c4abd4e21a606be39c92b3aa03. Reason for revert: This revert was speculative and it appears to not have been the root cause of the problem. Original change's description: > Revert "VaVDA: extract surface lifetime into an interface" > > This reverts commit e05a563ea82c6ed51e4ae19093afb066f0eb25c7. > > Reason for revert: > Speculative revert based on discussion of the failure of: > media/avtrack/video-track-selected.html > > on Linux Tests (dbg)(1): > https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Linux%20Tests%20%28dbg%29%281%29/74035 > > Original change's description: > > VaVDA: extract surface lifetime into an interface > > > > This CL extracts CreateSurface() and SurfaceReady() into a new > > interface: DecodeSurfaceHandler. This extraction reduces the > > coupling surface (always good) and allows e.g. easier testing in > > subsequent CLs. > > > > VaapiVideoDecodeAccelerator is made to implement the said > > templatised interface and teaches the Vaapi*Accelerator classes > > to use it (instead of the whole VaVDA). > > > > Partial diagram before: https://goo.gl/LBxH3h, after: https://goo.gl/E6sDrc. > > > > Test: v_d_a_unittests and simplechrome on nautilus > > Bug: 875005 > > Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel > > Change-Id: Id376a6a25e664b0b6669b202062ebd7179346c50 > > Reviewed-on: https://chromium-review.googlesource.com/1178340 > > Commit-Queue: Miguel Casas <mcasas@chromium.org> > > Reviewed-by: Dan Sanders <sandersd@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#586680} > > TBR=mcasas@chromium.org,sandersd@chromium.org,andrescj@chromium.org > > Change-Id: Ic716d1cac32b9ef055c8bd57052ac0342c9dec5c > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: 875005 > Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel > Reviewed-on: https://chromium-review.googlesource.com/1194785 > Reviewed-by: Filip Gorski <fgorski@chromium.org> > Commit-Queue: Filip Gorski <fgorski@chromium.org> > Cr-Commit-Position: refs/heads/master@{#586825} TBR=fgorski@chromium.org,mcasas@chromium.org,sandersd@chromium.org,andrescj@chromium.org Change-Id: Ib97313afdc28bcf7f29a31feb61ca623366d617f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 875005 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Reviewed-on: https://chromium-review.googlesource.com/1194863 Reviewed-by: Filip Gorski <fgorski@chromium.org> Commit-Queue: Filip Gorski <fgorski@chromium.org> Cr-Commit-Position: refs/heads/master@{#586849} [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/BUILD.gn [add] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/decode_surface_handler.h [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/vaapi/vaapi_h264_accelerator.cc [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/vaapi/vaapi_h264_accelerator.h [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/vaapi/vaapi_video_decode_accelerator.cc [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/vaapi/vaapi_video_decode_accelerator.h [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/vaapi/vaapi_vp8_accelerator.cc [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/vaapi/vaapi_vp8_accelerator.h [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/vaapi/vaapi_vp9_accelerator.cc [modify] https://crrev.com/b8b8620fbd75e24173ca3549ff3899497878a6a0/media/gpu/vaapi/vaapi_vp9_accelerator.h
,
Aug 31
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1fa22f6879ca863a6c5f4d81b18bb237a67c3c55 commit 1fa22f6879ca863a6c5f4d81b18bb237a67c3c55 Author: Miguel Casas <mcasas@chromium.org> Date: Fri Aug 31 00:13:56 2018 V4L2SliceVDA: use DecodeSurfaceHandler interface This CL moves V4L2SliceVDA to use DecodeSurfaceHandler interface. This needs moving the inner V4L2DecodeSurface out of V4L2VDA, which causes a ripple of mechanic substitutions in the .cc file. Note that the inner classes still have the * to V4L2VDA because other methods are needed in addition to the interface. Partial diagram before: https://goo.gl/LBxH3h, after: https://goo.gl/E6sDrc. Bug: 875005 Test: v_d_a_unittests and simplechrome on kevin Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: Ibed94b8763e02ffbfef3b5137684306761e5d748 Reviewed-on: https://chromium-review.googlesource.com/1178667 Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Reviewed-by: Hirokazu Honda <hiroh@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#587869} [modify] https://crrev.com/1fa22f6879ca863a6c5f4d81b18bb237a67c3c55/media/gpu/v4l2/v4l2_slice_video_decode_accelerator.cc [modify] https://crrev.com/1fa22f6879ca863a6c5f4d81b18bb237a67c3c55/media/gpu/v4l2/v4l2_slice_video_decode_accelerator.h
,
Sep 4
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9c0786e957e529a65c475e0b796f70d968835505 commit 9c0786e957e529a65c475e0b796f70d968835505 Author: Miguel Casas <mcasas@chromium.org> Date: Tue Sep 04 15:53:50 2018 jpeg_decode_accelerator_unittest: remove ScopedClosureRunner This CL removes the use of base::ScopedClosureRunner from the JDA unittests, instead using a new class ScopedJpegClient that holds on to the Jpegclient to get it removed on the appropriate thread on destruction. Arguably a small cleanup, but takes away the idea of JpegClient lifetime out of the individual test svc functions. Test: ./jpeg_decode_accelerator_unittest on nautilus Bug: 875005 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I5025c05a7aa3b5b18d23d3fd7f6fcfb47baae7c2 Reviewed-on: https://chromium-review.googlesource.com/1198302 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#588524} [modify] https://crrev.com/9c0786e957e529a65c475e0b796f70d968835505/media/gpu/jpeg_decode_accelerator_unittest.cc
,
Sep 4
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9c0786e957e529a65c475e0b796f70d968835505 commit 9c0786e957e529a65c475e0b796f70d968835505 Author: Miguel Casas <mcasas@chromium.org> Date: Tue Sep 04 15:53:50 2018 jpeg_decode_accelerator_unittest: remove ScopedClosureRunner This CL removes the use of base::ScopedClosureRunner from the JDA unittests, instead using a new class ScopedJpegClient that holds on to the Jpegclient to get it removed on the appropriate thread on destruction. Arguably a small cleanup, but takes away the idea of JpegClient lifetime out of the individual test svc functions. Test: ./jpeg_decode_accelerator_unittest on nautilus Bug: 875005 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I5025c05a7aa3b5b18d23d3fd7f6fcfb47baae7c2 Reviewed-on: https://chromium-review.googlesource.com/1198302 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#588524} [modify] https://crrev.com/9c0786e957e529a65c475e0b796f70d968835505/media/gpu/jpeg_decode_accelerator_unittest.cc
,
Sep 4
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9c0786e957e529a65c475e0b796f70d968835505 commit 9c0786e957e529a65c475e0b796f70d968835505 Author: Miguel Casas <mcasas@chromium.org> Date: Tue Sep 04 15:53:50 2018 jpeg_decode_accelerator_unittest: remove ScopedClosureRunner This CL removes the use of base::ScopedClosureRunner from the JDA unittests, instead using a new class ScopedJpegClient that holds on to the Jpegclient to get it removed on the appropriate thread on destruction. Arguably a small cleanup, but takes away the idea of JpegClient lifetime out of the individual test svc functions. Test: ./jpeg_decode_accelerator_unittest on nautilus Bug: 875005 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I5025c05a7aa3b5b18d23d3fd7f6fcfb47baae7c2 Reviewed-on: https://chromium-review.googlesource.com/1198302 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Commit-Position: refs/heads/master@{#588524} [modify] https://crrev.com/9c0786e957e529a65c475e0b796f70d968835505/media/gpu/jpeg_decode_accelerator_unittest.cc
,
Dec 27
,
Jan 4
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c3c351c662ff2b60b2f8de2c9a1890f20d35693b commit c3c351c662ff2b60b2f8de2c9a1890f20d35693b Author: Miguel Casas <mcasas@chromium.org> Date: Fri Jan 04 01:02:47 2019 vaapi: use |decode_using_client_picture_buffers| for VDA test parameter This CL extends VaapiVideoDecodeAcceleratorTest to use the flag |decode_using_client_picture_buffers| as test parameter, and teaches it what to do when it's true (on ToT is always false). Test: bots chromeos-amd64-generic-rel linux-chromeos-rel run the new cases. Bug: 875005 Change-Id: Id0d500d4f27e273037a80c2e0507d906690ac98d Reviewed-on: https://chromium-review.googlesource.com/c/1394946 Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#619838} [modify] https://crrev.com/c3c351c662ff2b60b2f8de2c9a1890f20d35693b/media/gpu/vaapi/vaapi_video_decode_accelerator_unittest.cc [modify] https://crrev.com/c3c351c662ff2b60b2f8de2c9a1890f20d35693b/media/gpu/vaapi/vaapi_wrapper.h |
||
►
Sign in to add a comment |
||
Comment 1 by mcasas@chromium.org
, Aug 16