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

Issue 2230583002: Add MediaPlayerRenderer/MediaPlayerRendererClient (Closed)

Created:
4 years, 4 months ago by tguilbert
Modified:
4 years, 4 months ago
CC:
Aaron Boodman, abarth-chromium, alokp+watch_chromium.org, avayvod+watch_chromium.org, ben+mojo_chromium.org, chromium-reviews, darin (slow to review), darin-cc_chromium.org, feature-media-reviews_chromium.org, jam, mcasas+watch+vc_chromium.org, miu+watch_chromium.org, mlamouri+watch-content_chromium.org, mlamouri+watch-media_chromium.org, posciak+watch_chromium.org, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add MediaPlayerRenderer/MediaPlayerRendererClient This change introduces MediaPlayerRender and MediaPlayerRendererClient. The MediaPlayerRenderer uses an instance of an Android MediaPlayer to render video to a given Android Surface. It adapts the MediaPlayer interface into the media::Renderer interface. It lives in the Browser process, and is owned by and instance of MojoRendererService. The MediaPlayerRendereClient is a media::Renderer that integrates into the WMPI pipeline. It forwards media::Renderer calls to its associated MediaPlayerRenderer in the Browser process, via a MojoRenderer (bound to the MojoRendererService). It also owns a StreamTextureWrapper, which it uses to send VideoFrame to WMPI's VideoFrameCompositor. In order to be fully functional, the code is missing the repainting of duplicate video frames (636002), the propagation of duration changes (635991) and a mechanism for registering/retrieving the StreamTextureWrapper's Surface (627658). BUG=631199 Committed: https://crrev.com/cd478271f0ea7b3a25fd0b04799d97699598278a Cr-Commit-Position: refs/heads/master@{#411527}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Minor comment changes #

Total comments: 29

Patch Set 3 : Addressing comments #

Total comments: 2

Patch Set 4 : Fixed the early return in MediaPlayerRenderer #

Patch Set 5 : Fixed Chris' comment #

Total comments: 45

Patch Set 6 : Addressing Dale's comments #

Patch Set 7 : Rebase #

Patch Set 8 : Fixed UTs #

Patch Set 9 : Added override to virt. dtors. #

Patch Set 10 : Chromium style fix #

Patch Set 11 : Chromium style. #

