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

Issue 1651673002: Add MediaCodecAudioDecoder implementation (Closed)

Created:
4 years, 10 months ago by Tima Vaisburd
Modified:
4 years, 10 months ago
CC:
chromium-reviews, feature-media-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add MediaCodecAudioDecoder implementation MediaCodecAudioDecoder is an audio decoder that uses Android MediaCodec API and implements the AudioDecoder interface. This CL adds the implementation. BUG=542910 Committed: https://crrev.com/a2d1a85ac6693abd2f59ea321293aa012207c381 Cr-Commit-Position: refs/heads/master@{#375942}

Patch Set 1 #

Total comments: 9

Patch Set 2 : Removed CDM stuff, fixed Opus #

Total comments: 63

Patch Set 3 : Addressed most comments #

Patch Set 4 : Removed all changes to decoder_buffer.cc #

Total comments: 44

Patch Set 5 : Rebased, addressed comments, some questions #

Patch Set 6 : Modified a comment #

Total comments: 52

Patch Set 7 : Fixes with some questions #

Total comments: 29

Patch Set 8 : Addressed comments #

Total comments: 14

Patch Set 9 : Reset pending input buffer immediately after use, addressed comments. #

Patch Set 10 : Fixed component compilaton #

Patch Set 11 : A better linking issue fix #

