OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 // VideoCaptureManager is used to open/close, start/stop, enumerate available | 5 // VideoCaptureManager is used to open/close, start/stop, enumerate available |
6 // video capture devices, and manage VideoCaptureController's. | 6 // video capture devices, and manage VideoCaptureController's. |
7 // All functions are expected to be called from Browser::IO thread. | 7 // All functions are expected to be called from Browser::IO thread. |
8 // VideoCaptureManager will open OS dependent instances of VideoCaptureDevice. | 8 // VideoCaptureManager will open OS dependent instances of VideoCaptureDevice. |
9 // A device can only be opened once. | 9 // A device can only be opened once. |
10 | 10 |
(...skipping 20 matching lines...) Expand all Loading... |
31 public: | 31 public: |
32 // Calling |Start| of this id will open the first device, even though open has | 32 // Calling |Start| of this id will open the first device, even though open has |
33 // not been called. This is used to be able to use video capture devices | 33 // not been called. This is used to be able to use video capture devices |
34 // before MediaStream is implemented in Chrome and WebKit. | 34 // before MediaStream is implemented in Chrome and WebKit. |
35 enum { kStartOpenSessionId = 1 }; | 35 enum { kStartOpenSessionId = 1 }; |
36 | 36 |
37 VideoCaptureManager(); | 37 VideoCaptureManager(); |
38 virtual ~VideoCaptureManager(); | 38 virtual ~VideoCaptureManager(); |
39 | 39 |
40 // Implements MediaStreamProvider. | 40 // Implements MediaStreamProvider. |
41 virtual void Register(MediaStreamProviderListener* listener); | 41 virtual void Register(MediaStreamProviderListener* listener) OVERRIDE; |
42 | 42 |
43 virtual void Unregister(); | 43 virtual void Unregister() OVERRIDE; |
44 | 44 |
45 virtual void EnumerateDevices(); | 45 virtual void EnumerateDevices() OVERRIDE; |
46 | 46 |
47 virtual int Open(const StreamDeviceInfo& device); | 47 virtual int Open(const StreamDeviceInfo& device) OVERRIDE; |
48 | 48 |
49 virtual void Close(int capture_session_id); | 49 virtual void Close(int capture_session_id) OVERRIDE; |
50 | 50 |
51 // Functions used to start and stop media flow. | 51 // Functions used to start and stop media flow. |
52 // Start allocates the device and no other application can use the device | 52 // Start allocates the device and no other application can use the device |
53 // before Stop is called. Captured video frames will be delivered to | 53 // before Stop is called. Captured video frames will be delivered to |
54 // video_capture_receiver. | 54 // video_capture_receiver. |
55 void Start(const media::VideoCaptureParams& capture_params, | 55 void Start(const media::VideoCaptureParams& capture_params, |
56 media::VideoCaptureDevice::EventHandler* video_capture_receiver); | 56 media::VideoCaptureDevice::EventHandler* video_capture_receiver); |
57 | 57 |
58 // Stops capture device referenced by |capture_session_id|. No more frames | 58 // Stops capture device referenced by |capture_session_id|. No more frames |
59 // will be delivered to the frame receiver, and |stopped_cb| will be called. | 59 // will be delivered to the frame receiver, and |stopped_cb| will be called. |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 Controllers controllers_; | 148 Controllers controllers_; |
149 | 149 |
150 DISALLOW_COPY_AND_ASSIGN(VideoCaptureManager); | 150 DISALLOW_COPY_AND_ASSIGN(VideoCaptureManager); |
151 }; | 151 }; |
152 | 152 |
153 } // namespace media_stream | 153 } // namespace media_stream |
154 | 154 |
155 DISABLE_RUNNABLE_METHOD_REFCOUNT(media_stream::VideoCaptureManager); | 155 DISABLE_RUNNABLE_METHOD_REFCOUNT(media_stream::VideoCaptureManager); |
156 | 156 |
157 #endif // CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_CAPTURE_MANAGER_H_ | 157 #endif // CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_CAPTURE_MANAGER_H_ |
OLD | NEW |