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

Issue 1184373005: MediaCodecPlayer (stage 1 - play/pause only) (Closed)

Created:
5 years, 6 months ago by Tima Vaisburd
Modified:
5 years, 6 months ago
CC:
chromium-reviews, posciak+watch_chromium.org, avayvod+watch_chromium.org, jam, mcasas+watch_chromium.org, feature-media-reviews_chromium.org, darin-cc_chromium.org, wjia+watch_chromium.org, mlamouri+watch-media_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@mtplayer-decoder
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

MediaCodecPlayer (stage 1 - play/pause only) This CL implements the basic playback with pause/resume till completion only (no seek, dynamic configuration, surface change, encryption). The MediaCodecPlayer uses one long-lived Media thread for the IPC with demuxer and for the player's internal operations. The player controls two MediaCodecDecoder objects (audio and video) that work with Android MediaCodec. This CL depends on https://codereview.chromium.org/1176993005/ (the MediaCodecDecoder CL) which should be committed first. For discussion see https://codereview.chromium.org/1128383003/ BUG=407577 Committed: https://crrev.com/389da2e28a6e675da59bdb5fb492cbba77df9874 Cr-Commit-Position: refs/heads/master@{#336441}

Patch Set 1 #

Patch Set 2 : Used TestDataFactory for unit test #

Total comments: 2

Patch Set 3 : Rebased #

Total comments: 15

Patch Set 4 : Rebase with unit test cleanup #

Patch Set 5 : Restored state machine diagrams #

Total comments: 4

Patch Set 6 : Addressed Chris comments #

Total comments: 9

Patch Set 7 : Made metadata callback methods private #

Total comments: 7

Patch Set 8 : Addressed Min's comments #

Total comments: 23

Patch Set 9 : Addressed wolenetz@ comments, some questions #

Total comments: 4

Patch Set 10 : Added DCHECK into RUN_ON_MEDIA_THREAD() #