Unified diffs Side-by-side diffs Delta from patch set Stats (+534 lines, -45 lines) Patch
M media/base/android/sdk_media_codec_bridge.h View 1 2 3 4 5 6 7 8 9 1 chunk +10 lines, -1 line 0 comments Download
M media/base/android/sdk_media_codec_bridge.cc View 1 2 3 4 5 6 7 8 9 3 chunks +27 lines, -1 line 0 comments Download
M media/base/audio_buffer.h View 1 2 1 chunk +8 lines, -2 lines 0 comments Download
M media/base/audio_decoder.h View 1 2 3 4 5 6 1 chunk +2 lines, -3 lines 0 comments Download
M media/filters/android/media_codec_audio_decoder.h View 1 2 3 4 5 6 7 8 7 chunks +41 lines, -18 lines 0 comments Download
M media/filters/android/media_codec_audio_decoder.cc View 1 2 3 4 5 6 7 8 3 chunks +445 lines, -20 lines 0 comments Download
M media/media.gyp View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 65 (14 generated)
Tima Vaisburd
Here is the first draft of AudioDecoderAndroid as we discussed with Xiaohan and Dan. It ...
4 years, 10 months ago (2016-01-30 01:12:34 UTC) #2
liberato (no reviews please)
i'd really like to get some of your improvements from AudioDecoder into AVDA. what would ...
4 years, 10 months ago (2016-02-01 15:18:06 UTC) #3
Tima Vaisburd
+watk@, dalecurtis@
4 years, 10 months ago (2016-02-01 19:06:29 UTC) #5
DaleCurtis
+1 to Frank's suggestion. It'd be great to have a MediaCodecLoop generic class (templated if ...
4 years, 10 months ago (2016-02-01 19:08:17 UTC) #6
xhwang
I didn't review the details, just general comments! 1. Thanks for putting these together in ...
4 years, 10 months ago (2016-02-01 19:30:55 UTC) #7
Tima Vaisburd
On 2016/02/01 15:18:06, liberato wrote: > i'd really like to get some of your improvements ...
4 years, 10 months ago (2016-02-01 19:35:14 UTC) #8
Tima Vaisburd
On 2016/02/01 19:30:55, xhwang wrote: > 2. It seems you have too many reviewers on ...
4 years, 10 months ago (2016-02-01 19:57:05 UTC) #9
DaleCurtis
I think something like media/filters/android would fit with our existing strategy. (I.e. media/audio/{win/android/mac})
4 years, 10 months ago (2016-02-01 19:58:54 UTC) #10
liberato (no reviews please)
> However, why would you like to improve AVDA if it is planned to be ...
4 years, 10 months ago (2016-02-01 19:59:13 UTC) #11
liberato (no reviews please)
On 2016/02/01 19:57:05, Tima Vaisburd wrote: > On 2016/02/01 19:30:55, xhwang wrote: > > 2. ...
4 years, 10 months ago (2016-02-01 20:01:31 UTC) #12
sandersd (OOO until July 31)
> However, why would you like to improve AVDA if it is planned to be ...
4 years, 10 months ago (2016-02-01 20:10:25 UTC) #13
xhwang
On 2016/02/01 20:01:31, liberato wrote: > On 2016/02/01 19:57:05, Tima Vaisburd wrote: > > On ...
4 years, 10 months ago (2016-02-01 20:13:57 UTC) #14
xhwang
On 2016/02/01 19:58:54, DaleCurtis wrote: > I think something like media/filters/android would fit with our ...
4 years, 10 months ago (2016-02-01 20:18:04 UTC) #15
Tima Vaisburd
On 2016/02/01 20:13:57, xhwang wrote: > Unless MCL work is super trivial, I would suggest ...
4 years, 10 months ago (2016-02-01 20:33:06 UTC) #16
liberato (no reviews please)
> > While the VDAv2 is on hold now... the refactor and vdav2 aren't dependent ...
4 years, 10 months ago (2016-02-01 21:14:28 UTC) #17
Tima Vaisburd
The major change in this PS is removal most of CDM stuff. Unit tests are ...
4 years, 10 months ago (2016-02-04 22:59:12 UTC) #19
DaleCurtis
Nice work! A few small comments. https://codereview.chromium.org/1651673002/diff/20001/media/base/audio_decoder_config.h File media/base/audio_decoder_config.h (right): https://codereview.chromium.org/1651673002/diff/20001/media/base/audio_decoder_config.h#newcode114 media/base/audio_decoder_config.h:114: // Modifies sampling ...
4 years, 10 months ago (2016-02-04 23:15:31 UTC) #21
xhwang
Great work! I reviewed everything except the real implementation (on purpose). Most comments are nits ...
4 years, 10 months ago (2016-02-05 21:37:38 UTC) #22
Tima Vaisburd
https://codereview.chromium.org/1651673002/diff/20001/media/base/audio_buffer.h File media/base/audio_buffer.h (right): https://codereview.chromium.org/1651673002/diff/20001/media/base/audio_buffer.h#newcode136 media/base/audio_buffer.h:136: // the channels. For interleaved formats only only the ...
4 years, 10 months ago (2016-02-06 03:54:12 UTC) #23
liberato (no reviews please)
sorry for the delay, meant to send this friday afternoon. lgtm. -fl https://codereview.chromium.org/1651673002/diff/60001/media/filters/android/android_audio_decoder.h File media/filters/android/android_audio_decoder.h ...
4 years, 10 months ago (2016-02-08 16:04:36 UTC) #24
xhwang
I stopped at AndroidAudioDecoder::Decode(). Some comments are on code that you copied from existing files. ...
4 years, 10 months ago (2016-02-08 20:03:35 UTC) #25
Tima Vaisburd
On 2016/02/08 20:03:35, xhwang wrote: > I stopped at AndroidAudioDecoder::Decode(). Some comments are on code ...
4 years, 10 months ago (2016-02-08 20:25:56 UTC) #26
xhwang
On 2016/02/08 20:25:56, Tima Vaisburd wrote: > On 2016/02/08 20:03:35, xhwang wrote: > > I ...
4 years, 10 months ago (2016-02-08 21:02:20 UTC) #27
xhwang
On 2016/02/08 21:02:20, xhwang wrote: > On 2016/02/08 20:25:56, Tima Vaisburd wrote: > > On ...
4 years, 10 months ago (2016-02-08 21:08:24 UTC) #28
qinmin
https://codereview.chromium.org/1651673002/diff/60001/media/filters/android/android_audio_decoder.cc File media/filters/android/android_audio_decoder.cc (right): https://codereview.chromium.org/1651673002/diff/60001/media/filters/android/android_audio_decoder.cc#newcode60 media/filters/android/android_audio_decoder.cc:60: for (const auto& entry : input_queue_) { nit: no ...
4 years, 10 months ago (2016-02-09 00:31:56 UTC) #29
Tima Vaisburd
I tried to address all comments that are here so far, either with a change ...
4 years, 10 months ago (2016-02-11 20:23:23 UTC) #31
xhwang
Looking pretty good. Just have some comments, mostly nits. There are a few comments in ...
4 years, 10 months ago (2016-02-12 10:15:06 UTC) #32
Tima Vaisburd
https://codereview.chromium.org/1651673002/diff/60001/media/filters/android/android_audio_decoder.cc File media/filters/android/android_audio_decoder.cc (right): https://codereview.chromium.org/1651673002/diff/60001/media/filters/android/android_audio_decoder.cc#newcode103 media/filters/android/android_audio_decoder.cc:103: DecodeCB bound_decode_cb = BindToCurrentLoop(decode_cb); On 2016/02/12 10:15:04, xhwang wrote: ...
4 years, 10 months ago (2016-02-13 01:31:25 UTC) #33
Tima Vaisburd
> Since this CL is getting large and nobody is using it yet. I think ...
4 years, 10 months ago (2016-02-13 01:33:06 UTC) #34
watk
Looks like a cleaner version of AVDA :) https://codereview.chromium.org/1651673002/diff/120001/media/filters/android/media_codec_audio_decoder.cc File media/filters/android/media_codec_audio_decoder.cc (right): https://codereview.chromium.org/1651673002/diff/120001/media/filters/android/media_codec_audio_decoder.cc#newcode12 media/filters/android/media_codec_audio_decoder.cc:12: Usually ...
4 years, 10 months ago (2016-02-13 02:34:53 UTC) #35
xhwang
https://chromiumcodereview.appspot.com/1651673002/diff/100001/media/base/android/sdk_media_codec_bridge.cc File media/base/android/sdk_media_codec_bridge.cc (right): https://chromiumcodereview.appspot.com/1651673002/diff/100001/media/base/android/sdk_media_codec_bridge.cc#newcode381 media/base/android/sdk_media_codec_bridge.cc:381: << " play audio:" << play_audio << " media_crypto:" ...
4 years, 10 months ago (2016-02-13 07:43:13 UTC) #36
Tima Vaisburd
Thank you for the prompt review. I tried to address all the comments, please take ...
4 years, 10 months ago (2016-02-15 23:25:43 UTC) #37
timav
https://codereview.chromium.org/1651673002/diff/120001/media/filters/android/media_codec_audio_decoder.cc File media/filters/android/media_codec_audio_decoder.cc (right): https://codereview.chromium.org/1651673002/diff/120001/media/filters/android/media_codec_audio_decoder.cc#newcode147 media/filters/android/media_codec_audio_decoder.cc:147: input_queue_.push_back(std::make_pair(buffer, bound_decode_cb)); On 2016/02/15 23:25:43, Tima Vaisburd wrote: > ...
4 years, 10 months ago (2016-02-16 08:33:42 UTC) #39
xhwang
LGTM % nits. Thank you for the great work! https://chromiumcodereview.appspot.com/1651673002/diff/140001/media/filters/android/media_codec_audio_decoder.cc File media/filters/android/media_codec_audio_decoder.cc (right): https://chromiumcodereview.appspot.com/1651673002/diff/140001/media/filters/android/media_codec_audio_decoder.cc#newcode46 media/filters/android/media_codec_audio_decoder.cc:46: ...
4 years, 10 months ago (2016-02-16 17:40:35 UTC) #40
Tima Vaisburd
Min, Since this CL modifies sdk_media_codec_bridge.*, could you, please, give your response? Thank you!
4 years, 10 months ago (2016-02-16 18:25:30 UTC) #41
DaleCurtis
If this is working now can you try adding it to AudioDecoderUnittest? https://code.google.com/p/chromium/codesearch#chromium/src/media/filters/audio_decoder_unittest.cc
4 years, 10 months ago (2016-02-16 18:48:40 UTC) #42
qinmin
https://chromiumcodereview.appspot.com/1651673002/diff/140001/media/base/android/sdk_media_codec_bridge.h File media/base/android/sdk_media_codec_bridge.h (right): https://chromiumcodereview.appspot.com/1651673002/diff/140001/media/base/android/sdk_media_codec_bridge.h#newcode115 media/base/android/sdk_media_codec_bridge.h:115: // We might want to remove this method when ...
4 years, 10 months ago (2016-02-16 19:25:09 UTC) #43
Tima Vaisburd
https://codereview.chromium.org/1651673002/diff/140001/media/base/android/sdk_media_codec_bridge.h File media/base/android/sdk_media_codec_bridge.h (right): https://codereview.chromium.org/1651673002/diff/140001/media/base/android/sdk_media_codec_bridge.h#newcode115 media/base/android/sdk_media_codec_bridge.h:115: // We might want to remove this method when ...
4 years, 10 months ago (2016-02-16 21:23:27 UTC) #44
Tima Vaisburd
On 2016/02/16 18:48:40, DaleCurtis wrote: > If this is working now can you try adding ...
4 years, 10 months ago (2016-02-16 21:27:18 UTC) #45
qinmin
lgtm
4 years, 10 months ago (2016-02-16 22:21:37 UTC) #46
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1651673002/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1651673002/160001
4 years, 10 months ago (2016-02-16 22:22:16 UTC) #49
commit-bot: I haz the power
Try jobs failed on following builders: android_clang_dbg_recipe on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_clang_dbg_recipe/builds/22648)
4 years, 10 months ago (2016-02-16 23:26:06 UTC) #51
Tima Vaisburd
+sievers@: Daniel, could you, please, review content/ change? Thank you.
4 years, 10 months ago (2016-02-17 05:49:12 UTC) #53
xhwang
We shouldn't need to update content/ for media/ changes. It seems the right fix is ...
4 years, 10 months ago (2016-02-17 17:45:35 UTC) #54
no sievers
content lgtm
4 years, 10 months ago (2016-02-17 17:54:31 UTC) #55
DaleCurtis
Does BUILD.gn need a fix too? shared_memory_support really means "All the things needed to build ...
4 years, 10 months ago (2016-02-17 18:18:03 UTC) #56
xhwang
On 2016/02/17 18:18:03, DaleCurtis wrote: > Does BUILD.gn need a fix too? shared_memory_support really means ...
4 years, 10 months ago (2016-02-17 18:38:15 UTC) #57
Tima Vaisburd
On 2016/02/17 18:38:15, xhwang wrote: > On 2016/02/17 18:18:03, DaleCurtis wrote: > > Does BUILD.gn ...
4 years, 10 months ago (2016-02-17 18:47:40 UTC) #58
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1651673002/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1651673002/200001
4 years, 10 months ago (2016-02-17 18:49:16 UTC) #61
commit-bot: I haz the power
Committed patchset #11 (id:200001)
4 years, 10 months ago (2016-02-17 19:07:20 UTC) #63
commit-bot: I haz the power
4 years, 10 months ago (2016-02-17 19:08:26 UTC) #65
Message was sent while issue was closed.
Patchset 11 (id:??) landed as
https://crrev.com/a2d1a85ac6693abd2f59ea321293aa012207c381
Cr-Commit-Position: refs/heads/master@{#375942}

Powered by Google App Engine
This is Rietveld 408576698