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

Issue 805193006: Fix VideoDecoderShim to return correct decode_id for all codecs. (Closed)

Created:
5 years, 11 months ago by Sergey Ulanov
Modified:
5 years, 11 months ago
Reviewers:
bbudge, xhwang
CC:
chromium-reviews, mkwst+moarreviews-renderer_chromium.org, darin-cc_chromium.org, feature-media-reviews_chromium.org, jam, mlamouri+watch-content_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix VideoDecoderShim to return correct decode_id for all codecs. Previously VideoDecoderShim was assuming that the decoder calls output callback only after decode is finished. That was a correct assumption for VpxVideoDecoder, but not for FFmpegVideoDecoder. As result PPB_VideoDecoder wasn't returning correct decode_id for decoded frames. Now software decoders (i.e. VpxVideoDecoder and FFmpegVideoDecoder) guarantee that they output all decoded frame before Decode() call completes, which allows to return correct decode_id from VideoDecoderShim. BUG=448983 R=bbudge@chromium.org, xhwang@chromium.org Committed: https://chromium.googlesource.com/chromium/src/+/be7ac82117cb884b2905a4565e49130d11274d80

Patch Set 1 : #

Total comments: 11

Patch Set 2 : #

Total comments: 2

Patch Set 3 : #

Total comments: 9

Patch Set 4 : #

Patch Set 5 : #

Total comments: 2

Patch Set 6 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+39 lines, -29 lines) Patch
M content/renderer/pepper/video_decoder_shim.cc View 1 2 3 7 chunks +30 lines, -25 lines 0 comments Download
M media/base/video_decoder.h View 1 2 3 4 5 1 chunk +3 lines, -2 lines 0 comments Download
M media/filters/ffmpeg_video_decoder.cc View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M media/filters/vpx_video_decoder.cc View 1 2 3 1 chunk +4 lines, -2 lines 0 comments Download

Messages

