New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 742682 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Bug


Participants' hotlists:
Morrallas


Sign in to add a comment

Migrate MediaStream control messages from IPC to mojom

Project Member Reported by mcasas@chromium.org, Jul 14 2017

Issue description

These issue tracks the migration of the MediaStream associated
Renderer <-> Host IPC messages [1] to mojom.

These are interchanged from Renderer's MediaStreamDispatcher [2] 
and Browser's Renderer host MediaStreamDispatcherHost [3].

For reference, I did a similar migration for Video Capture 
messages in  https://crbug.com/651897 .

[1] https://cs.chromium.org/chromium/src/content/common/media/media_stream_messages.h?dr&l=5
[2] https://cs.chromium.org/chromium/src/content/renderer/media/media_stream_dispatcher.h?type=cs&l=34
[3] https://cs.chromium.org/chromium/src/content/browser/renderer_host/media/media_stream_dispatcher_host.h?type=cs&l=31

 

Comment 1 by r...@chromium.org, Jul 14 2017

Labels: -Pri-3 M-63 Pri-2
Applying a milestone since it will effect some upcoming work.

Comment 2 by c.pa...@samsung.com, Jul 17 2017

Cc: -c.pa...@samsung.com
Owner: c.pa...@samsung.com
Status: Assigned (was: Available)
First CL : https://chromium-review.googlesource.com/c/571113/
Project Member

Comment 3 by bugdroid1@chromium.org, Jul 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/92b1cd9bad42ea439118eee40c2ffe17675ff0e3

commit 92b1cd9bad42ea439118eee40c2ffe17675ff0e3
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Jul 21 02:42:08 2017

Migrate MediaStream IPC messages to Mojo - part 1

This CL migrates IPC messages from renderer to browser with basic data 
types that mojom readily supports. This is the first in a series of CLs
to migrate MediaStream IPC to Mojo.

This CL follows the pattern in https://codereview.chromium.org/2390103002/.

Bug:  742682 
TEST=content_unittests --gtest_filter="MediaStreamDispatcherTest*",
content_unittests --gtest_filter="MediaStreamDispatcherHostTest*",
content_unittests --gtest_filter="UserMediaClientImplTest*",
content_browsertests and browser_tests working as before

Change-Id: I7cb915b3fc0b8d0297b299b4a13b7ae71e690026
Reviewed-on: https://chromium-review.googlesource.com/571113
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Miguel Casas <mcasas@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#488559}
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/common/BUILD.gn
[add] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/common/media/media_stream.mojom
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/common/media/media_stream_messages.h
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/public/app/mojo/content_browser_manifest.json
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/renderer/media/media_stream_dispatcher.h
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/renderer/media/media_stream_dispatcher_unittest.cc
[modify] https://crrev.com/92b1cd9bad42ea439118eee40c2ffe17675ff0e3/content/renderer/media/user_media_client_impl_unittest.cc

Project Member

Comment 4 by bugdroid1@chromium.org, Jul 25 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54

commit 3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Tue Jul 25 21:22:25 2017

Migrate MediaStream IPC messages to Mojo - part 2

This CL migrates two renderer to browser IPC messages OpenDevice
and SetCapturingLinkSecured. It also adds typemapping for the
enum MediaStreamType.

Bug:  742682 
TEST=content_unittests --gtest_filter="MediaStreamDispatcherTest*",
content_unittests --gtest_filter="MediaStreamDispatcherHostTest*",
content_unittests --gtest_filter="UserMediaClientImplTest*",
content_unittests --gtest_filter="MediaStreamVideoCapturerSourceTest*"
content_browsertests and browser_tests working as before.

Change-Id: I229f99cd190459810f39cc5066fc97ab463699f9
Reviewed-on: https://chromium-review.googlesource.com/575306
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Miguel Casas <mcasas@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#489437}
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/common/media/OWNERS
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/common/media/media_stream.mojom
[add] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/common/media/media_stream.typemap
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/common/media/media_stream_messages.h
[add] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/common/media/media_stream_typemap_traits.cc
[add] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/common/media/media_stream_typemap_traits.h
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/common/typemaps.gni
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/renderer/media/media_stream_dispatcher_unittest.cc
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/renderer/media/media_stream_video_capturer_source.cc
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/renderer/media/media_stream_video_capturer_source.h
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/renderer/media/media_stream_video_capturer_source_unittest.cc
[modify] https://crrev.com/3a8c2b56fc15ddc3aa13e7f1640a3d7c93b32f54/content/renderer/media/user_media_client_impl_unittest.cc

