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

Issue 2951523002: Media Remoting: Add mojo interfaces between browser and extension. (Closed)

Created:
3 years, 6 months ago by xjz
Modified:
3 years, 5 months ago
CC:
Aaron Boodman, abarth-chromium, alokp+watch_chromium.org, apacible+watch_chromium.org, avayvod+watch_chromium.org, chfremer+watch_chromium.org, chromium-apps-reviews_chromium.org, chromium-reviews, darin (slow to review), erickung+watch_chromium.org, extensions-reviews_chromium.org, feature-media-reviews_chromium.org, imcheng+watch_chromium.org, isheriff+watch_chromium.org, jasonroberts+watch_google.com, mfoltz+watch_chromium.org, miu+watch_chromium.org, qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, xjz+watch_chromium.org, yzshen+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Media Remoting: Add mojo interfaces between browser and extension. Currently media remoting communicates with extension by text strings through Media Router mojo API. This CL adds mojo interfaces to allow CastRemotingConnector in browser talk directly to MediaRemoter in extension after connected through the Media Router mojo API. These changes also enable passing the receiver's capablities to remoting control logic in renderer, which will be done in a follow up CL. BUG=734672 Review-Url: https://codereview.chromium.org/2951523002 Cr-Commit-Position: refs/heads/master@{#485043} Committed: https://chromium.googlesource.com/chromium/src/+/ef7927fa28cca59d8ca4ed06f540a38702ac0810

Patch Set 1 #

Patch Set 2 : Fix compile failure on Android bots. #

Total comments: 30

Patch Set 3 : Addressed imcheng's comments. Removed OnStarted/Failed interface. #

Total comments: 44

Patch Set 4 : Addressed miu's comments. Removed fuzz tests for CastRemotingConnector. #

Patch Set 5 : Add interface change for later CL passing receiver capabilities. #

Total comments: 6

Patch Set 6 : Add SinkCapabilities structure. #

Total comments: 6

Patch Set 7 : Addressed comments. #

Total comments: 2

Patch Set 8 : Fix unittests. #

Total comments: 20

Patch Set 9 : Addressed imcheng's comments. #

Patch Set 10 : Rebased. #

Total comments: 6

Patch Set 11 : Addressed Robert's comments. #

Patch Set 12 : Rebased again. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+537 lines, -943 lines) Patch
M BUILD.gn View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -6 lines 0 comments Download
M chrome/browser/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +1 line, -2 lines 0 comments Download
D chrome/browser/media/BUILD.gn View 1 2 3 1 chunk +0 lines, -23 lines 0 comments Download
M chrome/browser/media/cast_remoting_connector.h View 1 2 3 4 5 6 7 8 9 10 11 8 chunks +67 lines, -79 lines 0 comments Download
M chrome/browser/media/cast_remoting_connector.cc View 1 2 3 4 5 6 7 8 9 10 11 13 chunks +142 lines, -212 lines 0 comments Download
D chrome/browser/media/cast_remoting_connector_messaging.h View 1 2 3 1 chunk +0 lines, -70 lines 0 comments Download
D chrome/browser/media/cast_remoting_connector_messaging.cc View 1 2 3 1 chunk +0 lines, -61 lines 0 comments Download
M chrome/browser/media/cast_remoting_connector_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 19 chunks +126 lines, -262 lines 0 comments Download
M chrome/browser/media/router/media_router.h View 1 2 2 chunks +9 lines, -0 lines 0 comments Download
M chrome/browser/media/router/media_router_base.h View 1 2 2 chunks +9 lines, -0 lines 0 comments Download
M chrome/browser/media/router/media_router_base.cc View 1 2 3 4 5 6 7 8 1 chunk +17 lines, -0 lines 0 comments Download
M chrome/browser/media/router/mojo/media_router_mojo_impl.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/media/router/mojo/media_router_mojo_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +17 lines, -0 lines 0 comments Download
M chrome/common/media_router/mojo/BUILD.gn View 1 1 chunk +1 line, -0 lines 0 comments Download
M chrome/common/media_router/mojo/media_router.mojom View 1 2 3 4 5 6 7 8 9 2 chunks +8 lines, -0 lines 0 comments Download
M chrome/renderer/extensions/chrome_extensions_dispatcher_delegate.cc View 1 2 3 4 5 6 7 8 9 1 chunk +5 lines, -0 lines 0 comments Download
M chrome/renderer/resources/extensions/media_router_bindings.js View 1 2 3 4 5 6 7 8 9 4 chunks +27 lines, -0 lines 0 comments Download
M chrome/renderer/resources/renderer_resources.grd View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M media/mojo/interfaces/BUILD.gn View 1 2 3 4 5 6 7 8 9 1 chunk +26 lines, -0 lines 0 comments Download
A + media/mojo/interfaces/mirror_service_remoting.mojom View 1 2 3 4 5 6 7 8 9 10 1 chunk +32 lines, -102 lines 0 comments Download
M media/mojo/interfaces/remoting.mojom View 1 2 3 4 5 6 7 5 chunks +13 lines, -23 lines 0 comments Download
A + media/mojo/interfaces/remoting_common.mojom View 1 2 3 4 5 6 2 chunks +24 lines, -103 lines 0 comments Download
M media/remoting/renderer_controller.cc View 1 2 3 4 4 chunks +7 lines, -0 lines 0 comments Download

