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. 6 7 #ifndef CONTENT_COMMON_MEDIA_VIDEO_CAPTURE_H_ 8 #define CONTENT_COMMON_MEDIA_VIDEO_CAPTURE_H_ 9 10 #include "base/time/time.h" 11 #include "media/base/video_frame.h" 12 #include "media/video/capture/video_capture_types.h" 13 14 namespace content { 15 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 29 }; 30 31 typedef base::Callback<void(VideoCaptureState)> 32 VideoCaptureStateUpdateCB; 33 typedef base::Callback<void(const media::VideoCaptureFormats&)> 34 VideoCaptureDeviceFormatsCB; 35 36 } // namespace content 37 38 #endif // CONTENT_COMMON_MEDIA_VIDEO_CAPTURE_H_ 39