Project Member

Comment 5 by bugdroid1@chromium.org, Jul 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11

commit 1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Wed Jul 26 21:00:50 2017

Migrate MediaStream IPC messages to Mojo - part 3

This CL migrates the last renderer to browser IPC message GenerateStream.
It also adds typemapping for the structs TrackControls and StreamControls.

Bug:  742682 
TEST=content_unittests --gtest_filter="MediaStreamDispatcherTest*",
content_unittests --gtest_filter="MediaStreamDispatcherHostTest*",
content_unittests --gtest_filter="UserMediaClientImplTest*",
content_browsertests and browser_tests working as before.

Change-Id: I86da63a573d75f9322e16b3634cccfa574bf46ea
Reviewed-on: https://chromium-review.googlesource.com/579318
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Miguel Casas <mcasas@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#489752}
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/common/media/media_stream.mojom
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/common/media/media_stream.typemap
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/common/media/media_stream_messages.h
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/common/media/media_stream_typemap_traits.cc
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/common/media/media_stream_typemap_traits.h
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/renderer/media/media_stream_dispatcher.h
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/renderer/media/media_stream_dispatcher_unittest.cc
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/renderer/media/media_stream_video_capturer_source_unittest.cc
[modify] https://crrev.com/1dfdb6bcbb515d349c3feea3055a1fb4ab5e3c11/content/renderer/media/user_media_client_impl_unittest.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Aug 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2955d7d706cc3b8aa309740055b2dfc87e84aa63

commit 2955d7d706cc3b8aa309740055b2dfc87e84aa63
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Tue Aug 01 06:02:22 2017

Migrate MediaStream IPC messages to Mojo - part 4

This CL introduces mojom::MediaStreamDispatcher interface and its
implementation in content::MediaStreamDispatcher. It marks the
beginning of migration of browser to renderer IPC messages with
StreamGenerationFailed being the first one migrated.
It also adds typemapping for the enum MediaStreamRequestResult.

Bug:  742682 
Change-Id: I4149b1c92aa927d79e56b02e31f867c43a54b5e7
Reviewed-on: https://chromium-review.googlesource.com/584552
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Miguel Casas <mcasas@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#490870}
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/common/media/OWNERS
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/common/media/media_stream.mojom
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/common/media/media_stream.typemap
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/common/media/media_stream_messages.h
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/common/media/media_stream_typemap_traits.cc
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/common/media/media_stream_typemap_traits.h
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/public/app/mojo/content_renderer_manifest.json
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/renderer/media/media_stream_dispatcher.h
[modify] https://crrev.com/2955d7d706cc3b8aa309740055b2dfc87e84aa63/content/renderer/media/media_stream_dispatcher_unittest.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Aug 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ca947193f97f17c67c7d7cef26e2e8f824ed4075

commit ca947193f97f17c67c7d7cef26e2e8f824ed4075
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Thu Aug 03 07:44:24 2017

Report GenerateStream and OpenDevice failures to renderer

If the requesting renderer is not allowed access to the given origin,
browser reports GenerateStream and OpenDevice failures to the renderer.

This CL also adds a OnDeviceOpenFailed() method MediaStreamDispatcher
mojom interface, equivalent to legacy MediaStreamMsg_DeviceOpenFailed
IPC message.

Bug:  742682 
Change-Id: I6ff2516dd22281cf4c1fad40b56257352f2bdec7
Reviewed-on: https://chromium-review.googlesource.com/597475
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#491671}
[modify] https://crrev.com/ca947193f97f17c67c7d7cef26e2e8f824ed4075/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/ca947193f97f17c67c7d7cef26e2e8f824ed4075/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/ca947193f97f17c67c7d7cef26e2e8f824ed4075/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/ca947193f97f17c67c7d7cef26e2e8f824ed4075/content/common/media/media_stream.mojom
[modify] https://crrev.com/ca947193f97f17c67c7d7cef26e2e8f824ed4075/content/common/media/media_stream_messages.h
[modify] https://crrev.com/ca947193f97f17c67c7d7cef26e2e8f824ed4075/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/ca947193f97f17c67c7d7cef26e2e8f824ed4075/content/renderer/media/media_stream_dispatcher.h

