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

Issue 339653003: No EOS frame in {Audio|Video}Decoder::OutputCB. (Closed)

Created:
6 years, 6 months ago by xhwang
Modified:
6 years, 6 months ago
CC:
chromium-reviews, feature-media-reviews_chromium.org
Project:
chromium
Visibility:
Public.

Description

No EOS frame in {Audio|Video}Decoder::OutputCB. This is a follow-up CL of r276344. Currently, when audio and video decoders receive an EOS buffer, they do the following in order: 1, Flush the codec, return all internally buffered frames through the OutputCB. 2, Return a EOS frame through the OutputCB. 3, Return the DecodeCB. Since the DecoderStream knows when an input buffer is an EOS, when the DecodeCB is returned, DecoderStream knows that decoding has finished. Therefore, step (2) is redundant. This CL drops step (2) which simplifies a lot of code. BUG=385872 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=278232

Patch Set 1 #

Total comments: 12

Patch Set 2 : Rebase + Fix AudioRendererImplTest #

Patch Set 3 : dalecurtis's comment resolved #

Patch Set 4 : sergeyu's comments addressed #

Patch Set 5 : rebase only #

Total comments: 2

Patch Set 6 : comments addressed #

Patch Set 7 : Fix FFAD flushing #

Patch Set 8 : Fix DecoderStream Reset() #

Patch Set 9 : Add test for Reset after EOS. #

Patch Set 10 : rebase only #

Unified diffs Side-by-side diffs Delta from patch set Stats (+285 lines, -236 lines) Patch
M media/base/audio_decoder.h View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M media/base/video_decoder.h View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M media/filters/audio_renderer_impl_unittest.cc View 1 2 chunks +20 lines, -5 lines 0 comments Download
M media/filters/decoder_stream.h View 1 chunk +1 line, -0 lines 0 comments Download
M media/filters/decoder_stream.cc View 1 2 3 4 5 6 7 7 chunks +44 lines, -35 lines 0 comments Download
M media/filters/decoder_stream_traits.h View 2 chunks +2 lines, -0 lines 0 comments Download
M media/filters/decoder_stream_traits.cc View 3 chunks +12 lines, -0 lines 0 comments Download
M media/filters/decrypting_audio_decoder.cc View 1 1 chunk +2 lines, -6 lines 0 comments Download
M media/filters/decrypting_audio_decoder_unittest.cc View 1 2 chunks +1 line, -7 lines 0 comments Download
M media/filters/decrypting_video_decoder.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M media/filters/decrypting_video_decoder.cc View 1 2 3 3 chunks +3 lines, -8 lines 0 comments Download
M media/filters/decrypting_video_decoder_unittest.cc View 1 2 chunks +1 line, -7 lines 0 comments Download
M media/filters/fake_demuxer_stream.h View 1 2 3 4 5 6 7 8 2 chunks +11 lines, -3 lines 0 comments Download
M media/filters/fake_demuxer_stream.cc View 1 2 3 4 5 6 7 8 2 chunks +20 lines, -9 lines 0 comments Download
M media/filters/fake_demuxer_stream_unittest.cc View 1 2 3 4 5 6 7 8 7 chunks +47 lines, -19 lines 0 comments Download
M media/filters/fake_video_decoder.cc View 1 chunk +0 lines, -1 line 0 comments Download
M media/filters/fake_video_decoder_unittest.cc View 7 chunks +9 lines, -17 lines 0 comments Download
M media/filters/ffmpeg_audio_decoder.h View 1 2 3 4 5 6 2 chunks +22 lines, -1 line 0 comments Download
M media/filters/ffmpeg_audio_decoder.cc View 1 2 3 4 5 6 7 8 9 3 chunks +16 lines, -38 lines 0 comments Download
M media/filters/ffmpeg_audio_decoder_unittest.cc View 3 chunks +3 lines, -9 lines 0 comments Download
M media/filters/ffmpeg_video_decoder.h View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M media/filters/ffmpeg_video_decoder.cc View 2 chunks +1 line, -4 lines 0 comments Download
M media/filters/ffmpeg_video_decoder_unittest.cc View 10 chunks +13 lines, -32 lines 0 comments Download
M media/filters/gpu_video_decoder.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M media/filters/gpu_video_decoder.cc View 1 2 3 2 chunks +1 line, -2 lines 0 comments Download
M media/filters/opus_audio_decoder.cc View 1 chunk +0 lines, -1 line 0 comments Download
M media/filters/opus_audio_decoder_unittest.cc View 2 chunks +2 lines, -8 lines 0 comments Download
M media/filters/video_frame_stream_unittest.cc View 1 2 3 4 5 6 7 8 3 chunks +19 lines, -6 lines 0 comments Download
M media/filters/video_renderer_impl_unittest.cc View 4 chunks +25 lines, -10 lines 0 comments Download
M media/filters/vpx_video_decoder.cc View 2 chunks +3 lines, -3 lines 0 comments Download

