From c677a42a74e2c4b04b17b6e509805b2b4de0882d Mon Sep 17 00:00:00 2001 From: Paulchen-Panther Date: Sat, 16 Jul 2016 20:33:09 +0200 Subject: [PATCH] Update hyperion.schema.json --- libsrc/hyperion/hyperion.schema.json | 1255 ++++++++++++++++++-------- 1 file changed, 871 insertions(+), 384 deletions(-) diff --git a/libsrc/hyperion/hyperion.schema.json b/libsrc/hyperion/hyperion.schema.json index a6ac6987..7cd89447 100644 --- a/libsrc/hyperion/hyperion.schema.json +++ b/libsrc/hyperion/hyperion.schema.json @@ -1,386 +1,873 @@ { - "type" : "object", - "required" : true, - "properties" : { - "device" : { - "type" : "object", - "required" : true, - "properties" : { - "name" : { - "type" : "string", - "required" : true - }, - "type" : { - "type" : "string", - "required" : true - }, - "output" : { - "type" : "string", - "required" : true - }, - "rate" : { - "type" : "integer", - "required" : true, - "minimum" : 0 - }, - "colorOrder" : { - "type" : "string", - "required" : false - }, - "bgr-output" : { // deprecated - "type" : "boolean", - "required" : false - } - }, - "additionalProperties" : false - }, - "color": { - "type":"object", - "required":false, - "properties": { - "hsv" : { - "type" : "object", - "required" : false, - "properties" : { - "saturationGain" : { - "type" : "number", - "required" : false, - "minimum" : 0.0 - }, - "valueGain" : { - "type" : "number", - "required" : false, - "minimum" : 0.0 - } - }, - "additionalProperties" : false - }, - "hsl" : { - "type" : "object", - "required" : false, - "properties" : { - "saturationGain" : { - "type" : "number", - "required" : false, - "minimum" : 0.0 - }, - "luminanceGain" : { - "type" : "number", - "required" : false, - "minimum" : 0.0 - }, - "luminanceMinimum" : { - "type" : "number", - "required" : false, - "minimum" : 0.0 - } - }, - "additionalProperties" : false - }, - "red": { - "type":"object", - "required":false, - "properties":{ - "gamma": { - "type":"number", - "required":false - }, - "blacklevel": { - "type":"number", - "required":false - }, - "whitelevel": { - "type":"number", - "required":false - }, - "threshold": { - "type":"number", - "required":false, - "minimum" : 0.0, - "maximum" : 1.0 - } - }, - "additionalProperties" : false - }, - "green": { - "type":"object", - "required":false, - "properties":{ - "gamma": { - "type":"number", - "required":false - }, - "blacklevel": { - "type":"number", - "required":false - }, - "whitelevel": { - "type":"number", - "required":false - }, - "threshold": { - "type":"number", - "required":false, - "minimum" : 0.0, - "maximum" : 1.0 - } - }, - "additionalProperties" : false - }, - "blue": { - "type":"object", - "required":false, - "properties":{ - "gamma": { - "type":"number", - "required":false - }, - "whitelevel": { - "type":"number", - "required":false - }, - "blacklevel": { - "type":"number", - "required":false - }, - "threshold": { - "type":"number", - "required":false, - "minimum" : 0.0, - "maximum" : 1.0 - } - }, - "additionalProperties" : false - }, - "smoothing" : { - "type" : "object", - "required" : false, - "properties" : { - "type" : { - "type" : "enum", - "required" : true, - "values" : ["none", "linear"] - }, - "time_ms" : { - "type" : "integer", - "required" : false, - "minimum" : 10 - }, - "updateFrequency" : { - "type" : "number", - "required" : false, - "minimum" : 0.001 - } - }, - "additionalProperties" : false - } - - }, - "additionalProperties" : false - }, - "leds": { - "type":"array", - "required":true, - "items": { - "type":"object", - "properties": { - "index": { - "type":"integer", - "required":true - }, - "hscan": { - "type":"object", - "required":true, - "properties": { - "minimum": { - "type":"number", - "required":true - }, - "maximum": { - "type":"number", - "required":true - } - }, - "additionalProperties" : false - }, - "vscan": { - "type":"object", - "required":true, - "properties": { - "minimum": { - "type":"number", - "required":true - }, - "maximum": { - "type":"number", - "required":true - } - }, - "additionalProperties" : false - }, - "colorOrder" : { - "type" : "string", - "required" : false - } - }, - "additionalProperties" : false - } - }, - "effects" : - { - "type" : "object", - "required" : false, - "properties" : { - "paths" : { - "type" : "array", - "required" : false, - "items" : { - "type" : "string" - } - } - }, - "additionalProperties" : false - }, - "blackborderdetector" : - { - "type" : "object", - "required" : false, - "properties" : { - "enable" : { - "type" : "boolean", - "required" : true - }, - "threshold" : { - "type" : "number", - "required" : false, - "minimum" : 0.0, - "maximum" : 1.0 - } - }, - "additionalProperties" : false - }, - "kodiVideoChecker" : - { - "type" : "object", - "required" : false, - "properties" : { - "kodiAddress" : { - "type" : "string", - "required" : true - }, - "kodiTcpPort" : { - "type" : "integer", - "required" : true - }, - "grabVideo" : { - "type" : "boolean", - "required" : true - }, - "grabPictures" : { - "type" : "boolean", - "required" : true - }, - "grabAudio" : { - "type" : "boolean", - "required" : true - }, - "grabMenu" : { - "type" : "boolean", - "required" : true - }, - "grabPause" : { - "type" : "boolean", - "required" : false - }, - "grabScreensaver" : { - "type" : "boolean", - "required" : false - }, - "enable3DDetection" : { - "type" : "boolean", - "required" : false - } - }, - "additionalProperties" : false - }, - "bootsequence" : - { - "type" : "object", - "required" : false, - "properties" : { - "path" : { - "type" : "string", - "required" : true - }, - "effect" : { - "type" : "string", - "required" : true - } - }, - "additionalProperties" : false - }, - "framegrabber" : - { - "type" : "object", - "required" : false, - "properties" : { - "width" : { - "type" : "integer", - "required" : true - }, - "height" : { - "type" : "integer", - "required" : true - }, - "frequency_Hz" : { - "type" : "integer", - "required" : true - } - }, - "additionalProperties" : false - }, - "jsonServer" : - { - "type" : "object", - "required" : false, - "properties" : { - "port" : { - "type" : "integer", - "required" : true, - "minimum" : 0, - "maximum" : 65535 - } - }, - "additionalProperties" : false - }, - "protoServer" : - { - "type" : "object", - "required" : false, - "properties" : { - "port" : { - "type" : "integer", - "required" : true, - "minimum" : 0, - "maximum" : 65535 - } - }, - "additionalProperties" : false - }, - "boblightServer" : - { - "type" : "object", - "required" : false, - "properties" : { - "port" : { - "type" : "integer", - "required" : true, - "minimum" : 0, - "maximum" : 65535 - } - }, - "additionalProperties" : false - } - }, - "additionalProperties" : false + "type" : "object", + "required" : true, + "properties" : + { + "logger" : + { + "type" : "object", + "required" : true, + "properties" : + { + "level" : + { + "type" : "string", + "required" : true + } + }, + "additionalProperties" : false + }, + "device" : + { + "type" : "object", + "required" : true, + "properties" : + { + "name" : + { + "type" : "string", + "required" : true + }, + "type" : + { + "type" : "string", + "required" : true + }, + "output" : + { + "type" : "string", + "required" : true + }, + "rate" : + { + "type" : "integer", + "required" : false, + "minimum" : 0 + }, + "colorOrder" : + { + "type" : "string", + "required" : false + } + }, + "additionalProperties" : false + }, + "color" : + { + "type":"object", + "required" : true, + "properties": + { + "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" : + { + "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" : + { + "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 + } + }, + "smoothing": + { + "type" : "object", + "required" : true, + "properties" : + { + "enable" : + { + "type" : "boolean", + "required" : true + }, + "type" : + { + "enum" : ["none", "linear"], + "required" : true + }, + "time_ms" : + { + "type" : "integer", + "required" : false, + "minimum" : 25, + "maximum": 600 + }, + "updateFrequency" : + { + "type" : "number", + "required" : false, + "minimum" : 1.000, + "maximum": 100.000 + }, + "updateDelay" : + { + "type" : "integer", + "required" : false, + "minimum" : 0, + "maximum": 2048 + }, + "continuousOutput" : + { + "type" : "boolean", + "required" : false + } + }, + "additionalProperties" : false + } + }, + "additionalProperties" : false + }, + "grabber-v4l2" : + { + "type" : "object", + "required" : false, + "properties" : + { + "enable" : + { + "type" : "boolean", + "required" : true + }, + "device" : + { + "type" : "string", + "required" : true + }, + "input" : + { + "type" : "integer", + "required" : true + }, + "standard" : + { + "type" : "string", + "required" : true + }, + "width" : + { + "type" : "integer", + "required" : true + }, + "height" : + { + "type" : "integer", + "required" : true + }, + "frameDecimation" : + { + "type" : "integer", + "required" : true + }, + "sizeDecimation" : + { + "type" : "integer", + "required" : true + }, + "priority" : + { + "type" : "integer", + "required" : true + }, + "mode" : + { + "type" : "string", + "required" : true + }, + "cropLeft" : + { + "type" : "integer", + "required" : true + }, + "cropRight" : + { + "type" : "integer", + "required" : true + }, + "cropTop" : + { + "type" : "integer", + "required" : true + }, + "cropBottom" : + { + "type" : "integer", + "required" : true + }, + "redSignalThreshold" : + { + "type" : "number", + "required" : true + }, + "greenSignalThreshold" : + { + "type" : "number", + "required" : true + }, + "blueSignalThreshold" : + { + "type" : "number", + "required" : true + } + }, + "additionalProperties" : false + }, + "framegrabber" : + { + "type" : "object", + "required" : false, + "properties" : + { + "enable" : + { + "type" : "boolean", + "required" : true + }, + "width" : + { + "type" : "integer", + "required" : true + }, + "height" : + { + "type" : "integer", + "required" : true + }, + "frequency_Hz" : + { + "type" : "integer", + "required" : true + }, + "priority" : + { + "type" : "integer", + "required" : true + } + }, + "additionalProperties" : false + }, + "blackborderdetector" : + { + "type" : "object", + "required" : true, + "properties" : + { + "enable" : + { + "type" : "boolean", + "required" : true + }, + "threshold" : + { + "type" : "number", + "required" : true, + "minimum" : 0.0, + "maximum" : 1.0 + }, + "mode" : + { + "type" : "string", + "required" : true + } + }, + "additionalProperties" : false + }, + "kodiVideoChecker" : + { + "type" : "object", + "required" : true, + "properties" : + { + "enable" : + { + "type" : "boolean", + "required" : true + }, + "kodiAddress" : + { + "type" : "string", + "required" : true + }, + "kodiTcpPort" : + { + "type" : "integer", + "required" : true + }, + "grabVideo" : + { + "type" : "boolean", + "required" : true + }, + "grabPictures" : + { + "type" : "boolean", + "required" : true + }, + "grabAudio" : + { + "type" : "boolean", + "required" : true + }, + "grabMenu" : + { + "type" : "boolean", + "required" : true + }, + "grabPause" : + { + "type" : "boolean", + "required" : true + }, + "grabScreensaver" : + { + "type" : "boolean", + "required" : true + }, + "enable3DDetection" : + { + "type" : "boolean", + "required" : true + } + }, + "additionalProperties" : false + }, + "initialEffect" : + { + "type" : "object", + "required" : false, + "properties" : + { + "background-effect" : + { + "type" : "string", + "required" : false + }, + "background-effect-args" : + { + "type" : "object", + "required" : false + }, + "foreground-effect" : + { + "type" : "string", + "required" : false + }, + "foreground-effect-args" : + { + "type" : "object", + "required" : false + }, + "foreground-duration_ms" : + { + "type" : "integer", + "required" : false + } + }, + "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, + "properties" : + { + "port" : + { + "type" : "integer", + "required" : true, + "minimum" : 0, + "maximum" : 65535 + } + }, + "additionalProperties" : false + }, + "protoServer" : + { + "type" : "object", + "required" : true, + "properties" : + { + "port" : + { + "type" : "integer", + "required" : true, + "minimum" : 0, + "maximum" : 65535 + } + }, + "additionalProperties" : false + }, + "boblightServer" : + { + "type" : "object", + "required" : true, + "properties" : + { + "enable" : + { + "type" : "boolean", + "required" : true + }, + "port" : + { + "type" : "integer", + "required" : true, + "minimum" : 0, + "maximum" : 65535 + }, + "priority" : + { + "type" : "integer", + "required" : true + } + }, + "additionalProperties" : false + }, + "udpListener" : + { + "type" : "object", + "required" : true, + "properties" : + { + "enable" : + { + "type" : "boolean", + "required" : true + }, + "address" : + { + "type" : "string", + "required" : true + }, + "port" : + { + "type" : "integer", + "required" : true, + "minimum" : 0, + "maximum" : 65535 + }, + "priority" : + { + "type" : "integer", + "required" : true + }, + "timeout" : + { + "type" : "integer", + "required" : true + }, + "shared" : + { + "type" : "boolean", + "required" : true + } + }, + "additionalProperties" : false + }, + "webConfig" : + { + "type" : "object", + "required" : true, + "properties" : + { + "enable" : + { + "type" : "boolean", + "required" : true + }, + "document_root" : + { + "type" : "string", + "required" : true + }, + "port" : + { + "type" : "integer", + "required" : true + } + }, + "additionalProperties" : false + }, + "effects" : + { + "type" : "object", + "required" : false, + "properties" : + { + "paths" : + { + "type" : "array", + "required" : false + } + }, + "additionalProperties" : false + }, + "leds": + { + "type":"array", + "required":true, + "items": + { + "type":"object", + "properties": + { + "index": + { + "type":"integer", + "required":true + }, + "hscan": + { + "type":"object", + "required":true, + "properties": + { + "minimum": + { + "type":"number", + "required":true + }, + "maximum": + { + "type":"number", + "required":true + } + }, + "additionalProperties" : false + }, + "vscan": + { + "type":"object", + "required":true, + "properties": + { + "minimum": + { + "type":"number", + "required":true + }, + "maximum": + { + "type":"number", + "required":true + } + }, + "additionalProperties" : false + }, + "colorOrder": + { + "type":"string", + "required":false + } + }, + "additionalProperties" : false + } + }, + "endOfJson" : + { + "type" : "string", + "required" : false + } + }, + "additionalProperties" : false }