Project Member

Comment 8 by bugdroid1@chromium.org, Aug 4 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ab09b8194e754e2df7949063a162e943e3171894

commit ab09b8194e754e2df7949063a162e943e3171894
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Aug 04 01:32:40 2017

Migrate MediaStream IPC messages to Mojo - part 5

This CL migrates all the remaining browser to renderer IPC messages.

Bug:  742682 
Change-Id: I968d9c2f4898dd293fcb6941c746e1d20473f81f
Reviewed-on: https://chromium-review.googlesource.com/596107
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#491908}
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/common/media/media_stream.mojom
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/common/media/media_stream.typemap
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/common/media/media_stream_messages.h
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/renderer/media/media_stream_dispatcher.h
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/renderer/media/media_stream_dispatcher_unittest.cc
[modify] https://crrev.com/ab09b8194e754e2df7949063a162e943e3171894/content/renderer/media/user_media_client_impl_unittest.cc

Project Member

Comment 9 by bugdroid1@chromium.org, Aug 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/20c39240422e7db2353733c418eaf4faadcd1834

commit 20c39240422e7db2353733c418eaf4faadcd1834
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Tue Aug 08 17:30:23 2017

Replace DCHECK with an early return if |dispatcher| is null or not bound

There is a possibility that GetMediaStreamDispatcherPtrInfo can return
a null PtrInfo if the RenderFrameHost is not valid i.e. it has been
deleted by the time the task executes. In that case, we might have a
null |dispatcher| ptr which if dereferenced can result in crash.

Bug: 752448,  742682 
Change-Id: Ie5dc501b80c6ed17f0225a9b339a7402fe270cd2
Reviewed-on: https://chromium-review.googlesource.com/604632
Reviewed-by: Ken Rockot <rockot@chromium.org>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#492686}
[modify] https://crrev.com/20c39240422e7db2353733c418eaf4faadcd1834/content/browser/renderer_host/media/media_stream_dispatcher_host.cc

Project Member

Comment 10 by bugdroid1@chromium.org, Aug 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/622f1359f68a417d77e3907ceb93b5d63ef1df98

commit 622f1359f68a417d77e3907ceb93b5d63ef1df98
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Aug 11 17:41:53 2017

Use media::AudioParameters directly in MediaStreamDevice - part 1

Currently, MediaStreamDevice has its own AudioDeviceParameters struct
with properties that match directly with those with the same name in
media::AudioParameters.

This CL replaces AudioDeviceParameters with media::AudioParameters as
|matched_output|'s type in MediaStreamDevice. Subsequent CL would do the
same for |input| field as well.

This would simplify mojom typemapping for MediaStreamDevice.

Bug:  742682 
Change-Id: I9f7d546b971305752111bdd8c6bc85188c6e8317
Reviewed-on: https://chromium-review.googlesource.com/590515
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#493788}
[modify] https://crrev.com/622f1359f68a417d77e3907ceb93b5d63ef1df98/content/browser/renderer_host/media/audio_input_device_manager.cc
[modify] https://crrev.com/622f1359f68a417d77e3907ceb93b5d63ef1df98/content/browser/renderer_host/media/audio_output_authorization_handler.cc
[modify] https://crrev.com/622f1359f68a417d77e3907ceb93b5d63ef1df98/content/common/media/media_stream_messages.h
[modify] https://crrev.com/622f1359f68a417d77e3907ceb93b5d63ef1df98/content/public/common/media_stream_request.h
[modify] https://crrev.com/622f1359f68a417d77e3907ceb93b5d63ef1df98/content/renderer/media/user_media_client_impl.cc
[modify] https://crrev.com/622f1359f68a417d77e3907ceb93b5d63ef1df98/content/renderer/media/webrtc/processed_local_audio_source.cc
[modify] https://crrev.com/622f1359f68a417d77e3907ceb93b5d63ef1df98/content/renderer/media/webrtc_audio_device_impl.cc

