Index: media/mojo/interfaces/media_types.mojom |
diff --git a/media/mojo/interfaces/media_types.mojom b/media/mojo/interfaces/media_types.mojom |
index 1d6840c80f4ec0f75de42f505e61bdab06bb76b3..f668e86a29b5ffef387f0a826d36f30d1393e5a0 100644 |
--- a/media/mojo/interfaces/media_types.mojom |
+++ b/media/mojo/interfaces/media_types.mojom |
@@ -97,6 +97,7 @@ enum SampleFormat { |
// See media/base/video_types.h for descriptions. |
// Kept in sync with media::VideoPixelFormat via static_asserts. |
+// TODO(mcasas): use enum traits instead, https://crbug.com/655205 |
enum VideoFormat { |
UNKNOWN = 0, |
I420, |
@@ -128,6 +129,42 @@ enum VideoFormat { |
FORMAT_MAX = Y16, |
}; |
+enum ResolutionChangePolicy { |
+ FIXED_RESOLUTION, |
+ FIXED_ASPECT_RATIO, |
+ ANY_WITHIN_LIMIT, |
+}; |
+ |
+enum PowerLineFrequency { |
+ DEFAULT, |
+ HZ_50, |
+ HZ_60 |
+}; |
+ |
+enum VideoPixelStorage { |
+ CPU, |
+ GPUMEMORYBUFFER |
+}; |
+ |
+enum VideoCaptureApi { |
+ LINUX_V4L2_SINGLE_PLANE, |
+ WIN_MEDIA_FOUNDATION, |
+ WIN_DIRECT_SHOW, |
+ MACOSX_AVFOUNDATION, |
+ MACOSX_DECKLINK, |
+ ANDROID_API1, |
+ ANDROID_API2_LEGACY, |
+ ANDROID_API2_FULL, |
+ ANDROID_API2_LIMITED, |
+ ANDROID_TANGO, |
+ UNKNOWN |
+}; |
+ |
+enum VideoCaptureTransportType { |
+ // For MACOSX_AVFOUNDATION Api, identifies devices that are built-in or USB. |
+ MACOSX_USB_OR_BUILT_IN, |
+ OTHER_TRANSPORT |
+}; |
// Kept in sync with media::ColorSpace via static_asserts. |
enum ColorSpace { |
UNSPECIFIED = 0, |
@@ -345,3 +382,16 @@ struct PipelineStatistics { |
int64 audio_memory_usage; |
int64 video_memory_usage; |
}; |
+ |
+struct VideoCaptureFormat { |
+ gfx.mojom.Size frame_size; |
+ float frame_rate; |
+ VideoFormat pixel_format; |
+ VideoPixelStorage pixel_storage; |
+}; |
+ |
+struct VideoCaptureParams { |
+ VideoCaptureFormat requested_format; |
+ ResolutionChangePolicy resolution_change_policy; |
+ PowerLineFrequency power_line_frequency; |
+}; |