Patch Set 11 : Fixed OnVideoSizeChanged() shading #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1195 lines, -97 lines) Patch
M content/browser/media/android/browser_media_player_manager.h View 1 2 3 4 5 1 chunk +0 lines, -1 line 0 comments Download
M content/browser/media/android/browser_media_player_manager.cc View 1 2 3 4 5 5 chunks +5 lines, -10 lines 0 comments Download
M media/base/android/BUILD.gn View 1 1 chunk +1 line, -0 lines 0 comments Download
M media/base/android/media_codec_player.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +198 lines, -12 lines 0 comments Download
M media/base/android/media_codec_player.cc View 1 2 3 4 5 6 7 8 9 10 4 chunks +545 lines, -68 lines 0 comments Download
A media/base/android/media_codec_player_unittest.cc View 1 2 3 4 5 1 chunk +424 lines, -0 lines 0 comments Download
M media/base/android/media_player_android.h View 4 chunks +17 lines, -6 lines 0 comments Download
M media/base/android/media_player_android.cc View 1 chunk +4 lines, -0 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: 35 (6 generated)
Tima Vaisburd
This is the part 3 of the original MediaCodecPlayer CL. It is prepared according to ...
5 years, 6 months ago (2015-06-17 17:27:33 UTC) #2
liberato (no reviews please)
https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (right): https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.cc#newcode107 media/base/android/media_codec_player.cc:107: // Because of that it should go after CreateDecoders(). ...
5 years, 6 months ago (2015-06-23 14:58:59 UTC) #3
Tima Vaisburd
https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (right): https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.cc#newcode107 media/base/android/media_codec_player.cc:107: // Because of that it should go after CreateDecoders(). ...
5 years, 6 months ago (2015-06-24 02:31:07 UTC) #4
liberato (no reviews please)
https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.h File media/base/android/media_codec_player.h (right): https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.h#newcode26 media/base/android/media_codec_player.h:26: // The player works as a state machine. Here ...
5 years, 6 months ago (2015-06-24 06:17:56 UTC) #5
liberato (no reviews please)
5 years, 6 months ago (2015-06-24 06:17:57 UTC) #6
Tima Vaisburd
On 2015/06/24 06:17:57, liberato wrote: No worries. I'll restore them tomorrow.
5 years, 6 months ago (2015-06-24 06:28:15 UTC) #7
Tima Vaisburd
On 2015/06/24 06:28:15, Tima Vaisburd wrote: > On 2015/06/24 06:17:57, liberato wrote: > > No ...
5 years, 6 months ago (2015-06-24 18:04:09 UTC) #8
watk
I only had comments on comments :P lgtm otherwise https://codereview.chromium.org/1184373005/diff/20001/media/base/android/media_codec_player.h File media/base/android/media_codec_player.h (right): https://codereview.chromium.org/1184373005/diff/20001/media/base/android/media_codec_player.h#newcode222 media/base/android/media_codec_player.h:222: ...
5 years, 6 months ago (2015-06-24 22:36:07 UTC) #9
Tima Vaisburd
https://codereview.chromium.org/1184373005/diff/20001/media/base/android/media_codec_player.h File media/base/android/media_codec_player.h (right): https://codereview.chromium.org/1184373005/diff/20001/media/base/android/media_codec_player.h#newcode222 media/base/android/media_codec_player.h:222: // Cached values for the manager, accessed on the ...
5 years, 6 months ago (2015-06-25 01:23:36 UTC) #10
qinmin
https://codereview.chromium.org/1184373005/diff/100001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (left): https://codereview.chromium.org/1184373005/diff/100001/media/base/android/media_codec_player.cc#oldcode55 media/base/android/media_codec_player.cc:55: weak_factory_(this) { do we need this? WeakPtrForUIThread() already returns ...
5 years, 6 months ago (2015-06-25 18:14:13 UTC) #11
Tima Vaisburd
https://codereview.chromium.org/1184373005/diff/100001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (left): https://codereview.chromium.org/1184373005/diff/100001/media/base/android/media_codec_player.cc#oldcode55 media/base/android/media_codec_player.cc:55: weak_factory_(this) { On 2015/06/25 18:14:13, qinmin wrote: > do ...
5 years, 6 months ago (2015-06-25 19:12:34 UTC) #12
qinmin
https://codereview.chromium.org/1184373005/diff/100001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (left): https://codereview.chromium.org/1184373005/diff/100001/media/base/android/media_codec_player.cc#oldcode55 media/base/android/media_codec_player.cc:55: weak_factory_(this) { On 2015/06/25 19:12:34, Tima Vaisburd wrote: > ...
5 years, 6 months ago (2015-06-25 19:16:16 UTC) #13
qinmin
lgtm % comments https://codereview.chromium.org/1184373005/diff/120001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (right): https://codereview.chromium.org/1184373005/diff/120001/media/base/android/media_codec_player.cc#newcode95 media/base/android/media_codec_player.cc:95: ReleaseDecoderResources(); nit: not needed, MediaCodecDecoder dtor ...
5 years, 6 months ago (2015-06-25 20:33:00 UTC) #14
liberato (no reviews please)
lgtm thanks for clarifying -fl https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (right): https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.cc#newcode372 media/base/android/media_codec_player.cc:372: if (state_ != STATE_PREFETCHING) ...
5 years, 6 months ago (2015-06-25 20:36:46 UTC) #15
Tima Vaisburd
https://codereview.chromium.org/1184373005/diff/120001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (right): https://codereview.chromium.org/1184373005/diff/120001/media/base/android/media_codec_player.cc#newcode95 media/base/android/media_codec_player.cc:95: ReleaseDecoderResources(); On 2015/06/25 20:33:00, qinmin wrote: > nit: not ...
5 years, 6 months ago (2015-06-25 21:15:45 UTC) #16
Tima Vaisburd
On 2015/06/25 20:36:46, liberato wrote: > lgtm > > thanks for clarifying > -fl > ...
5 years, 6 months ago (2015-06-25 21:23:38 UTC) #17
liberato (no reviews please)
On 2015/06/25 21:23:38, Tima Vaisburd wrote: > On 2015/06/25 20:36:46, liberato wrote: > > lgtm ...
5 years, 6 months ago (2015-06-25 21:28:33 UTC) #18
qinmin
https://codereview.chromium.org/1184373005/diff/120001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (right): https://codereview.chromium.org/1184373005/diff/120001/media/base/android/media_codec_player.cc#newcode689 media/base/android/media_codec_player.cc:689: MediaCodecDecoder::SetTimeCallback(), On 2015/06/25 21:15:45, Tima Vaisburd wrote: > On ...
5 years, 6 months ago (2015-06-25 21:54:07 UTC) #19
Tima Vaisburd
On 2015/06/25 21:54:07, qinmin wrote: > https://codereview.chromium.org/1184373005/diff/120001/media/base/android/media_codec_player.cc > File media/base/android/media_codec_player.cc (right): > > https://codereview.chromium.org/1184373005/diff/120001/media/base/android/media_codec_player.cc#newcode689 > ...
5 years, 6 months ago (2015-06-25 22:01:07 UTC) #20
wolenetz
Mostly questions and minor comments. https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.h File media/base/android/media_codec_player.h (right): https://codereview.chromium.org/1184373005/diff/40001/media/base/android/media_codec_player.h#newcode26 media/base/android/media_codec_player.h:26: // The player works ...
5 years, 6 months ago (2015-06-25 22:31:38 UTC) #21
Tima Vaisburd
https://codereview.chromium.org/1184373005/diff/140001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (right): https://codereview.chromium.org/1184373005/diff/140001/media/base/android/media_codec_player.cc#newcode124 media/base/android/media_codec_player.cc:124: void MediaCodecPlayer::SetVideoSurface(gfx::ScopedJavaSurface surface) { On 2015/06/25 22:31:39, wolenetz wrote: ...
5 years, 6 months ago (2015-06-26 00:02:06 UTC) #22
wolenetz
Getting quite close. Can MediaCodecPlayer handle a video-only stream's playback? (ditto for audio-only) https://codereview.chromium.org/1184373005/diff/140001/media/base/android/media_codec_player.cc File ...
5 years, 6 months ago (2015-06-26 00:59:25 UTC) #23
Tima Vaisburd
Audio-only streams are supported, video-only - not yet. https://codereview.chromium.org/1184373005/diff/140001/media/base/android/media_codec_player.cc File media/base/android/media_codec_player.cc (right): https://codereview.chromium.org/1184373005/diff/140001/media/base/android/media_codec_player.cc#newcode124 media/base/android/media_codec_player.cc:124: void ...
5 years, 6 months ago (2015-06-26 01:48:02 UTC) #24
wolenetz
lgtm. We also chatted separately, confirming that video-only, surface change, midstream config change are all ...
5 years, 6 months ago (2015-06-26 04:25:40 UTC) #25
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1184373005/180001
5 years, 6 months ago (2015-06-26 04:30:56 UTC) #28
commit-bot: I haz the power
Dry run: Exceeded global retry quota
5 years, 6 months ago (2015-06-26 05:06:29 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1184373005/200001
5 years, 6 months ago (2015-06-26 18:31:56 UTC) #33
commit-bot: I haz the power
Committed patchset #11 (id:200001)
5 years, 6 months ago (2015-06-26 19:35:20 UTC) #34
commit-bot: I haz the power
5 years, 6 months ago (2015-06-26 19:36:37 UTC) #35
Message was sent while issue was closed.
Patchset 11 (id:??) landed as
https://crrev.com/389da2e28a6e675da59bdb5fb492cbba77df9874
Cr-Commit-Position: refs/heads/master@{#336441}

Powered by Google App Engine
This is Rietveld 408576698