Project Member

Comment 11 by bugdroid1@chromium.org, Aug 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7be9a5b4591d062524aa41b77ed03f14c474bbe3

commit 7be9a5b4591d062524aa41b77ed03f14c474bbe3
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Aug 11 17:53:40 2017

Use media::AudioParameters directly in MediaStreamDevice - part 2

Currently, MediaStreamDevice has its own AudioDeviceParameters struct
with properties that match directly with those with the same name in
media::AudioParameters.

This CL replaces AudioDeviceParameters with media::AudioParameters as
|input|'s type in MediaStreamDevice. It also marks the complete removal
of AudioDeviceParameters struct from MediaStreamDevice.

This would simplify mojom typemapping for MediaStreamDevice.

Bug:  742682 
Change-Id: Ic03876bd6c71474b15e7815ebcb6797921cad9b3
Reviewed-on: https://chromium-review.googlesource.com/612021
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#493798}
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/browser/renderer_host/media/audio_input_device_manager.cc
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/browser/renderer_host/media/audio_input_device_manager_unittest.cc
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/browser/renderer_host/media/media_stream_manager.cc
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/common/media/media_stream_messages.h
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/public/common/media_stream_request.cc
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/public/common/media_stream_request.h
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/renderer/media/local_media_stream_audio_source.cc
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/renderer/media/media_stream_audio_processor_options.cc
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/renderer/media/media_stream_audio_processor_options.h
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/renderer/media/media_stream_audio_processor_unittest.cc
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/renderer/media/mock_media_stream_dispatcher.cc
[modify] https://crrev.com/7be9a5b4591d062524aa41b77ed03f14c474bbe3/content/renderer/media/webrtc/processed_local_audio_source.cc

Project Member

Comment 12 by bugdroid1@chromium.org, Aug 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/768342bf494b89157dfb718a17f0d7baace6e8c8

commit 768342bf494b89157dfb718a17f0d7baace6e8c8
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Aug 18 10:10:35 2017

Register mojom::MediaStreamDispatcherHost interface

This CL registers MediaStreamDispatcherHost(MSDH) as a Mojo interface
to be exposed to the renderer from RenderProcessHostImpl. MSDH is created
lazily when a connection request is made from the renderer.
MSDH is no longer a BrowserMessageFilter or a BrowserAssociatedInterface.

Bug:  742682 
Change-Id: I0a8a6b8143e9a9b82060e8769824b44ab191a4ee
Reviewed-on: https://chromium-review.googlesource.com/604853
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Reviewed-by: Christian Fremerey <chfremer@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#495515}
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/browser/renderer_host/render_process_host_impl.cc
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/browser/renderer_host/render_process_host_impl.h
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/renderer/media/media_stream_dispatcher.h
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/renderer/media/media_stream_dispatcher_unittest.cc
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/renderer/media/media_stream_video_capturer_source.cc
[modify] https://crrev.com/768342bf494b89157dfb718a17f0d7baace6e8c8/content/renderer/media/media_stream_video_capturer_source.h

Project Member

Comment 13 by bugdroid1@chromium.org, Aug 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2e16c467c0b7d0f8af1059bda5cf4a52e396b731

commit 2e16c467c0b7d0f8af1059bda5cf4a52e396b731
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Aug 18 10:24:02 2017

Remove MediaStreamMsgStart and its references

Now that all of MediaStream IPC messages have been migrated to Mojo,
we no longer need MediaStreamMsgStart constant. This CL removes the
same and also adds a separate message generator for StreamDeviceInfo
struct, as we remove media_stream_messages.h from content_message_generator.h.