Patch Set 12 : Added MEDIA_EXPORT. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+800 lines, -239 lines) Patch
A content/browser/media/android/media_player_renderer.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +115 lines, -0 lines 0 comments Download
A content/browser/media/android/media_player_renderer.cc View 1 2 3 4 5 1 chunk +229 lines, -0 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M content/content_renderer.gypi View 1 2 3 4 5 6 1 chunk +4 lines, -0 lines 0 comments Download
A content/renderer/media/android/media_player_renderer_client.h View 1 2 3 4 5 6 7 8 9 1 chunk +106 lines, -0 lines 0 comments Download
A content/renderer/media/android/media_player_renderer_client.cc View 1 2 3 4 5 1 chunk +154 lines, -0 lines 0 comments Download
A content/renderer/media/android/media_player_renderer_client_factory.h View 1 2 3 4 5 6 7 8 9 1 chunk +53 lines, -0 lines 0 comments Download
A content/renderer/media/android/media_player_renderer_client_factory.cc View 1 2 3 4 5 1 chunk +46 lines, -0 lines 0 comments Download
M media/base/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +3 lines, -0 lines 0 comments Download
M media/base/android/BUILD.gn View 1 2 3 4 5 6 7 2 chunks +0 lines, -3 lines 0 comments Download
D media/base/android/media_url_demuxer.h View 1 chunk +0 lines, -68 lines 0 comments Download
D media/base/android/media_url_demuxer.cc View 1 chunk +0 lines, -78 lines 0 comments Download
D media/base/android/media_url_demuxer_unittest.cc View 1 2 3 4 5 6 7 1 chunk +0 lines, -73 lines 0 comments Download
M media/base/media_log.cc View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
A + media/base/media_url_demuxer.h View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +4 lines, -4 lines 0 comments Download
A + media/base/media_url_demuxer.cc View 1 chunk +1 line, -1 line 0 comments Download
A + media/base/media_url_demuxer_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +3 lines, -2 lines 0 comments Download
M media/base/pipeline_status.h View 1 2 3 4 5 2 chunks +2 lines, -1 line 0 comments Download
M media/blink/webmediaplayer_util.cc View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M media/mojo/clients/mojo_renderer.h View 1 2 3 4 5 1 chunk +8 lines, -0 lines 0 comments Download
M media/mojo/clients/mojo_renderer.cc View 1 2 3 4 5 4 chunks +41 lines, -1 line 0 comments Download
M media/mojo/interfaces/renderer.mojom View 1 2 3 4 5 1 chunk +3 lines, -1 line 0 comments Download
M media/mojo/services/media_mojo_unittest.cc View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M media/mojo/services/mojo_renderer_service.h View 1 2 3 4 5 3 chunks +3 lines, -1 line 0 comments Download
M media/mojo/services/mojo_renderer_service.cc View 1 2 3 4 5 2 chunks +19 lines, -5 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 68 (39 generated)
tguilbert
PTAL! I already have the changes ready for 636002 and 635991, which will follow as ...
4 years, 4 months ago (2016-08-09 19:30:08 UTC) #2
watk
Nice, I only had nits https://codereview.chromium.org/2230583002/diff/20001/content/browser/media/android/media_player_renderer.cc File content/browser/media/android/media_player_renderer.cc (right): https://codereview.chromium.org/2230583002/diff/20001/content/browser/media/android/media_player_renderer.cc#newcode36 content/browser/media/android/media_player_renderer.cc:36: DVLOG(1) << __FUNCTION__; I ...
4 years, 4 months ago (2016-08-09 21:39:58 UTC) #3
tguilbert
https://codereview.chromium.org/2230583002/diff/20001/content/browser/media/android/media_player_renderer.cc File content/browser/media/android/media_player_renderer.cc (right): https://codereview.chromium.org/2230583002/diff/20001/content/browser/media/android/media_player_renderer.cc#newcode36 content/browser/media/android/media_player_renderer.cc:36: DVLOG(1) << __FUNCTION__; On 2016/08/09 21:39:58, watk wrote: > ...
4 years, 4 months ago (2016-08-09 22:38:35 UTC) #4
tguilbert
https://codereview.chromium.org/2230583002/diff/40001/content/browser/media/android/media_player_renderer.h File content/browser/media/android/media_player_renderer.h (right): https://codereview.chromium.org/2230583002/diff/40001/content/browser/media/android/media_player_renderer.h#newcode98 content/browser/media/android/media_player_renderer.h:98: // Video size. Will remove this comment.
4 years, 4 months ago (2016-08-09 22:39:45 UTC) #5
watk
lgtm https://codereview.chromium.org/2230583002/diff/20001/content/browser/media/android/media_player_renderer.cc File content/browser/media/android/media_player_renderer.cc (right): https://codereview.chromium.org/2230583002/diff/20001/content/browser/media/android/media_player_renderer.cc#newcode131 content/browser/media/android/media_player_renderer.cc:131: web_contents->GetMainFrame()->GetRoutingID())); On 2016/08/09 22:38:34, ThomasGuilbert wrote: > On ...
4 years, 4 months ago (2016-08-09 23:04:15 UTC) #6
tguilbert
+ochang for security review. Can you please review the media/mojo/interfaces/renderer.mojom change? Gentle ping @dalecurtis. Thanks! ...
4 years, 4 months ago (2016-08-10 20:34:26 UTC) #16
Oliver Chang
lgtm
4 years, 4 months ago (2016-08-10 20:47:13 UTC) #17
DaleCurtis
https://codereview.chromium.org/2230583002/diff/80001/content/browser/media/android/media_player_renderer.cc File content/browser/media/android/media_player_renderer.cc (right): https://codereview.chromium.org/2230583002/diff/80001/content/browser/media/android/media_player_renderer.cc#newcode18 content/browser/media/android/media_player_renderer.cc:18: const int kUnusedAndIrrelevantPlayerId = 0; constexpr int.. https://codereview.chromium.org/2230583002/diff/80001/content/browser/media/android/media_player_renderer.cc#newcode24 content/browser/media/android/media_player_renderer.cc:24: ...
4 years, 4 months ago (2016-08-10 21:14:06 UTC) #18
tguilbert
Addressed comments, and opened a few bugs to address in different CLs. Thanks! https://codereview.chromium.org/2230583002/diff/80001/content/browser/media/android/media_player_renderer.cc File ...
4 years, 4 months ago (2016-08-11 00:29:00 UTC) #19
DaleCurtis
lgtm, i'm pretty sure you have to solve the cookies issue. otherwise things like signed ...
4 years, 4 months ago (2016-08-11 00:40:42 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/100001
4 years, 4 months ago (2016-08-11 00:54:39 UTC) #27
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/235569) ios-device on master.tryserver.chromium.mac (JOB_FAILED, ...
4 years, 4 months ago (2016-08-11 00:58:34 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/120001
4 years, 4 months ago (2016-08-11 01:46:38 UTC) #32
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_rel_ng/builds/259138) linux_chromium_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, ...
4 years, 4 months ago (2016-08-11 02:01:09 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/140001
4 years, 4 months ago (2016-08-11 02:22:55 UTC) #37
commit-bot: I haz the power
Try jobs failed on following builders: cast_shell_android on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/cast_shell_android/builds/110380)
4 years, 4 months ago (2016-08-11 02:43:09 UTC) #39
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/160001
4 years, 4 months ago (2016-08-11 04:48:09 UTC) #42
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/235733)
4 years, 4 months ago (2016-08-11 04:49:45 UTC) #44
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/160001
4 years, 4 months ago (2016-08-11 06:23:05 UTC) #46
commit-bot: I haz the power
Try jobs failed on following builders: cast_shell_android on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/cast_shell_android/builds/110466)
4 years, 4 months ago (2016-08-11 06:42:35 UTC) #48
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/180001
4 years, 4 months ago (2016-08-11 07:26:17 UTC) #51
commit-bot: I haz the power
Try jobs failed on following builders: win_clang on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/67412)
4 years, 4 months ago (2016-08-11 07:59:08 UTC) #53
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/200001
4 years, 4 months ago (2016-08-11 18:43:37 UTC) #56
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_compile_dbg_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/237516)
4 years, 4 months ago (2016-08-11 19:53:49 UTC) #58
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/220001
4 years, 4 months ago (2016-08-11 20:05:30 UTC) #61
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/276381)
4 years, 4 months ago (2016-08-11 23:34:11 UTC) #63
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2230583002/220001
4 years, 4 months ago (2016-08-11 23:47:12 UTC) #65
commit-bot: I haz the power
Committed patchset #12 (id:220001)
4 years, 4 months ago (2016-08-12 02:40:32 UTC) #66
commit-bot: I haz the power
4 years, 4 months ago (2016-08-12 02:42:17 UTC) #68
Message was sent while issue was closed.
Patchset 12 (id:??) landed as
https://crrev.com/cd478271f0ea7b3a25fd0b04799d97699598278a
Cr-Commit-Position: refs/heads/master@{#411527}

Powered by Google App Engine
This is Rietveld 408576698