Total messages: 30 (5 generated)
Sergey Ulanov
bbudge@ - please review video_decoder_shim.cc xhwang@ - please review media/*
5 years, 11 months ago (2015-01-15 20:01:14 UTC) #3
bbudge
video_decoder_shim.cc LGTM w/nits https://codereview.chromium.org/805193006/diff/20001/content/renderer/pepper/video_decoder_shim.cc File content/renderer/pepper/video_decoder_shim.cc (right): https://codereview.chromium.org/805193006/diff/20001/content/renderer/pepper/video_decoder_shim.cc#newcode110 content/renderer/pepper/video_decoder_shim.cc:110: bool waiting_decoder_; nit: s/waiting/awaiting https://codereview.chromium.org/805193006/diff/20001/content/renderer/pepper/video_decoder_shim.cc#newcode112 content/renderer/pepper/video_decoder_shim.cc:112: ...
5 years, 11 months ago (2015-01-15 21:21:00 UTC) #4
xhwang
I have a general question... https://codereview.chromium.org/805193006/diff/20001/media/base/video_decoder.h File media/base/video_decoder.h (right): https://codereview.chromium.org/805193006/diff/20001/media/base/video_decoder.h#newcode83 media/base/video_decoder.h:83: // |output_cb| before calling ...
5 years, 11 months ago (2015-01-15 21:35:11 UTC) #5
bbudge
On 2015/01/15 21:21:00, bbudge wrote: > video_decoder_shim.cc LGTM w/nits > > https://codereview.chromium.org/805193006/diff/20001/content/renderer/pepper/video_decoder_shim.cc > File content/renderer/pepper/video_decoder_shim.cc ...
5 years, 11 months ago (2015-01-15 21:35:32 UTC) #6
Sergey Ulanov
https://codereview.chromium.org/805193006/diff/20001/media/base/video_decoder.h File media/base/video_decoder.h (right): https://codereview.chromium.org/805193006/diff/20001/media/base/video_decoder.h#newcode83 media/base/video_decoder.h:83: // |output_cb| before calling |decode_cb|. On 2015/01/15 21:35:10, xhwang ...
5 years, 11 months ago (2015-01-15 22:59:20 UTC) #7
xhwang
https://codereview.chromium.org/805193006/diff/20001/media/base/video_decoder.h File media/base/video_decoder.h (right): https://codereview.chromium.org/805193006/diff/20001/media/base/video_decoder.h#newcode83 media/base/video_decoder.h:83: // |output_cb| before calling |decode_cb|. On 2015/01/15 22:59:20, Sergey ...
5 years, 11 months ago (2015-01-15 23:41:47 UTC) #8
Sergey Ulanov
On 2015/01/15 23:41:47, xhwang wrote: > https://codereview.chromium.org/805193006/diff/20001/media/base/video_decoder.h > File media/base/video_decoder.h (right): > > https://codereview.chromium.org/805193006/diff/20001/media/base/video_decoder.h#newcode83 > ...
5 years, 11 months ago (2015-01-16 00:46:02 UTC) #9
Sergey Ulanov
https://codereview.chromium.org/805193006/diff/20001/content/renderer/pepper/video_decoder_shim.cc File content/renderer/pepper/video_decoder_shim.cc (right): https://codereview.chromium.org/805193006/diff/20001/content/renderer/pepper/video_decoder_shim.cc#newcode110 content/renderer/pepper/video_decoder_shim.cc:110: bool waiting_decoder_; On 2015/01/15 21:21:00, bbudge wrote: > nit: ...
5 years, 11 months ago (2015-01-16 00:46:39 UTC) #10
xhwang
On 2015/01/16 00:46:02, Sergey Ulanov wrote: > On 2015/01/15 23:41:47, xhwang wrote: > > > ...
5 years, 11 months ago (2015-01-16 01:24:26 UTC) #11
xhwang
https://codereview.chromium.org/805193006/diff/40001/media/base/video_decoder.h File media/base/video_decoder.h (right): https://codereview.chromium.org/805193006/diff/40001/media/base/video_decoder.h#newcode64 media/base/video_decoder.h:64: bool low_delay, We need a documentation of |low_delay| here...
5 years, 11 months ago (2015-01-16 01:24:33 UTC) #12
Sergey Ulanov
On 2015/01/16 01:24:26, xhwang wrote: > Hmm, but is |low-delay| equivalent to zero-delay? I doubt ...
5 years, 11 months ago (2015-01-16 01:53:14 UTC) #14
Sergey Ulanov
https://codereview.chromium.org/805193006/diff/40001/media/base/video_decoder.h File media/base/video_decoder.h (right): https://codereview.chromium.org/805193006/diff/40001/media/base/video_decoder.h#newcode64 media/base/video_decoder.h:64: bool low_delay, On 2015/01/16 01:24:33, xhwang wrote: > We ...
5 years, 11 months ago (2015-01-16 01:53:39 UTC) #15
xhwang
Sorry for the delay. More comments for discussion. https://codereview.chromium.org/805193006/diff/80001/content/renderer/pepper/video_decoder_shim.cc File content/renderer/pepper/video_decoder_shim.cc (right): https://codereview.chromium.org/805193006/diff/80001/content/renderer/pepper/video_decoder_shim.cc#newcode113 content/renderer/pepper/video_decoder_shim.cc:113: // ...
5 years, 11 months ago (2015-01-16 23:50:09 UTC) #16
xhwang
5 years, 11 months ago (2015-01-16 23:50:16 UTC) #17
Sergey Ulanov
https://codereview.chromium.org/805193006/diff/80001/content/renderer/pepper/video_decoder_shim.cc File content/renderer/pepper/video_decoder_shim.cc (right): https://codereview.chromium.org/805193006/diff/80001/content/renderer/pepper/video_decoder_shim.cc#newcode113 content/renderer/pepper/video_decoder_shim.cc:113: // frames before decode is finished. On 2015/01/16 23:50:09, ...
5 years, 11 months ago (2015-01-20 23:52:27 UTC) #18
xhwang
https://codereview.chromium.org/805193006/diff/80001/media/base/video_decoder.h File media/base/video_decoder.h (right): https://codereview.chromium.org/805193006/diff/80001/media/base/video_decoder.h#newcode61 media/base/video_decoder.h:61: // do not need to delay frames. On 2015/01/20 ...
5 years, 11 months ago (2015-01-21 23:05:04 UTC) #19
Sergey Ulanov
Given that I removed the mentioning of low-delay mode from the comments for Decode(), I ...
5 years, 11 months ago (2015-01-21 23:45:02 UTC) #20
Sergey Ulanov
Given that I removed the mentioning of low-delay mode from the comments for Decode(), I ...
5 years, 11 months ago (2015-01-21 23:45:03 UTC) #21
Sergey Ulanov
xhwang: ping
5 years, 11 months ago (2015-01-22 19:47:30 UTC) #22
xhwang
lgtm % one suggestion Thank you for the patience! https://codereview.chromium.org/805193006/diff/120001/media/base/video_decoder.h File media/base/video_decoder.h (right): https://codereview.chromium.org/805193006/diff/120001/media/base/video_decoder.h#newcode82 media/base/video_decoder.h:82: ...
5 years, 11 months ago (2015-01-22 23:52:43 UTC) #23
Sergey Ulanov
https://codereview.chromium.org/805193006/diff/120001/media/base/video_decoder.h File media/base/video_decoder.h (right): https://codereview.chromium.org/805193006/diff/120001/media/base/video_decoder.h#newcode82 media/base/video_decoder.h:82: // before or after |decode_cb|, but software decoders must ...
5 years, 11 months ago (2015-01-23 00:19:38 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/805193006/140001
5 years, 11 months ago (2015-01-23 00:20:43 UTC) #26
commit-bot: I haz the power
Exceeded time limit waiting for builds to trigger.
5 years, 11 months ago (2015-01-23 02:24:38 UTC) #28
commit-bot: I haz the power
Patchset 6 (id:??) landed as https://crrev.com/be7ac82117cb884b2905a4565e49130d11274d80 Cr-Commit-Position: refs/heads/master@{#312874}
5 years, 11 months ago (2015-01-23 18:08:18 UTC) #29
Sergey Ulanov
5 years, 11 months ago (2015-01-23 18:08:26 UTC) #30
Message was sent while issue was closed.
Committed patchset #6 (id:140001) manually as
be7ac82117cb884b2905a4565e49130d11274d80 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698