Index: content/browser/renderer_host/media/video_capture_manager.h |
diff --git a/content/browser/renderer_host/media/video_capture_manager.h b/content/browser/renderer_host/media/video_capture_manager.h |
index 6f0b0ec4702dedd2e9e2f43caecee942542ec5e8..e13db133343081b1a89b9a763097414628be4a87 100644 |
--- a/content/browser/renderer_host/media/video_capture_manager.h |
+++ b/content/browser/renderer_host/media/video_capture_manager.h |
@@ -82,6 +82,12 @@ class CONTENT_EXPORT VideoCaptureManager : public MediaStreamProvider { |
VideoCaptureControllerID client_id, |
VideoCaptureControllerEventHandler* client_handler); |
+ // Retrieve the available capture capabilities for a particular device. The |
+ // capabilities are cached during GetAvailableDevicesOnDeviceThread() and |
+ // updated on DoStartDeviceOnDeviceThread(). The call is synchronous. |
+ const media::VideoCaptureCapabilities* EnumerateDeviceCapabilities( |
+ const StreamDeviceInfo& device_info); |
+ |
private: |
virtual ~VideoCaptureManager(); |
struct DeviceEntry; |
@@ -177,6 +183,13 @@ class CONTENT_EXPORT VideoCaptureManager : public MediaStreamProvider { |
// device thread. |
media::VideoCaptureDevice::Names video_capture_devices_; |
+ // Local cache of video capture capabilities, indexed by unique id. It is |
+ // created in GetAvailableDevicesOnDeviceThread(), updated in |
+ // DoStartDeviceOnDeviceThread() and retrieved for a particular device id in |
+ // EnumerateDeviceCapabilities(), read only. |
+ std::map<std::string, media::VideoCaptureCapabilities> |
+ video_capture_capabilities_; |
+ |
DISALLOW_COPY_AND_ASSIGN(VideoCaptureManager); |
}; |