Bug:  742682 
Change-Id: I1cad6e98e23ff80cc095bb5768093594185de377
Reviewed-on: https://chromium-review.googlesource.com/605867
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#495519}
[modify] https://crrev.com/2e16c467c0b7d0f8af1059bda5cf4a52e396b731/content/common/BUILD.gn
[modify] https://crrev.com/2e16c467c0b7d0f8af1059bda5cf4a52e396b731/content/common/content_message_generator.h
[modify] https://crrev.com/2e16c467c0b7d0f8af1059bda5cf4a52e396b731/content/common/media/media_stream.typemap
[add] https://crrev.com/2e16c467c0b7d0f8af1059bda5cf4a52e396b731/content/common/media/media_stream_param_traits.cc
[rename] https://crrev.com/2e16c467c0b7d0f8af1059bda5cf4a52e396b731/content/common/media/media_stream_param_traits.h
[modify] https://crrev.com/2e16c467c0b7d0f8af1059bda5cf4a52e396b731/content/renderer/media/media_stream_center.cc
[modify] https://crrev.com/2e16c467c0b7d0f8af1059bda5cf4a52e396b731/content/renderer/media/webrtc/peer_connection_dependency_factory.cc
[modify] https://crrev.com/2e16c467c0b7d0f8af1059bda5cf4a52e396b731/ipc/ipc_message_start.h

Project Member

Comment 14 by bugdroid1@chromium.org, Aug 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bbaab0ebcb053f9a4662b3e44371eefa48235dcf

commit bbaab0ebcb053f9a4662b3e44371eefa48235dcf
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Aug 18 10:26:14 2017

Move MockMojoMediaStreamDispatcherHost class to its own files

Same MockMojoMediaStreamDispatcherHost class was declared in each
of the unittests files. This CL moves the class to its own files.

This CL also removes mojom::MediaStreamDispatcherHost pointer field
from MediaStreamDispatcher and MediaStreamVideoCapturerSource.

Bug:  742682 
Change-Id: I880c8dbf10adf9fb553b710442cd28bbae31491d
Reviewed-on: https://chromium-review.googlesource.com/618312
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#495520}
[modify] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/media_stream_dispatcher.h
[modify] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/media_stream_dispatcher_unittest.cc
[modify] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/media_stream_video_capturer_source.cc
[modify] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/media_stream_video_capturer_source.h
[modify] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/media_stream_video_capturer_source_unittest.cc
[add] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/mock_mojo_media_stream_dispatcher_host.cc
[add] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/mock_mojo_media_stream_dispatcher_host.h
[modify] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/renderer/media/user_media_client_impl_unittest.cc
[modify] https://crrev.com/bbaab0ebcb053f9a4662b3e44371eefa48235dcf/content/test/BUILD.gn

Project Member

Comment 15 by bugdroid1@chromium.org, Aug 23 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7429d05d5a16405fa54ba6e3f860d2b49411f40f

commit 7429d05d5a16405fa54ba6e3f860d2b49411f40f
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Wed Aug 23 18:48:06 2017

Minimize thread hops in MediaStreamDispatcherHost

Currently, we post a task from IO thread to create the pipe on
UI thread and then send its other end back on IO thread. This
involves two thread hops(IO->UI and UI->IO). With this CL, we
now create the pipe on IO thread and send its other end to be
bound on UI thread, resulting in one less thread hop.

Bug:  742682 
Change-Id: I55027f4c97fa908c25025c08d092e250be184508
Reviewed-on: https://chromium-review.googlesource.com/620368
Reviewed-by: Emircan Uysaler <emircan@chromium.org>
Reviewed-by: Ken Rockot <rockot@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#496743}
[modify] https://crrev.com/7429d05d5a16405fa54ba6e3f860d2b49411f40f/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/7429d05d5a16405fa54ba6e3f860d2b49411f40f/content/browser/renderer_host/media/media_stream_dispatcher_host.h

Project Member

Comment 17 by bugdroid1@chromium.org, Aug 30 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f318ed0c3577c02a06f4becd827da62793b4c8d0

commit f318ed0c3577c02a06f4becd827da62793b4c8d0
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Wed Aug 30 08:39:50 2017

Add mojo connection error handler for MediaStreamDispatcher

This CL registers a connection error handler for every new
MediaStreamDispatcherPtr added to the |dispatchers_| map.
When a connection error is encountered, the corresponding
dispatcher will be removed from the map.

