Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1436)

Unified Diff: media/video/capture/video_capture_types.h

Issue 83633008: Reland: Reorganize media::VideoCapture* types (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/video/capture/video_capture_proxy.cc ('k') | media/video/capture/video_capture_types.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/video/capture/video_capture_types.h
diff --git a/media/video/capture/video_capture_types.h b/media/video/capture/video_capture_types.h
index 489befe8143b82847c035bda2586d91d1f2bb8fd..d06c1b42290251589bad226d7c63b8df35f7d7d3 100644
--- a/media/video/capture/video_capture_types.h
+++ b/media/video/capture/video_capture_types.h
@@ -5,7 +5,10 @@
#ifndef MEDIA_VIDEO_CAPTURE_VIDEO_CAPTURE_TYPES_H_
#define MEDIA_VIDEO_CAPTURE_VIDEO_CAPTURE_TYPES_H_
-#include "media/base/video_frame.h"
+#include <vector>
+
+#include "media/base/media_export.h"
+#include "ui/gfx/size.h"
namespace media {
@@ -13,12 +16,6 @@ namespace media {
// shared with device manager.
typedef int VideoCaptureSessionId;
-enum VideoCaptureResolutionType {
- ConstantResolutionVideoCaptureDevice = 0,
- VariableResolutionVideoCaptureDevice,
- MaxVideoCaptureResolutionType, // Must be last.
-};
-
// Color formats from camera.
enum VideoPixelFormat {
PIXEL_FORMAT_UNKNOWN, // Color format not set.
@@ -30,49 +27,52 @@ enum VideoPixelFormat {
PIXEL_FORMAT_MJPEG,
PIXEL_FORMAT_NV21,
PIXEL_FORMAT_YV12,
+ PIXEL_FORMAT_MAX,
};
// Video capture format specification.
+// This class is used by the video capture device to specify the format of every
+// frame captured and returned to a client.
class MEDIA_EXPORT VideoCaptureFormat {
public:
VideoCaptureFormat();
- VideoCaptureFormat(int width,
- int height,
+ VideoCaptureFormat(const gfx::Size& frame_size,
int frame_rate,
- VideoCaptureResolutionType frame_size_type);
+ VideoPixelFormat pixel_format);
// Checks that all values are in the expected range. All limits are specified
// in media::Limits.
bool IsValid() const;
- int width;
- int height;
+ gfx::Size frame_size;
int frame_rate;
- VideoCaptureResolutionType frame_size_type;
+ VideoPixelFormat pixel_format;
};
// Parameters for starting video capture.
+// This class is used by the client of a video capture device to specify the
+// format of frames in which the client would like to have captured frames
+// returned.
class MEDIA_EXPORT VideoCaptureParams {
public:
VideoCaptureParams();
- // Identifies which device is to be started.
- VideoCaptureSessionId session_id;
// Requests a resolution and format at which the capture will occur.
VideoCaptureFormat requested_format;
+
+ // Allow mid-capture resolution change.
+ bool allow_resolution_change;
};
// Capabilities describe the format a camera captures video in.
-class MEDIA_EXPORT VideoCaptureCapability : public VideoCaptureFormat {
+// This class is used by the video capture device to report the formats in which
+// it is capable of capturing frames.
+class MEDIA_EXPORT VideoCaptureCapability {
public:
VideoCaptureCapability();
- VideoCaptureCapability(int width,
- int height,
- int frame_rate,
- VideoPixelFormat color,
- VideoCaptureResolutionType frame_size_type);
- VideoPixelFormat color; // Desired video type.
+ // Supported resolution and format.
+ VideoCaptureFormat supported_format;
};
typedef std::vector<VideoCaptureCapability> VideoCaptureCapabilities;
« no previous file with comments | « media/video/capture/video_capture_proxy.cc ('k') | media/video/capture/video_capture_types.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698