Index: media/capture/video/video_capture_device_descriptor.h |
diff --git a/media/capture/video/video_capture_device_descriptor.h b/media/capture/video/video_capture_device_descriptor.h |
index ea2331a17bc4b9b2ad76ddb24c3fdabb2362a113..f22e9b629eec9cd910f073859ab672f49e1fc8db 100644 |
--- a/media/capture/video/video_capture_device_descriptor.h |
+++ b/media/capture/video/video_capture_device_descriptor.h |
@@ -8,6 +8,7 @@ |
#include <string> |
#include <vector> |
+#include "base/memory/ref_counted.h" |
#include "media/capture/capture_export.h" |
namespace media { |
@@ -82,6 +83,26 @@ struct CAPTURE_EXPORT VideoCaptureDeviceDescriptor { |
VideoCaptureApi capture_api; |
VideoCaptureTransportType transport_type; |
+ |
+ // Contains camera calibration parameters. |
+ // These parameters apply to both RGB and depth video devices. See also |
+ // https://w3c.github.io/mediacapture-depth/#mediatracksettings-dictionary |
+ // TODO(aleksandar.stojiljkovic): Add principal point and camera distortion |
+ // model and coefficients. See also https://crbug.com/616098 |
+ struct CameraCalibration |
+ : public base::RefCountedThreadSafe<CameraCalibration> { |
+ double focal_length_x = 0.0; |
+ double focal_length_y = 0.0; |
+ // depth near and far are used only for depth cameras. |
+ double depth_near = 0.0; |
+ double depth_far = 0.0; |
+ |
+ private: |
+ friend class base::RefCountedThreadSafe<CameraCalibration>; |
mcasas
2017/01/05 01:09:32
I fail to see why should CameraCalibration be ref
aleksandar.stojiljkovic
2017/01/09 18:47:01
Done.
Didn't know better. As I learned about it he
|
+ ~CameraCalibration() {} |
+ }; |
+ |
+ scoped_refptr<CameraCalibration> camera_calibration = nullptr; |
}; |
using VideoCaptureDeviceDescriptors = std::vector<VideoCaptureDeviceDescriptor>; |