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

Issue 779233 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: ----
Type: ----



Sign in to add a comment

Add support for virtual camera devices

Project Member Reported by chfremer@chromium.org, Oct 27 2017

Issue description

Feature work:

Basic idea: Expose additional APIs from the Video Capture Service that allows external clients to add virtual devices. A virtual device will appear to clients of the Video Capture Service as a regular device. The creator of the virtual device will obtain a handle that can be used to feed frames into the virtual device.
 

Comment 1 by z...@chromium.org, Nov 13 2017

Cc: erickung@chromium.org chfremer@chromium.org
Owner: z...@chromium.org
CL uploaded: https://chromium-review.googlesource.com/c/chromium/src/+/766650

Still need to add unit tests.
Project Member

Comment 2 by bugdroid1@chromium.org, Nov 21 2017

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

commit d2edc1291416ca8271a0900371e198e3eeec2be8
Author: Peter Qiu <zqiu@chromium.org>
Date: Tue Nov 21 01:28:07 2017

video capture: add support for virtual device

This allows one application to feed video frames to another
application.

Bug:  779233 
Test: services_unittests
Change-Id: Ic5ec6328179e3d3fd3124bf4298212dba5cea32d
Reviewed-on: https://chromium-review.googlesource.com/766650
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Christian Fremerey <chfremer@chromium.org>
Commit-Queue: Peter Qiu <zqiu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#518025}
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/content/browser/renderer_host/media/service_video_capture_device_launcher_unittest.cc
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/content/browser/renderer_host/media/service_video_capture_provider_unittest.cc
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/media/capture/BUILD.gn
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/media/capture/video/scoped_buffer_pool_reservation.h
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/media/capture/video/video_capture_device_client.cc
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/BUILD.gn
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/device_factory_media_to_mojo_adapter.cc
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/device_factory_media_to_mojo_adapter.h
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/device_factory_provider_impl.cc
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/device_factory_provider_impl.h
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/public/interfaces/BUILD.gn
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/public/interfaces/constants.mojom
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/public/interfaces/device_factory.mojom
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/public/interfaces/producer.mojom
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/public/interfaces/virtual_device.mojom
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/receiver_mojo_to_media_adapter.cc
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/scoped_access_permission_media_to_mojo_adapter.cc
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/scoped_access_permission_media_to_mojo_adapter.h
[modify] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/test/device_factory_provider_unittest.cc
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/test/mock_producer.cc
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/test/mock_producer.h
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/test/virtual_device_unittest.cc
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/virtual_device_enabled_device_factory.cc
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/virtual_device_enabled_device_factory.h
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/virtual_device_mojo_adapter.cc
[add] https://crrev.com/d2edc1291416ca8271a0900371e198e3eeec2be8/services/video_capture/virtual_device_mojo_adapter.h

Comment 3 by z...@chromium.org, Nov 21 2017

Status: Fixed (was: Assigned)

Sign in to add a comment