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

Issue 7361010: Enable fire-and-forget Destroy of HW video decoder, and misc other improvements. (Closed)

Created:
9 years, 5 months ago by Ami GONE FROM CHROMIUM
Modified:
9 years, 5 months ago
CC:
chromium-reviews, hclam+watch_chromium.org, sjl, ddorwin+watch_chromium.org, fischman+watch_chromium.org, jam, Paweł Hajdan Jr., acolwell+watch_chromium.org, annacc+watch_chromium.org, apatrick_chromium, joi+watch-content_chromium.org, darin-cc_chromium.org, ajwong+watch_chromium.org, vrk (LEFT CHROMIUM), piman+watch_chromium.org, scherkus (not reviewing), vjain, cfreeman
Visibility:
Public.

Description

Enable fire-and-forget Destroy of HW video decoder, and misc other improvements. - Instead of requiring the client to wait for NotifyDestroyDone we do the asynchronous OMX teardown dance on the client's behalf. - Prettify/simplify error handling in OVDA for easier matching of errors to OMX_Core.h and to remove redundant information. - Enable previously-DISABLED_ early-teardown unittests! - Remove passing VideoDecoder_Dev object in PPP_VideoDecoder_Dev calls, because it was unnecssary, and because the ~VideoDecoder_Dev dtor is now not a no-op so we don't want to call it spuriously. - Remove accidentally re-added gpu_video_service_host.cc (originally removed in 92251, accidentally reintroduced by a bad rebase in 92383). BUG=none TEST=ovdatest passes (incl. early-teardown tests) and gles2 works (including reload and EOS handling, no crashes) Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=92704

Patch Set 1 #

Patch Set 2 : . #

Total comments: 8

Patch Set 3 : Add resource-exhaustion tests to demonstrate Initialize failure during concurrent decode. #

Patch Set 4 : . #

Total comments: 6

Patch Set 5 : vrk CR responses. #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+296 lines, -384 lines) Patch
M content/common/gpu/gpu_messages.h View 2 chunks +2 lines, -5 lines 0 comments Download
M content/common/gpu/media/gpu_video_decode_accelerator.h View 2 chunks +1 line, -2 lines 0 comments Download
M content/common/gpu/media/gpu_video_decode_accelerator.cc View 2 chunks +1 line, -6 lines 0 comments Download
M content/common/gpu/media/omx_video_decode_accelerator.h View 1 2 3 4 5 chunks +9 lines, -3 lines 0 comments Download
M content/common/gpu/media/omx_video_decode_accelerator.cc View 1 2 3 31 chunks +117 lines, -66 lines 0 comments Download
M content/common/gpu/media/omx_video_decode_accelerator_unittest.cc View 1 2 3 4 17 chunks +61 lines, -36 lines 0 comments Download
M content/renderer/gpu/command_buffer_proxy.h View 2 chunks +3 lines, -5 lines 0 comments Download
M content/renderer/gpu/command_buffer_proxy.cc View 2 chunks +7 lines, -6 lines 0 comments Download
M content/renderer/gpu/gpu_video_decode_accelerator_host.h View 1 chunk +0 lines, -1 line 0 comments Download
M content/renderer/gpu/gpu_video_decode_accelerator_host.cc View 3 chunks +2 lines, -13 lines 0 comments Download
D content/renderer/gpu/gpu_video_service_host.cc View 1 chunk +0 lines, -76 lines 0 comments Download
M content/renderer/pepper_platform_video_decoder_impl.h View 1 2 3 4 3 chunks +5 lines, -7 lines 0 comments Download
M content/renderer/pepper_platform_video_decoder_impl.cc View 2 chunks +1 line, -7 lines 0 comments Download
M media/video/video_decode_accelerator.h View 3 chunks +12 lines, -10 lines 0 comments Download
M ppapi/c/dev/ppb_video_decoder_dev.h View 1 2 3 4 3 chunks +8 lines, -12 lines 0 comments Download
M ppapi/c/dev/ppp_video_decoder_dev.h View 6 chunks +5 lines, -17 lines 0 comments Download
M ppapi/cpp/dev/video_decoder_client_dev.h View 1 chunk +5 lines, -11 lines 0 comments Download
M ppapi/cpp/dev/video_decoder_client_dev.cc View 2 chunks +8 lines, -17 lines 0 comments Download
M ppapi/cpp/dev/video_decoder_dev.h View 1 chunk +4 lines, -1 line 0 comments Download
M ppapi/cpp/dev/video_decoder_dev.cc View 2 chunks +4 lines, -8 lines 0 comments Download
M ppapi/examples/gles2/gles2.cc View 8 chunks +17 lines, -24 lines 0 comments Download
M ppapi/thunk/ppb_video_decoder_api.h View 1 chunk +1 line, -1 line 0 comments Download
M ppapi/thunk/ppb_video_decoder_thunk.cc View 1 chunk +3 lines, -5 lines 2 comments Download
M webkit/plugins/ppapi/plugin_delegate.h View 1 chunk +1 line, -1 line 0 comments Download
M webkit/plugins/ppapi/ppb_video_decoder_impl.h View 4 chunks +2 lines, -4 lines 0 comments Download
M webkit/plugins/ppapi/ppb_video_decoder_impl.cc View 11 chunks +17 lines, -40 lines 0 comments Download