Messages

Total messages: 20 (0 generated)
xhwang
I still need to fix the audio_renderer_impl_unittests.cc. But I think it's better to get a ...
6 years, 6 months ago (2014-06-16 16:48:11 UTC) #1
DaleCurtis
https://codereview.chromium.org/339653003/diff/1/media/filters/ffmpeg_audio_decoder.cc File media/filters/ffmpeg_audio_decoder.cc (right): https://codereview.chromium.org/339653003/diff/1/media/filters/ffmpeg_audio_decoder.cc#newcode233 media/filters/ffmpeg_audio_decoder.cc:233: // kNormal -> kFlushCodec: Is this still a valid ...
6 years, 6 months ago (2014-06-16 18:18:08 UTC) #2
Sergey Ulanov
only some nits https://codereview.chromium.org/339653003/diff/1/media/base/audio_decoder.h File media/base/audio_decoder.h (right): https://codereview.chromium.org/339653003/diff/1/media/base/audio_decoder.h#newcode35 media/base/audio_decoder.h:35: // frames should not be returned ...
6 years, 6 months ago (2014-06-16 23:49:32 UTC) #3
xhwang
https://codereview.chromium.org/339653003/diff/1/media/base/audio_decoder.h File media/base/audio_decoder.h (right): https://codereview.chromium.org/339653003/diff/1/media/base/audio_decoder.h#newcode35 media/base/audio_decoder.h:35: // frames should not be returned via this callback. ...
6 years, 6 months ago (2014-06-17 18:56:35 UTC) #4
xhwang
Rebased, AudioRendererImplTest fixed and comments addressed. PTAL again! dalecurtis@: Since you commented, please take a ...
6 years, 6 months ago (2014-06-17 18:57:58 UTC) #5
xhwang
rebase only
6 years, 6 months ago (2014-06-17 20:17:28 UTC) #6
DaleCurtis
lgtm % nit https://codereview.chromium.org/339653003/diff/80001/media/filters/ffmpeg_audio_decoder.h File media/filters/ffmpeg_audio_decoder.h (right): https://codereview.chromium.org/339653003/diff/80001/media/filters/ffmpeg_audio_decoder.h#newcode59 media/filters/ffmpeg_audio_decoder.h:59: // kkUninitialized -> kNormal: Extra kk
6 years, 6 months ago (2014-06-17 20:48:19 UTC) #7
xhwang
comments addressed
6 years, 6 months ago (2014-06-17 22:42:56 UTC) #8
xhwang
https://codereview.chromium.org/339653003/diff/80001/media/filters/ffmpeg_audio_decoder.h File media/filters/ffmpeg_audio_decoder.h (right): https://codereview.chromium.org/339653003/diff/80001/media/filters/ffmpeg_audio_decoder.h#newcode59 media/filters/ffmpeg_audio_decoder.h:59: // kkUninitialized -> kNormal: On 2014/06/17 20:48:19, DaleCurtis wrote: ...
6 years, 6 months ago (2014-06-17 22:43:09 UTC) #9
xhwang
comments addressed
6 years, 6 months ago (2014-06-17 23:50:47 UTC) #10
DaleCurtis
lgtm w/ ffmpeg audio decoder fix.
6 years, 6 months ago (2014-06-17 23:57:51 UTC) #11
xhwang
comments addressed
6 years, 6 months ago (2014-06-18 01:21:06 UTC) #12
xhwang
dalecurtis: Please review PS9 again. I added tests to cover the fix in PS8. Thanks!
6 years, 6 months ago (2014-06-18 07:07:08 UTC) #13
xhwang
rebase only
6 years, 6 months ago (2014-06-18 16:53:22 UTC) #14
DaleCurtis
lgtm
6 years, 6 months ago (2014-06-18 19:50:41 UTC) #15
xhwang
sergeyu@: Could you please take a look?
6 years, 6 months ago (2014-06-18 19:58:04 UTC) #16
Sergey Ulanov
lgtm
6 years, 6 months ago (2014-06-18 21:54:32 UTC) #17
xhwang
The CQ bit was checked by xhwang@chromium.org
6 years, 6 months ago (2014-06-18 22:53:56 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/xhwang@chromium.org/339653003/180001
6 years, 6 months ago (2014-06-18 22:55:52 UTC) #19
commit-bot: I haz the power
6 years, 6 months ago (2014-06-19 01:42:27 UTC) #20
Message was sent while issue was closed.
Change committed as 278232

Powered by Google App Engine
This is Rietveld 408576698