Blink roll 25b6bd3a7a131ffe68d809546ad1a20707915cdc:3a503f41ae42e5b79cfcd2ff10e65afde...
[chromium-blink-merge.git] / content / common / media / video_capture.h
blob80dca93ad824ab4b182672cddb3baeefaacb4ea0
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.
4 //
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"
14 namespace content {
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_