Messages

Total messages: 9 (0 generated)
Ami GONE FROM CHROMIUM
Brett: please OWNERS review content/{renderer,common}, ppapi, and webkit/plugins/ppapi. Victoria: please review all of it.
9 years, 5 months ago (2011-07-14 01:41:46 UTC) #1
vhiremath
http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.cc File content/common/gpu/media/omx_video_decode_accelerator.cc (right): http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.cc#newcode438 content/common/gpu/media/omx_video_decode_accelerator.cc:438: client_ = NULL; Do we really want to do ...
9 years, 5 months ago (2011-07-14 14:29:15 UTC) #2
Ami GONE FROM CHROMIUM
http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.cc File content/common/gpu/media/omx_video_decode_accelerator.cc (right): http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.cc#newcode438 content/common/gpu/media/omx_video_decode_accelerator.cc:438: client_ = NULL; On 2011/07/14 14:29:15, vhiremath wrote: > ...
9 years, 5 months ago (2011-07-14 16:23:03 UTC) #3
vrk (LEFT CHROMIUM)
LGTM http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.h File content/common/gpu/media/omx_video_decode_accelerator.h (right): http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.h#newcode21 content/common/gpu/media/omx_video_decode_accelerator.h:21: #include "base/memory/ref_counted.h" nit: includes in ABC order http://codereview.chromium.org/7361010/diff/10001/content/common/gpu/media/omx_video_decode_accelerator_unittest.cc ...
9 years, 5 months ago (2011-07-14 20:34:00 UTC) #4
Ami GONE FROM CHROMIUM
http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.h File content/common/gpu/media/omx_video_decode_accelerator.h (right): http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.h#newcode21 content/common/gpu/media/omx_video_decode_accelerator.h:21: #include "base/memory/ref_counted.h" On 2011/07/14 20:34:01, Victoria Kirst wrote: > ...
9 years, 5 months ago (2011-07-14 20:46:09 UTC) #5
Ami GONE FROM CHROMIUM
On 2011/07/14 16:23:03, Ami Fischman wrote: > http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.cc > File content/common/gpu/media/omx_video_decode_accelerator.cc (right): > > http://codereview.chromium.org/7361010/diff/2001/content/common/gpu/media/omx_video_decode_accelerator.cc#newcode438 ...
9 years, 5 months ago (2011-07-15 04:02:55 UTC) #6
Ami GONE FROM CHROMIUM
brettw: i can haz OWNERS review?
9 years, 5 months ago (2011-07-15 16:25:19 UTC) #7
brettw
spot-checked rubberstamp LGTM http://codereview.chromium.org/7361010/diff/14001/ppapi/thunk/ppb_video_decoder_thunk.cc File ppapi/thunk/ppb_video_decoder_thunk.cc (right): http://codereview.chromium.org/7361010/diff/14001/ppapi/thunk/ppb_video_decoder_thunk.cc#newcode86 ppapi/thunk/ppb_video_decoder_thunk.cc:86: if (enter.failed()) In this case I ...
9 years, 5 months ago (2011-07-15 16:57:21 UTC) #8
Ami GONE FROM CHROMIUM
9 years, 5 months ago (2011-07-15 17:10:14 UTC) #9
Thanks.

http://codereview.chromium.org/7361010/diff/14001/ppapi/thunk/ppb_video_decod...
File ppapi/thunk/ppb_video_decoder_thunk.cc (right):

http://codereview.chromium.org/7361010/diff/14001/ppapi/thunk/ppb_video_decod...
ppapi/thunk/ppb_video_decoder_thunk.cc:86: if (enter.failed())
On 2011/07/15 16:57:21, brettw wrote:
> In this case I would do:
>   if (enter.succeeded())
>     enter.object()->Destroy();
> To save a line.

Done.

Powered by Google App Engine
This is Rietveld 408576698