Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(24)

Issue 1839193003: Reland: Introduce GpuVideoDecodeAcceleratorFactory. (Closed)

Created:
4 years, 8 months ago by Pawel Osciak
Modified:
4 years, 8 months ago
CC:
chromium-reviews, posciak+watch_chromium.org, mcasas+watch_chromium.org, feature-media-reviews_chromium.org, darin-cc_chromium.org, piman+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Reland: Introduce GpuVideoDecodeAcceleratorFactory. Original CL: https://codereview.chromium.org/1745903002. This includes fixes from boliu@ for gn build. TBR=kcwu@chromium.org,owenlin@chromium.org,sandersd@chromium.org,liberato@chromium.org,fsamuel@chromium.org,jochen@chromium.org,jam@chromium.org Original message: Introduce GpuVideoDecodeAcceleratorFactory. - Move platform-specific code from GpuVideoDecodeAccelerator to GpuVideoDecodeAcceleratorFactory. - Make GVDAFactory a content/public interface, to provide the ability to instantiate VDAs from outside content/. - Unify how we obtain access to various GL functionality/classes from VDAs by introducing a set of callbacks provided by the client. - Replace VDA::CanDecodeOnIOThread() with VDA::TryInitializeDecodeOnSeparateThread(). This allows us to remove additional client/taskrunner arguments from VDA constructors, and give client the option to use a separate thread to decode, instead of having to make this decision in the factory, and enforcing these arguments in the constructors. - Deduplicate VDA creation code across users (currently GVDA and vdaunittest). BUG=b/27687678 TEST=compile/run various VDA impls Committed: https://crrev.com/41c590cdfef6ce63694776f99a1b85584b485478 Cr-Commit-Position: refs/heads/master@{#385343}

Patch Set 1 : #

Total comments: 2

Patch Set 2 : #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+1110 lines, -589 lines) Patch
M content/common/gpu/media/android_video_decode_accelerator.h View 1 5 chunks +11 lines, -7 lines 0 comments Download
M content/common/gpu/media/android_video_decode_accelerator.cc View 1 8 chunks +44 lines, -33 lines 0 comments Download
M content/common/gpu/media/android_video_decode_accelerator_unittest.cc View 1 2 chunks +7 lines, -1 line 0 comments Download
M content/common/gpu/media/dxva_video_decode_accelerator_win.h View 1 5 chunks +10 lines, -7 lines 0 comments Download
M content/common/gpu/media/dxva_video_decode_accelerator_win.cc View 1 12 chunks +31 lines, -19 lines 0 comments Download
M content/common/gpu/media/fake_video_decode_accelerator.h View 4 chunks +8 lines, -6 lines 0 comments Download
M content/common/gpu/media/fake_video_decode_accelerator.cc View 1 3 chunks +9 lines, -10 lines 0 comments Download
M content/common/gpu/media/gpu_video_decode_accelerator.h View 1 4 chunks +11 lines, -35 lines 0 comments Download
M content/common/gpu/media/gpu_video_decode_accelerator.cc View 1 6 chunks +82 lines, -198 lines 0 comments Download
A content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.h View 1 1 chunk +122 lines, -0 lines 0 comments Download
A content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.cc View 1 1 chunk +241 lines, -0 lines 0 comments Download
A content/common/gpu/media/gpu_video_decode_accelerator_helpers.h View 1 1 chunk +59 lines, -0 lines 0 comments Download
M content/common/gpu/media/rendering_helper.h View 1 chunk +1 line, -4 lines 0 comments Download
M content/common/gpu/media/rendering_helper.cc View 1 chunk +2 lines, -6 lines 0 comments Download
M content/common/gpu/media/v4l2_slice_video_decode_accelerator.h View 6 chunks +16 lines, -13 lines 0 comments Download
M content/common/gpu/media/v4l2_slice_video_decode_accelerator.cc View 1 14 chunks +40 lines, -22 lines 0 comments Download
M content/common/gpu/media/v4l2_video_decode_accelerator.h View 6 chunks +17 lines, -14 lines 0 comments Download
M content/common/gpu/media/v4l2_video_decode_accelerator.cc View 1 14 chunks +41 lines, -22 lines 0 comments Download
M content/common/gpu/media/vaapi_drm_picture.h View 3 chunks +2 lines, -3 lines 0 comments Download
M content/common/gpu/media/vaapi_drm_picture.cc View 2 chunks +4 lines, -4 lines 0 comments Download
M content/common/gpu/media/vaapi_picture.h View 2 chunks +3 lines, -3 lines 0 comments Download
M content/common/gpu/media/vaapi_picture.cc View 1 chunk +3 lines, -3 lines 0 comments Download
M content/common/gpu/media/vaapi_tfp_picture.h View 3 chunks +2 lines, -3 lines 0 comments Download
M content/common/gpu/media/vaapi_tfp_picture.cc View 2 chunks +4 lines, -4 lines 0 comments Download
M content/common/gpu/media/vaapi_video_decode_accelerator.h View 1 5 chunks +13 lines, -10 lines 0 comments Download
M content/common/gpu/media/vaapi_video_decode_accelerator.cc View 1 5 chunks +18 lines, -9 lines 0 comments Download
M content/common/gpu/media/video_decode_accelerator_unittest.cc View 1 9 chunks +49 lines, -120 lines 1 comment Download
M content/common/gpu/media/vt_video_decode_accelerator_mac.h View 1 4 chunks +11 lines, -5 lines 0 comments Download
M content/common/gpu/media/vt_video_decode_accelerator_mac.cc View 1 6 chunks +19 lines, -9 lines 0 comments Download
M content/content_common.gypi View 1 1 chunk +3 lines, -0 lines 0 comments Download
M content/content_gpu.gypi View 1 chunk +2 lines, -0 lines 0 comments Download
M content/public/gpu/BUILD.gn View 2 chunks +5 lines, -0 lines 0 comments Download
A content/public/gpu/DEPS View 1 chunk +9 lines, -0 lines 0 comments Download
A content/public/gpu/gpu_video_decode_accelerator_factory.h View 1 1 chunk +96 lines, -0 lines 0 comments Download
A content/public/gpu/gpu_video_decode_accelerator_factory.cc View 1 chunk +68 lines, -0 lines 0 comments Download
M media/video/mock_video_decode_accelerator.h View 1 chunk +3 lines, -1 line 0 comments Download
M media/video/video_decode_accelerator.h View 1 3 chunks +39 lines, -15 lines 0 comments Download
M media/video/video_decode_accelerator.cc View 1 chunk +5 lines, -3 lines 0 comments Download