Messages

Total messages: 91 (67 generated)
xjz
PTAL. Thanks!
3 years, 6 months ago (2017-06-19 19:28:44 UTC) #10
imcheng
Media Router API looks good. Mostly general comments. I defer to Yuri for remoting specific ...
3 years, 6 months ago (2017-06-22 01:13:28 UTC) #27
xjz
imcheng: Thanks for reviewing! Addressed all your comments. miu: Removed the OnStarted() and OnStartFaile() from ...
3 years, 6 months ago (2017-06-23 19:02:42 UTC) #30
miu
Comments on PS3: https://codereview.chromium.org/2951523002/diff/100001/chrome/browser/media/cast_remoting_connector.cc File chrome/browser/media/cast_remoting_connector.cc (left): https://codereview.chromium.org/2951523002/diff/100001/chrome/browser/media/cast_remoting_connector.cc#oldcode13 chrome/browser/media/cast_remoting_connector.cc:13: #include "chrome/browser/media/cast_remoting_connector_messaging.h" You can `git rm ...
3 years, 5 months ago (2017-06-27 00:23:49 UTC) #34
xjz
Addressed miu's comments. PTAL again. Thanks! https://codereview.chromium.org/2951523002/diff/100001/chrome/browser/media/cast_remoting_connector.cc File chrome/browser/media/cast_remoting_connector.cc (left): https://codereview.chromium.org/2951523002/diff/100001/chrome/browser/media/cast_remoting_connector.cc#oldcode13 chrome/browser/media/cast_remoting_connector.cc:13: #include "chrome/browser/media/cast_remoting_connector_messaging.h" On ...
3 years, 5 months ago (2017-06-28 02:09:40 UTC) #39
miu
Comments on PS5: https://codereview.chromium.org/2951523002/diff/100001/chrome/browser/media/cast_remoting_connector.cc File chrome/browser/media/cast_remoting_connector.cc (right): https://codereview.chromium.org/2951523002/diff/100001/chrome/browser/media/cast_remoting_connector.cc#newcode372 chrome/browser/media/cast_remoting_connector.cc:372: notifyee->OnSinkAvailable(enabled_features_); On 2017/06/28 02:09:39, xjz wrote: ...
3 years, 5 months ago (2017-06-29 20:46:50 UTC) #42
xjz
miu@: Thanks for reviewing. Addressed your comments. And also updated the CL on extension side. ...
3 years, 5 months ago (2017-06-30 02:12:10 UTC) #43
miu
Comments on PS6 (just mojo interface tweaks): https://codereview.chromium.org/2951523002/diff/200001/media/mojo/interfaces/remoting_common.mojom File media/mojo/interfaces/remoting_common.mojom (right): https://codereview.chromium.org/2951523002/diff/200001/media/mojo/interfaces/remoting_common.mojom#newcode17 media/mojo/interfaces/remoting_common.mojom:17: enum RemotingSinkCapabilities ...
3 years, 5 months ago (2017-06-30 22:02:53 UTC) #44
xjz
Addressed miu's comments. Also updated the patch in extension accordingly. PTAL again. Thanks! https://codereview.chromium.org/2951523002/diff/200001/media/mojo/interfaces/remoting_common.mojom File ...
3 years, 5 months ago (2017-06-30 23:38:40 UTC) #45
miu
PS7 lgtm. https://codereview.chromium.org/2951523002/diff/220001/media/mojo/interfaces/remoting.mojom File media/mojo/interfaces/remoting.mojom (right): https://codereview.chromium.org/2951523002/diff/220001/media/mojo/interfaces/remoting.mojom#newcode76 media/mojo/interfaces/remoting.mojom:76: // TODO(xjz): Replaced this with the SinkCapabilities ...
3 years, 5 months ago (2017-06-30 23:58:06 UTC) #46
xjz
jochen@: PTAL changes to chrome/renderer/*. xhwang@: PTAL changes to media/mojo/interfaces/*. Thanks!
3 years, 5 months ago (2017-07-01 00:16:36 UTC) #48
jochen (gone - plz use gerrit)
I'm not a good reviewer for media_router_bindings.js - is somebody else covering that file?
3 years, 5 months ago (2017-07-03 07:54:05 UTC) #57
xjz
On 2017/07/03 07:54:05, jochen wrote: > I'm not a good reviewer for media_router_bindings.js - is ...
3 years, 5 months ago (2017-07-05 17:42:27 UTC) #61
imcheng
lgtm % comments https://codereview.chromium.org/2951523002/diff/260001/chrome/browser/media/cast_remoting_connector.cc File chrome/browser/media/cast_remoting_connector.cc (right): https://codereview.chromium.org/2951523002/diff/260001/chrome/browser/media/cast_remoting_connector.cc#newcode119 chrome/browser/media/cast_remoting_connector.cc:119: const SessionID::id_type tab_id = SessionTabHelper::IdForTab(contents); FYI: ...
3 years, 5 months ago (2017-07-05 18:53:09 UTC) #62
jochen (gone - plz use gerrit)
lgtm
3 years, 5 months ago (2017-07-06 15:00:32 UTC) #65
xhwang
media/mojo/interfaces/* rs LGTM. You probably will need security owners to review .mojom files.
3 years, 5 months ago (2017-07-06 20:13:35 UTC) #66
xjz
Addressed comments. Thanks! Robert: Need your RS on *.mojom files. PTAL. Thanks! https://codereview.chromium.org/2951523002/diff/220001/media/mojo/interfaces/remoting.mojom File media/mojo/interfaces/remoting.mojom ...
3 years, 5 months ago (2017-07-06 22:03:45 UTC) #68
Robert Sesek
https://codereview.chromium.org/2951523002/diff/300001/media/mojo/interfaces/mirror_service_remoting.mojom File media/mojo/interfaces/mirror_service_remoting.mojom (right): https://codereview.chromium.org/2951523002/diff/300001/media/mojo/interfaces/mirror_service_remoting.mojom#newcode20 media/mojo/interfaces/mirror_service_remoting.mojom:20: => (int32 audio_stream_id, int32 video_stream_id); What does this return ...
3 years, 5 months ago (2017-07-06 23:24:15 UTC) #77
xjz
Thanks for reviewing. Addressed Robert's comments. PTAL again. https://codereview.chromium.org/2951523002/diff/300001/media/mojo/interfaces/mirror_service_remoting.mojom File media/mojo/interfaces/mirror_service_remoting.mojom (right): https://codereview.chromium.org/2951523002/diff/300001/media/mojo/interfaces/mirror_service_remoting.mojom#newcode20 media/mojo/interfaces/mirror_service_remoting.mojom:20: => ...
3 years, 5 months ago (2017-07-07 00:14:58 UTC) #78
Robert Sesek
LGTM
3 years, 5 months ago (2017-07-07 17:25:28 UTC) #79
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/2951523002/320001
3 years, 5 months ago (2017-07-07 17:44:48 UTC) #82
commit-bot: I haz the power
Try jobs failed on following builders: ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/builds/253573) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, ...
3 years, 5 months ago (2017-07-07 17:47:39 UTC) #84
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/2951523002/360001
3 years, 5 months ago (2017-07-07 18:37:41 UTC) #88
commit-bot: I haz the power
3 years, 5 months ago (2017-07-07 20:58:44 UTC) #91
Message was sent while issue was closed.
Committed patchset #12 (id:360001) as
https://chromium.googlesource.com/chromium/src/+/ef7927fa28cca59d8ca4ed06f540...

Powered by Google App Engine
This is Rietveld 408576698