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
3 // found in the LICENSE file.
5 // This file contains commonly used definitions of video capture.
7 #ifndef CONTENT_COMMON_MEDIA_VIDEO_CAPTURE_H_
8 #define CONTENT_COMMON_MEDIA_VIDEO_CAPTURE_H_
10 #include "base/time/time.h"
11 #include "media/base/video_frame.h"
12 #include "media/video/capture/video_capture_types.h"
16 // Current status of the video capture device. It's used by multiple classes
17 // in browser process and renderer process.
18 // Browser process sends information about the current capture state and
19 // error to the renderer process using this type.
20 enum VideoCaptureState
{
21 VIDEO_CAPTURE_STATE_STARTING
,
22 VIDEO_CAPTURE_STATE_STARTED
,
23 VIDEO_CAPTURE_STATE_PAUSED
,
24 VIDEO_CAPTURE_STATE_STOPPING
,
25 VIDEO_CAPTURE_STATE_STOPPED
,
26 VIDEO_CAPTURE_STATE_ERROR
,
27 VIDEO_CAPTURE_STATE_ENDED
,
28 VIDEO_CAPTURE_STATE_LAST
= VIDEO_CAPTURE_STATE_ENDED
31 typedef base::Callback
<void(VideoCaptureState
)>
32 VideoCaptureStateUpdateCB
;
33 typedef base::Callback
<void(const media::VideoCaptureFormats
&)>
34 VideoCaptureDeviceFormatsCB
;
36 } // namespace content
38 #endif // CONTENT_COMMON_MEDIA_VIDEO_CAPTURE_H_