Bug:  742682 
Change-Id: Iaad0cbc071c1841255f2a65285d894f4967ce322
Reviewed-on: https://chromium-review.googlesource.com/640771
Reviewed-by: Ken Rockot <rockot@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#498399}
[modify] https://crrev.com/f318ed0c3577c02a06f4becd827da62793b4c8d0/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/f318ed0c3577c02a06f4becd827da62793b4c8d0/content/browser/renderer_host/media/media_stream_dispatcher_host.h

Project Member

Comment 18 by bugdroid1@chromium.org, Sep 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/025c58d7169682d24a12627b8bf0ff53015f5835

commit 025c58d7169682d24a12627b8bf0ff53015f5835
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Wed Sep 06 13:29:22 2017

Define MediaStreamDevices as a typedef instead of a class

MediaStreamDevices will be used in MediaStreamDispatcher mojom
interface after removal of StreamDeviceInfo. In the current form
i.e. as a class, MediaStreamDevices would require a separate mojom
typemapping for itself. We can avoid this typemapping by defining
MediaStreamDevices as a typedef instead of a class.

Bug:  760493 ,  742682 
Change-Id: I1053217430fa16af616b0713482ceeacf7d4b134
Reviewed-on: https://chromium-review.googlesource.com/647514
Reviewed-by: Luke Halliwell <halliwell@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Michael Giuffrida <michaelpg@chromium.org>
Reviewed-by: Raymes Khoury <raymes@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#499950}
[modify] https://crrev.com/025c58d7169682d24a12627b8bf0ff53015f5835/chrome/browser/media/webrtc/media_stream_devices_controller.cc
[modify] https://crrev.com/025c58d7169682d24a12627b8bf0ff53015f5835/chrome/browser/media/webrtc/media_stream_devices_controller_browsertest.cc
[modify] https://crrev.com/025c58d7169682d24a12627b8bf0ff53015f5835/chrome/browser/resource_coordinator/tab_manager_browsertest.cc
[modify] https://crrev.com/025c58d7169682d24a12627b8bf0ff53015f5835/chromecast/browser/cast_web_view.cc
[modify] https://crrev.com/025c58d7169682d24a12627b8bf0ff53015f5835/content/public/common/media_stream_request.cc
[modify] https://crrev.com/025c58d7169682d24a12627b8bf0ff53015f5835/content/public/common/media_stream_request.h
[modify] https://crrev.com/025c58d7169682d24a12627b8bf0ff53015f5835/extensions/shell/browser/media_capture_util.cc

Is this finished?
Sorry for the delayed response as I was OOO. This task is more or less complete. Only thing pending is typemapping for MediaStreamDevice struct. May be I'll create a separate bug for typemapping and close this bug?
Labels: -M-63
This is complete in so far as there are no more Chrome IPC messages.
However, the mojo work is not complete. In particular, the MediaStreamDispatcher mojo object should be removed and replaced by callbacks sent by the MediaStreamDispatcherHost object.
c.padhi@: Do you want to do that or should we mark this bug as "Available"?
In that case, I would like to continue with the pending work.
So, the idea here is to update MediaStreamDispatcherHost's mojo methods to take callbacks as input from MediaStreamDispatcher and remove all MediaStreamDispatcher's mojo methods i.e. MediaStreamDispatcher mojo interface altogether can be removed?
I think a good first step would be to remove the following methods from MediaStreamDispatcher
  OnStreamGenerated()
  OnStreamGenerationFailed()
  OnDeviceOpened()
  OnDeviceOpenFailed()

These methods are replies to the following MediaStreamDispatcherHost methods:
  GenerateStream()
  OpenDevice()

MSDH should communicate the results as replies to these methods, not by MediaStreamDispatcher.

This means MSD would have only the OnDeviceStopped() method, which is not a reply to MSDH.

Once the above-mentioned work is complete we can rename the MediaStreamDispatcher mojo interface and renderer object to MediaStreamObserver or MediaStreamDeviceObserver since it will contain only notifications about events related to MediaStreamDevices. At this point we can close this bug.

Project Member

Comment 24 by bugdroid1@chromium.org, Nov 17 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/564619cf67638988ca6253c0248d409c358b04b8

