| 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;
|
|
|