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

Unified Diff: media/mojo/interfaces/image_capture.mojom

Issue 2537573002: Revert of ImageCapture: move image_capture.mojom from media/mojo/interfaces/ to media/capture/mojo/ (Closed)
Patch Set: Created 4 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/mojo/interfaces/BUILD.gn ('k') | services/video_capture/BUILD.gn » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/mojo/interfaces/image_capture.mojom
diff --git a/media/mojo/interfaces/image_capture.mojom b/media/mojo/interfaces/image_capture.mojom
new file mode 100644
index 0000000000000000000000000000000000000000..50504c8e04a788b9db9125de3404eec2eec8e174
--- /dev/null
+++ b/media/mojo/interfaces/image_capture.mojom
@@ -0,0 +1,113 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+module media.mojom;
+
+// Equivalent to idl MediaSettingsRange, arbitrary range representing the
+// allowed variations of a Capability or an Option.
+// https://www.w3.org/TR/image-capture/#MediaSettingsRange
+struct Range {
+ double max;
+ double min;
+ double current;
+ double step;
+};
+
+// https://www.w3.org/TR/image-capture/#MeteringMode
+enum MeteringMode { NONE, MANUAL, SINGLE_SHOT, CONTINUOUS };
+
+// https://www.w3.org/TR/image-capture/#FillLightMode
+enum FillLightMode { NONE, OFF, AUTO, FLASH, TORCH };
+
+// Equivalent to idl PhotoCapabilities,
+// https://www.w3.org/TR/image-capture/#PhotoCapabilities
+struct PhotoCapabilities {
+ MeteringMode white_balance_mode;
+ Range color_temperature;
+ MeteringMode exposure_mode;
+ Range exposure_compensation;
+ Range iso;
+ bool red_eye_reduction;
+ MeteringMode focus_mode;
+
+ Range brightness;
+ Range contrast;
+ Range saturation;
+ Range sharpness;
+ Range height;
+ Range width;
+ Range zoom;
+ FillLightMode fill_light_mode;
+};
+
+// Equivalent to idl Point2D.
+// TODO(mcasas): use gfx::mojom::PointF after https://crbug.com/640049.
+struct Point2D {
+ float x;
+ float y;
+};
+
+// Equivalent to idl PhotoSettings,
+// https://www.w3.org/TR/image-capture/#PhotoSettings
+struct PhotoSettings {
+ // uint32 cannot be nullable, i.e. uint32? does not work, use instead a flag.
+ bool has_white_balance_mode;
+ MeteringMode white_balance_mode;
+ bool has_color_temperature;
+ double color_temperature;
+ bool has_exposure_mode;
+ MeteringMode exposure_mode;
+ bool has_exposure_compensation;
+ double exposure_compensation;
+ bool has_iso;
+ double iso;
+ bool has_red_eye_reduction;
+ bool red_eye_reduction;
+ bool has_focus_mode;
+ MeteringMode focus_mode;
+ array<Point2D> points_of_interest;
+
+ bool has_brightness;
+ double brightness;
+ bool has_contrast;
+ double contrast;
+ bool has_saturation;
+ double saturation;
+ bool has_sharpness;
+ double sharpness;
+ bool has_zoom;
+ double zoom;
+ bool has_width;
+ double width;
+ bool has_height;
+ double height;
+ bool has_fill_light_mode;
+ FillLightMode fill_light_mode;
+};
+
+// This is a mojo move-only equivalent of a Blob, i.e. MIME type and Data.
+struct Blob {
+ string mime_type;
+ array<uint8> data;
+};
+
+// |source_id| is the renderer-side UUID identifier of the image capture device.
+interface ImageCapture
+{
+ // Retrieves the image capture device capabilities and current settings.
+ // https://www.w3.org/TR/image-capture/#dom-imagecapture-getphotocapabilities
+ GetCapabilities(string source_id)
+ => (PhotoCapabilities capabilities);
+
+ // Sets the |settings| on the associated video capture device.
+ // https://www.w3.org/TR/image-capture/#dom-imagecapture-setoptions
+ SetOptions(string source_id, PhotoSettings settings)
+ => (bool success);
+
+ // Takes a Photo from the given |source_id|, returning it encoded in |blob|
+ // with the format specified in its |mime_type|.
+ // https://www.w3.org/TR/image-capture/#dom-imagecapture-takephoto
+ TakePhoto(string source_id)
+ => (Blob blob);
+};
« no previous file with comments | « media/mojo/interfaces/BUILD.gn ('k') | services/video_capture/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698