commit 564619cf67638988ca6253c0248d409c358b04b8
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Nov 17 11:18:14 2017

MediaStreamVideoCapturerSource need not inherit RenderFrameObserver

MediaStreamVideoCapturerSource unnecessarily inherits RenderFrameObserver
and can be removed. This CL allows UserMediaProcessor to cache render_frame_id
instead of RenderFrame.

Bug:  742682 
Change-Id: Ic27b9b8b5c8092a5b3031adbef5b9c0034171742
Reviewed-on: https://chromium-review.googlesource.com/776733
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#517378}
[modify] https://crrev.com/564619cf67638988ca6253c0248d409c358b04b8/content/renderer/media/media_stream_video_capturer_source.cc
[modify] https://crrev.com/564619cf67638988ca6253c0248d409c358b04b8/content/renderer/media/media_stream_video_capturer_source.h
[modify] https://crrev.com/564619cf67638988ca6253c0248d409c358b04b8/content/renderer/media/user_media_processor.cc
[modify] https://crrev.com/564619cf67638988ca6253c0248d409c358b04b8/content/renderer/media/user_media_processor.h

Project Member

Comment 25 by bugdroid1@chromium.org, Nov 17 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6a34edfca277487d225e6c629c6ce2058bf12972

commit 6a34edfca277487d225e6c629c6ce2058bf12972
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Fri Nov 17 21:37:12 2017

Introduce callback for OpenDevice() method

This CL modifies MSDH's OpenDevice method to take a callback and
removes corresponding response methods from MSD. It enables clients
to communicate directly with MSDH and handle the response themselves
without relying on MSD.

Bug:  742682 
Change-Id: I885de11312098d7ff06c0a1a6cb153ebc408e6c3
Reviewed-on: https://chromium-review.googlesource.com/763152
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#517564}
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/browser/renderer_host/media/media_stream_manager.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/browser/renderer_host/media/media_stream_manager.h
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/browser/renderer_host/media/media_stream_requester.h
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/browser/renderer_host/media/video_capture_unittest.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/common/media/media_stream.mojom
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/media_stream_dispatcher.h
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/media_stream_dispatcher_eventhandler.h
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/media_stream_dispatcher_unittest.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/mock_media_stream_dispatcher.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/mock_media_stream_dispatcher.h
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/mock_mojo_media_stream_dispatcher_host.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/mock_mojo_media_stream_dispatcher_host.h
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/user_media_processor.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/media/user_media_processor.h
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/pepper/pepper_media_device_manager.cc
[modify] https://crrev.com/6a34edfca277487d225e6c629c6ce2058bf12972/content/renderer/pepper/pepper_media_device_manager.h

Project Member

Comment 26 by bugdroid1@chromium.org, Nov 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9765503d41052108b01cf942d8e686c074f9d8c3

commit 9765503d41052108b01cf942d8e686c074f9d8c3
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Wed Nov 22 19:18:46 2017

Introduce callback for MediaStreamDispatcherHost::GenerateStream()

This CL modifies MSDH's GenerateStream method to take a callback and
removes corresponding response methods from MSD. It enables clients
to communicate directly with MSDH and handle the response themselves
without relying on MSD.

It also removes unnecessary scope operators(content::) associated with
content namespace in MediaStreamManager.

