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 // Production 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 Service { |
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 |