| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 module video_capture.mojom; | 5 module video_capture.mojom; |
| 6 | 6 |
| 7 import "services/video_capture/public/interfaces/device_factory.mojom"; | 7 import "services/video_capture/public/interfaces/device_factory.mojom"; |
| 8 | 8 |
| 9 // Production entry point to the Video Capture Service API. | 9 // Entry point to the Video Capture Service API. |
| 10 // The service hosts two DeviceFactories. The "regular" factory | 10 // The service hosts two DeviceFactories. The "regular" factory |
| 11 // provides access to the capture devices connected to the system. The "fake" | 11 // provides access to the capture devices connected to the system. The "fake" |
| 12 // factory provides access to a single fake device that generates test frames. | 12 // factory provides access to a single fake device that generates test frames. |
| 13 // Note: Despite the name, the fake factory is a production feature that is | 13 // Note: Despite the name, the fake factory is a production feature that is |
| 14 // shipped in release builds of Chromium. It is useful for Web Developers who | 14 // shipped in release builds of Chromium. It is useful for Web Developers who |
| 15 // want to test video capture code without having to use an actual capture | 15 // want to test video capture code without having to use an actual capture |
| 16 // device. | 16 // device. |
| 17 interface Service { | 17 interface DeviceFactoryProvider { |
| 18 ConnectToDeviceFactory(DeviceFactory& request); | 18 ConnectToDeviceFactory(DeviceFactory& request); |
| 19 ConnectToFakeDeviceFactory(DeviceFactory& request); | 19 ConnectToFakeDeviceFactory(DeviceFactory& request); |
| 20 |
| 21 // The service shuts down after a certain delay when no client is connected. |
| 22 // This method allows clients to customize this delay. |
| 23 // An example use case for a custom delay is integration tests that want to |
| 24 // minimize wait time. |
| 25 // The default value is found in constants.mojom. |
| 26 SetShutdownDelayInSeconds(float seconds); |
| 20 }; | 27 }; |
| OLD | NEW |