Bug:  742682 
Change-Id: I3af90b6adaefd9eecc6aca46f1ce67d318865a89
Reviewed-on: https://chromium-review.googlesource.com/779339
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Cr-Commit-Position: refs/heads/master@{#518702}
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/browser/renderer_host/media/media_stream_manager.cc
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/browser/renderer_host/media/media_stream_manager.h
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/browser/renderer_host/media/media_stream_manager_unittest.cc
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/browser/renderer_host/media/media_stream_requester.h
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/common/media/media_stream.mojom
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/media_stream_dispatcher.h
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/media_stream_dispatcher_eventhandler.h
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/media_stream_dispatcher_unittest.cc
[delete] https://crrev.com/3c42ecbee30e8c9c5ee99946835f848034207a15/content/renderer/media/mock_media_stream_dispatcher.cc
[delete] https://crrev.com/3c42ecbee30e8c9c5ee99946835f848034207a15/content/renderer/media/mock_media_stream_dispatcher.h
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/mock_mojo_media_stream_dispatcher_host.cc
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/mock_mojo_media_stream_dispatcher_host.h
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/user_media_client_impl_unittest.cc
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/user_media_processor.cc
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/renderer/media/user_media_processor.h
[modify] https://crrev.com/9765503d41052108b01cf942d8e686c074f9d8c3/content/test/BUILD.gn

Project Member

Comment 27 by bugdroid1@chromium.org, Nov 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8e4615e18605e9bab1f0389ff93d56dbeed95a22

commit 8e4615e18605e9bab1f0389ff93d56dbeed95a22
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Wed Nov 22 19:54:46 2017

Use callback to receive media stream device stopped notifications

This CL removes MediaStreamRequester class and it's corresponding file.
MediaStreamManager's GenerateStream and OpenDevice methods are modified
to take a callback in order to receive device stopped notifications.

This CL also removes an unused label string argument from
MediaStreamDispatcherEventHandler::OnDeviceStopped().

Bug:  742682 
Change-Id: I437e7b8efb8636549c67b9de67852699c7ed8d48
Reviewed-on: https://chromium-review.googlesource.com/785290
Commit-Queue: Avi Drissman <avi@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Olga Sharonova <olka@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Cr-Commit-Position: refs/heads/master@{#518716}
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/browser/BUILD.gn
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/browser/renderer_host/media/media_stream_manager.cc
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/browser/renderer_host/media/media_stream_manager.h
[delete] https://crrev.com/74081694091d0e163524712bc9b2273656439b96/content/browser/renderer_host/media/media_stream_requester.h
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/browser/renderer_host/media/video_capture_unittest.cc
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/browser/speech/speech_recognition_manager_impl.h
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/renderer/media/media_stream_dispatcher.cc
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/renderer/media/media_stream_dispatcher_eventhandler.h
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/renderer/media/user_media_processor.cc
[modify] https://crrev.com/8e4615e18605e9bab1f0389ff93d56dbeed95a22/content/renderer/media/user_media_processor.h

Project Member

Comment 28 by bugdroid1@chromium.org, Nov 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c

commit 26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c
Author: Chandan Padhi <c.padhi@samsung.com>
Date: Mon Nov 27 11:13:35 2017

Rename MediaStreamDispatcher to MediaStreamDeviceObserver

After [1] and [2], MediaStreamDispatcher no longer handles media stream
responses from MediaStreamDispatcherHost. Therefore, we rename MSD to
MediaStreamDeviceObserver as it now only contains notifications related
to MediaStreamDevices.

[1] https://chromium-review.googlesource.com/763152
[2] https://chromium-review.googlesource.com/779339

Bug:  742682 
Change-Id: Idd3f7d7beb5825dfc52733a06d08bb13c2eddee7
Reviewed-on: https://chromium-review.googlesource.com/786593
Commit-Queue: Chandan Padhi <c.padhi@samsung.com>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#519272}
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/browser/renderer_host/media/media_stream_dispatcher_host.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/browser/renderer_host/media/media_stream_dispatcher_host.h
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/browser/renderer_host/media/media_stream_dispatcher_host_unittest.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/common/media/media_stream.mojom
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/BUILD.gn
[rename] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/media/media_stream_device_observer.cc
[rename] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/media/media_stream_device_observer.h
[rename] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/media/media_stream_device_observer_unittest.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/media/user_media_client_impl.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/media/user_media_client_impl.h
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/media/user_media_client_impl_unittest.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/media/user_media_processor.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/media/user_media_processor.h
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/pepper/pepper_media_device_manager.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/pepper/pepper_media_device_manager.h
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/render_frame_impl.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/render_frame_impl.h
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/renderer/render_view_impl.cc
[modify] https://crrev.com/26dbd9b3b9c99ae956d29e4d248de3e9dbe9044c/content/test/BUILD.gn

Status: Fixed (was: Assigned)
MediaStream IPC migration done. Therefore, closing this bug. Created a separate bug 788693 for adding typemapping for content::MediaStreamDevice.

Sign in to add a comment