Messages

Total messages: 22 (6 generated)
Pawel Osciak
boliu@, brettw@: PTAL at corrected BUILD files (based on https://codereview.chromium.org/1838493002/).
4 years, 8 months ago (2016-03-30 11:50:07 UTC) #3
jam
slgtm
4 years, 8 months ago (2016-03-30 15:55:22 UTC) #4
jam
On 2016/03/30 15:55:22, jam wrote: > slgtm (still lgtm)
4 years, 8 months ago (2016-03-30 15:55:38 UTC) #5
liberato (no reviews please)
lgtm % one nit i missed earlier. https://codereview.chromium.org/1839193003/diff/20001/content/common/gpu/media/android_video_decode_accelerator.cc File content/common/gpu/media/android_video_decode_accelerator.cc (right): https://codereview.chromium.org/1839193003/diff/20001/content/common/gpu/media/android_video_decode_accelerator.cc#newcode1003 content/common/gpu/media/android_video_decode_accelerator.cc:1003: strategy_->Cleanup(have_context, output_picture_buffers_); ...
4 years, 8 months ago (2016-03-30 16:18:01 UTC) #6
boliu
I'll let brettw@ review the gn things. But I can confirm this doesn't break webview ...
4 years, 8 months ago (2016-03-30 16:22:21 UTC) #7
Pawel Osciak
https://codereview.chromium.org/1839193003/diff/20001/content/common/gpu/media/android_video_decode_accelerator.cc File content/common/gpu/media/android_video_decode_accelerator.cc (right): https://codereview.chromium.org/1839193003/diff/20001/content/common/gpu/media/android_video_decode_accelerator.cc#newcode1003 content/common/gpu/media/android_video_decode_accelerator.cc:1003: strategy_->Cleanup(have_context, output_picture_buffers_); On 2016/03/30 16:18:01, liberato wrote: > since ...
4 years, 8 months ago (2016-04-05 10:01:09 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1839193003/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1839193003/40001
4 years, 8 months ago (2016-04-06 00:14:57 UTC) #11
commit-bot: I haz the power
Committed patchset #2 (id:40001)
4 years, 8 months ago (2016-04-06 00:21:20 UTC) #12
commit-bot: I haz the power
Patchset 2 (id:??) landed as https://crrev.com/41c590cdfef6ce63694776f99a1b85584b485478 Cr-Commit-Position: refs/heads/master@{#385343}
4 years, 8 months ago (2016-04-06 00:23:43 UTC) #14
hans
I'm getting link errors for video_decode_accelerator_unittest.exe in component=shared_library builds with Clang on Windows. I expect ...
4 years, 8 months ago (2016-04-08 01:29:43 UTC) #16
hans
Error message (from https://build.chromium.org/p/chromium.fyi/builders/ClangToTWin%28dbg%29/builds/5297/steps/compile/logs/stdio) video_decode_accelerator_unittest.video_decode_accelerator_unittest.obj : error LNK2019: unresolved external symbol "public: __thiscall content::GpuVideoDecodeAcceleratorFactoryImpl::~GpuVideoDecodeAcceleratorFactoryImpl(void)" (??1GpuVideoDecodeAcceleratorFactoryImpl@content@@QAE@XZ) ...
4 years, 8 months ago (2016-04-08 01:30:35 UTC) #17
Pawel Osciak
On 2016/04/08 01:29:43, hans wrote: > I'm getting link errors for video_decode_accelerator_unittest.exe in > component=shared_library ...
4 years, 8 months ago (2016-04-08 01:34:11 UTC) #18
hans
On 2016/04/08 01:34:11, Pawel Osciak wrote: > On 2016/04/08 01:29:43, hans wrote: > > I'm ...
4 years, 8 months ago (2016-04-08 04:42:45 UTC) #19
hans
I've tried to revert this, but there are a ton of patches landed on top ...
4 years, 8 months ago (2016-04-08 05:09:08 UTC) #20
Pawel Osciak
On 2016/04/08 05:09:08, hans wrote: > I've tried to revert this, but there are a ...
4 years, 8 months ago (2016-04-08 07:41:01 UTC) #21
hans
4 years, 8 months ago (2016-04-08 16:54:07 UTC) #22
Message was sent while issue was closed.
On 2016/04/08 07:41:01, Pawel Osciak wrote:
> On 2016/04/08 05:09:08, hans wrote:
> > I've tried to revert this, but there are a ton of patches landed on top
making
> > it hard.
> 
> 
> Given that revert is not straightforward I think it would be great to try to
> just fix the dependency with a small followup CL. I believe
> https://chromiumcodereview.appspot.com/1859403002/ should remove the
dependency
> altogether.

It seems https://codereview.chromium.org/1845563005 fixed the build. Let's hope
it sticks.

Powered by Google App Engine
This is Rietveld 408576698