{
	"$schema": "http://json-schema.org/draft-07/schema#",
	"$id": "https://www.arri.com/schema/json/camera/lens_device/v1-0-2",
	"$comment": "Auto-generated - please do not edit",
	"title": "Lens Device",
	"description": "Description of the static parameters of the lens",
	"type": "object",
	"properties": {
		"circleOfConfusion": {
			"title": "Circle of Confusion",
			"description": "Circle of confusion used for DoF calculation",
			"type": "number",
			"exclusiveMinimum": 0
		},
		"lensFirmware": {
			"title": "Firmware Version",
			"description": "Lens firmware version",
			"type": "string"
		},
		"lensLimitsFocusImperial": {
			"title": "Lens Focus Distance Limits Imperial",
			"description": "Focus distance limits of the lens in imperial form",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum focus distance",
					"type": "integer",
					"oneOf": [
						{
							"description": "value in 1/1000\"",
							"type": "integer",
							"exclusiveMinimum": 0
						},
						{
							"description": "infinity",
							"type": "integer",
							"const": -1
						},
						{
							"description": "not available",
							"type": "integer",
							"const": 0
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum focus distance",
					"type": "integer",
					"oneOf": [
						{
							"description": "value in 1/1000\"",
							"type": "integer",
							"exclusiveMinimum": 0
						},
						{
							"description": "infinity",
							"type": "integer",
							"const": -1
						},
						{
							"description": "not available",
							"type": "integer",
							"const": 0
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensLimitsFocusMetric": {
			"title": "Lens Focus Distance Limits Metric",
			"description": "Focus distance limits of the lens in metric form",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum focus distance",
					"type": "integer",
					"oneOf": [
						{
							"description": "value in mm",
							"type": "integer",
							"exclusiveMinimum": 0
						},
						{
							"description": "infinity",
							"type": "integer",
							"const": -1
						},
						{
							"description": "not available",
							"type": "integer",
							"const": 0
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum focus distance",
					"type": "integer",
					"oneOf": [
						{
							"description": "value in mm",
							"type": "integer",
							"exclusiveMinimum": 0
						},
						{
							"description": "infinity",
							"type": "integer",
							"const": -1
						},
						{
							"description": "not available",
							"type": "integer",
							"const": 0
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensLimitsIris": {
			"title": "Lens Linear Iris Limits",
			"description": "Linear iris limits of the lens",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Lens Maximum iris",
					"type": "integer",
					"oneOf": [
						{
							"description": "1/1000 of a stop with T1 ≘ 1000",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						},
						{
							"description": "closed",
							"type": "integer",
							"const": -2
						},
						{
							"description": "near close",
							"type": "integer",
							"const": -3
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Lens Minimum iris",
					"type": "integer",
					"oneOf": [
						{
							"description": "1/1000 of a stop with T1 ≘ 1000",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						},
						{
							"description": "closed",
							"type": "integer",
							"const": -2
						},
						{
							"description": "near close",
							"type": "integer",
							"const": -3
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensLimitsZoom": {
			"title": "Lens Focal Length Limits",
			"description": "Focal length limits of the lens",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum focal length",
					"type": "integer",
					"oneOf": [
						{
							"description": "value in µm",
							"type": "integer",
							"exclusiveMinimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": 0
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum focal length",
					"type": "integer",
					"oneOf": [
						{
							"description": "value in µm",
							"type": "integer",
							"exclusiveMinimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": 0
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensMake": {
			"title": "Lens Manufacturer",
			"description": "Lens manufacturer",
			"type": "string"
		},
		"lensModel": {
			"title": "Lens Model",
			"description": "Name of the lens model",
			"type": "string"
		},
		"lensMotorRawEncoderLimitsFL": {
			"title": "Lens Motor Raw Encoder Focal Length Limits",
			"description": "Limits of the raw encoder values for the motor controlling the focal length axis of the lens",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum raw encoder value for the focal length axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum raw encoder value for the focal length axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensMotorRawEncoderLimitsFocus": {
			"title": "Lens Motor Raw Encoder Focus Limits",
			"description": "Limits of the raw encoder values for the motor controlling the focus axis of the lens",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum raw encoder value for the focus axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum raw encoder value for the focus axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensMotorRawEncoderLimitsIris": {
			"title": "Lens Motor Raw Encoder Iris Limits",
			"description": "Limits of the raw encoder values for the motor controlling the iris axis of the lens",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum raw encoder value for the iris axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum raw encoder value for the iris axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensProtocol": {
			"title": "Lens Protocol",
			"description": "Lens metadata protocol",
			"type": "string"
		},
		"lensScaleRawEncoderLimitsFL": {
			"title": "Lens Scale Raw Encoder Focal Length Limits",
			"description": "Limits of the raw encoder values for the focal length axis of the lens",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum raw encoder value for the focal length axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum raw encoder value for the focal length axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensScaleRawEncoderLimitsFocus": {
			"title": "Lens Scale Raw Encoder Focus Limits",
			"description": "Limits of the raw encoder values for the focus axis of the lens",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum raw encoder value for the focus axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum raw encoder value for the focus axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensScaleRawEncoderLimitsIris": {
			"title": "Lens Scale Raw Encoder Iris Limits",
			"description": "Limits of the raw encoder values for the iris axis of the lens",
			"type": "object",
			"properties": {
				"max": {
					"title": "Maximum",
					"description": "Maximum raw encoder value for the iris axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				},
				"min": {
					"title": "Minimum",
					"description": "Minimum raw encoder value for the iris axis",
					"type": "integer",
					"oneOf": [
						{
							"description": "raw value",
							"type": "integer",
							"minimum": 0
						},
						{
							"description": "not available",
							"type": "integer",
							"const": -1
						}
					]
				}
			},
			"required": [
				"min",
				"max"
			]
		},
		"lensScaleRawEncoderSource": {
			"title": "Lens Scale Raw Encoder Source",
			"description": "Lens encoder type",
			"type": "string",
			"oneOf": [
				{
					"type": "string",
					"const": "LDS"
				},
				{
					"type": "string",
					"const": "ENG"
				}
			]
		},
		"lensSerialNumber": {
			"title": "Lens Serial Number",
			"description": "Serial number of the lens",
			"type": "string"
		},
		"lensSqueezeFactor": {
			"title": "Lens Squeeze Factor",
			"description": "Anamorphic squeeze factor of the lens",
			"type": "string",
			"pattern": "^[+\\-]?\\d+/\\d+$"
		},
		"lensType": {
			"title": "Lens Type",
			"description": "Type of the lens",
			"type": "string",
			"oneOf": [
				{
					"type": "string",
					"const": "prime"
				},
				{
					"type": "string",
					"const": "zoom"
				}
			]
		},
		"shimThickness": {
			"title": "Lens Shim Thickness",
			"description": "The shim thickness of the lens in mm",
			"type": "number",
			"minimum": 0
		}
	}
}