hyperion.ng/libsrc/hyperion/hyperion.schema.json
2016-08-31 18:03:53 +02:00

929 lines
15 KiB
JSON

{
"type" : "object",
"required" : true,
"properties" :
{
"logger" :
{
"type" : "object",
"title" : "Logging",
"properties" :
{
"level" :
{
"type" : "string",
"enum" : ["silent", "warn", "verbose", "debug"],
"title" : "Log-Level"
}
},
"additionalProperties" : false
},
"device" :
{
"type" : "object",
"required" : true,
"properties" :
{
"name" :
{
"type" : "string",
"required" : true
},
"type" :
{
"type" : "string",
"required" : true
},
"output" :
{
"type" : "string"
},
"rate" :
{
"type" : "integer",
"minimum" : 0
},
"colorOrder" :
{
"type" : "string",
"enum" : ["rgb", "bgr", "rbg", "brg", "gbr", "grb"]
}
},
"additionalProperties" : true
},
"color" :
{
"type":"object",
"required" : true,
"properties":
{
"channelAdjustment_enable" :
{
"type" : "boolean"
},
"channelAdjustment" :
{
"type" : "array",
"required" : true,
"items" :
{
"type" : "object",
"required" : true,
"properties" :
{
"id" :
{
"type" : "string",
"required" : true
},
"leds" :
{
"type" : "string",
"required" : true
},
"pureRed" :
{
"type":"object",
"required" : true,
"properties":
{
"redChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
},
"greenChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
},
"blueChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
}
},
"additionalProperties" : false
},
"pureGreen" :
{
"type":"object",
"required" : true,
"properties":
{
"redChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
},
"greenChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
},
"blueChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
}
},
"additionalProperties" : false
},
"pureBlue" :
{
"type":"object",
"required" : true,
"properties":
{
"redChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
},
"greenChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
},
"blueChannel" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
}
},
"additionalProperties" : false
}
},
"additionalProperties" : false
}
},
"temperature_enable" :
{
"type" : "boolean"
},
"temperature" :
{
"type" : "array",
"required" : true,
"items" :
{
"type" : "object",
"required" : true,
"properties" :
{
"id" :
{
"type" : "string",
"required" : true
},
"leds" :
{
"type" : "string",
"required" : true
},
"correctionValues" :
{
"type":"object",
"required" : true,
"properties":
{
"red" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
},
"green" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
},
"blue" :
{
"type": "integer",
"required" : true,
"minimum": 0,
"maximum": 255
}
},
"additionalProperties" : false
}
},
"additionalProperties" : false
}
},
"transform_enable" :
{
"type" : "boolean"
},
"transform" :
{
"type" : "array",
"required" : true,
"items" :
{
"type" : "object",
"required" : true,
"properties" :
{
"id" :
{
"type" : "string",
"required" : true
},
"leds" :
{
"type" : "string",
"required" : true
},
"hsl" :
{
"type":"object",
"required" : true,
"properties":
{
"saturationGain" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0
},
"luminanceGain" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0
},
"luminanceMinimum" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0
}
},
"additionalProperties" : false
},
"red" :
{
"type":"object",
"required" : true,
"properties":
{
"threshold" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0,
"maximum": 1.0
},
"gamma" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0,
"maximum": 100.0
}
},
"additionalProperties" : false
},
"green" :
{
"type":"object",
"required" : true,
"properties":
{
"threshold" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0,
"maximum": 1.0
},
"gamma" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0,
"maximum": 100.0
}
},
"additionalProperties" : false
},
"blue" :
{
"type":"object",
"required" : true,
"properties":
{
"threshold" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0,
"maximum": 1.0
},
"gamma" :
{
"type" : "number",
"required" : true,
"minimum" : 0.0,
"maximum": 100.0
}
},
"additionalProperties" : false
}
},
"additionalProperties" : false
}
}
},
"additionalProperties" : false
},
"smoothing":
{
"type" : "object",
"properties" :
{
"enable" :
{
"type" : "boolean"
},
"type" :
{
"enum" : ["linear"]
},
"time_ms" :
{
"type" : "integer",
"minimum" : 25,
"maximum": 600
},
"updateFrequency" :
{
"type" : "number",
"minimum" : 1.000,
"maximum": 100.000
},
"updateDelay" :
{
"type" : "integer",
"minimum" : 0,
"maximum": 2048
},
"continuousOutput" :
{
"type" : "boolean"
}
},
"additionalProperties" : false
},
"grabber-v4l2" :
{
"type":"array",
"items":
{
"type" : "object",
"properties" :
{
"enable" :
{
"type" : "boolean"
},
"device" :
{
"type" : "string"
},
"input" :
{
"type" : "integer"
},
"standard" :
{
"type" : "string"
},
"width" :
{
"type" : "integer"
},
"height" :
{
"type" : "integer"
},
"frameDecimation" :
{
"type" : "integer"
},
"sizeDecimation" :
{
"type" : "integer"
},
"priority" :
{
"type" : "integer"
},
"mode" :
{
"type" : "string"
},
"useKodiChecker" :
{
"type" : "boolean"
},
"cropLeft" :
{
"type" : "integer"
},
"cropRight" :
{
"type" : "integer"
},
"cropTop" :
{
"type" : "integer"
},
"cropBottom" :
{
"type" : "integer"
},
"redSignalThreshold" :
{
"type" : "number"
},
"greenSignalThreshold" :
{
"type" : "number"
},
"blueSignalThreshold" :
{
"type" : "number"
}
},
"additionalProperties" : false
}
},
"framegrabber" :
{
"type" : "object",
"properties" :
{
"enable" :
{
"type" : "boolean"
},
"type" :
{
"type" : "string"
},
"width" :
{
"type" : "integer"
},
"height" :
{
"type" : "integer"
},
"frequency_Hz" :
{
"type" : "integer",
"minimum" : 0
},
"priority" :
{
"type" : "integer"
},
"cropLeft" :
{
"type" : "integer",
"minimum" : 0
},
"cropRight" :
{
"type" : "integer",
"minimum" : 0
},
"cropTop" :
{
"type" : "integer",
"minimum" : 0
},
"cropBottom" :
{
"type" : "integer",
"minimum" : 0
},
"useXGetImage" :
{
"type" : "boolean"
},
"horizontalPixelDecimation" :
{
"type" : "integer",
"minimum" : 0
},
"verticalPixelDecimation" :
{
"type" : "integer",
"minimum" : 0
},
"device" :
{
"type" : "string"
},
"display" :
{
"type" : "integer",
"minimum" : 0
}
},
"additionalProperties" : false
},
"blackborderdetector" :
{
"type" : "object",
"properties" :
{
"enable" :
{
"type" : "boolean"
},
"threshold" :
{
"type" : "number",
"minimum" : 0.0,
"maximum" : 1.0
},
"unknownFrameCnt" :
{
"type" : "number",
"minimum" : 0
},
"borderFrameCnt" :
{
"type" : "number",
"minimum" : 0
},
"maxInconsistentCnt" :
{
"type" : "number",
"minimum" : 0
},
"blurRemoveCnt" :
{
"type" : "number",
"minimum" : 0
},
"mode" :
{
"type" :
{
"enum" : ["default", "classic", "osd"]
}
}
},
"additionalProperties" : false
},
"kodiVideoChecker" :
{
"type" : "object",
"properties" :
{
"enable" :
{
"type" : "boolean"
},
"kodiAddress" :
{
"type" : "string"
},
"kodiTcpPort" :
{
"type" : "integer"
},
"grabVideo" :
{
"type" : "boolean"
},
"grabPictures" :
{
"type" : "boolean"
},
"grabAudio" :
{
"type" : "boolean"
},
"grabMenu" :
{
"type" : "boolean"
},
"grabPause" :
{
"type" : "boolean"
},
"grabScreensaver" :
{
"type" : "boolean"
},
"enable3DDetection" :
{
"type" : "boolean"
}
},
"additionalProperties" : false
},
"initialEffect" :
{
"type" : "object",
"properties" :
{
"background-effect" :
{
"type" : "array"
},
"background-effect-args" :
{
"type" : "object"
},
"foreground-effect" :
{
"type" : "array"
},
"foreground-effect-args" :
{
"type" : "object"
},
"foreground-duration_ms" :
{
"type" : "integer"
}
},
"additionalProperties" : false
},
"forwarder" :
{
"type" : "object",
"required" : true,
"properties" :
{
"enable" :
{
"type" : "boolean",
"required" : true
},
"json" :
{
"type" : "array",
"required" : true
},
"proto" :
{
"type" : "array",
"required" : true
}
},
"additionalProperties" : false
},
"jsonServer" :
{
"type" : "object",
"required" : true,
"title" : "JSON Server",
"properties" :
{
"port" :
{
"type" : "integer",
"required" : true,
"title" : "Port",
"minimum" : 0,
"maximum" : 65535
}
},
"additionalProperties" : false
},
"protoServer" :
{
"type" : "object",
"required" : true,
"title" : "Proto Server",
"properties" :
{
"port" :
{
"type" : "integer",
"required" : true,
"title" : "Port",
"minimum" : 0,
"maximum" : 65535
}
},
"additionalProperties" : false
},
"boblightServer" :
{
"type" : "object",
"title" : "Boblight Server",
"properties" :
{
"enable" :
{
"type" : "boolean",
"format": "checkbox",
"title" : "Activate"
},
"port" :
{
"type" : "integer",
"required" : true,
"title" : "Port",
"minimum" : 0,
"maximum" : 65535
},
"priority" :
{
"type" : "integer",
"title" : "Priority"
}
},
"additionalProperties" : false
},
"udpListener" :
{
"type" : "object",
"title" : "UDP Listener",
"properties" :
{
"enable" :
{
"type" : "boolean",
"format": "checkbox",
"title" : "Activate"
},
"address" :
{
"type" : "string",
"title" : "Address",
"required" : true
},
"port" :
{
"type" : "integer",
"title" : "Port",
"minimum" : 0,
"maximum" : 65535
},
"priority" :
{
"type" : "integer",
"title" : "Priority"
},
"timeout" :
{
"type" : "integer",
"title" : "Timeout"
},
"shared" :
{
"type" : "boolean",
"format": "checkbox",
"title" : "Shared"
}
},
"additionalProperties" : false
},
"webConfig" :
{
"type" : "object",
"title" : "WebUI - DANGER CHANGES CAN MAKE THE WEBUI UNREACHABLE!",
"required" : true,
"properties" :
{
"enable" :
{
"type" : "boolean",
"format": "checkbox",
"title" : "Activate",
"required" : true
},
"document_root" :
{
"type" : "string",
"title" : "Document Root",
"required" : true
},
"port" :
{
"type" : "integer",
"title" : "Port",
"required" : true
}
},
"additionalProperties" : false
},
"effects" :
{
"type" : "object",
"properties" :
{
"paths" :
{
"type" : "array"
}
},
"additionalProperties" : false
},
"leds":
{
"type":"array",
"required":true,
"items":
{
"type":"object",
"properties":
{
"index":
{
"type":"integer",
"required":true
},
"clone":
{
"type":"integer"
},
"hscan":
{
"type":"object",
"properties":
{
"minimum":
{
"type":"number",
"minimum" : 0,
"maximum" : 1,
"required":true
},
"maximum":
{
"type":"number",
"minimum" : 0,
"maximum" : 1,
"required":true
}
},
"additionalProperties" : false
},
"vscan":
{
"type":"object",
"properties":
{
"minimum":
{
"type":"number",
"minimum" : 0,
"maximum" : 1,
"required":true
},
"maximum":
{
"type":"number",
"minimum" : 0,
"maximum" : 1,
"required":true
}
},
"additionalProperties" : false
},
"colorOrder":
{
"type": "string",
"enum" : ["bgr", "rbg", "brg", "gbr", "grb"]
}
},
"additionalProperties" : false
}
}
},
"additionalProperties" : false
}