hyperion.ng/libsrc/hyperion/hyperion.schema.json

1129 lines
21 KiB
JSON

{
"type" : "object",
"required" : true,
"properties" :
{
"logger" :
{
"type" : "object",
"title" : "Logging",
"properties" :
{
"level" :
{
"type" : "string",
"enum" : ["silent", "warn", "verbose", "debug"],
"title" : "Log-Level",
"default" : "warn"
}
},
"additionalProperties" : false
},
"device" :
{
"type" : "object",
"title" : "LED Device General",
"required" : true,
"defaultProperties": ["name","ledCount","colorOrder"],
"properties" :
{
"name" :
{
"type" : "string",
"title" : "Configuration name",
"required" : true,
"propertyOrder" : 1
},
"type" :
{
"type" : "string",
"required" : true
},
"ledCount" :
{
"type" : "integer",
"minimum" : 0,
"title" : "Count of all hardware LEDs",
"propertyOrder" : 2
},
"colorOrder" :
{
"type" : "string",
"title" : "RGB byte order",
"enum" : ["rgb", "bgr", "rbg", "brg", "gbr", "grb"],
"propertyOrder" : 3
}
},
"additionalProperties" : true
},
"color" :
{
"type":"object",
"title" : "Color Calibration",
"required" : true,
"defaultProperties": ["channelAdjustment_enable","channelAdjustment","transform_enable","transform"],
"properties":
{
"channelAdjustment_enable" :
{
"type" : "boolean",
"default" : true,
"propertyOrder" : 1
},
"channelAdjustment_v4l_only" :
{
"type" : "boolean",
"default" : false,
"propertyOrder" : 2
},
"channelAdjustment" :
{
"type" : "array",
"required" : true,
"propertyOrder" : 3,
"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
}
},
"transform_enable" :
{
"type" : "boolean",
"default" : true,
"propertyOrder" : 4
},
"transform_v4l_only" :
{
"type" : "boolean",
"default" : false,
"propertyOrder" : 5
},
"transform" :
{
"type" : "array",
"required" : true,
"propertyOrder" : 6,
"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",
"title" : "Smoothing",
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"default" : true,
"propertyOrder" : 1
},
"type" :
{
"type" : "string",
"title" : "Type",
"enum" : ["linear"],
"default" : "linear",
"propertyOrder" : 2
},
"time_ms" :
{
"type" : "integer",
"title" : "Time",
"minimum" : 25,
"maximum": 600,
"default" : 200,
"append" : "ms",
"propertyOrder" : 3
},
"updateFrequency" :
{
"type" : "number",
"title" : "Update frequency",
"minimum" : 1.000,
"maximum" : 100.000,
"default" : 25.000,
"append" : "Hz",
"propertyOrder" : 4
},
"updateDelay" :
{
"type" : "integer",
"title" : "Update delay",
"minimum" : 0,
"maximum": 2048,
"default" : 0,
"append" : "ms",
"propertyOrder" : 5
},
"continuousOutput" :
{
"type" : "boolean",
"title" : "Continuous output",
"default" : true,
"propertyOrder" : 6
}
},
"additionalProperties" : false
},
"grabberV4L2" :
{
"type":"array",
"title" : "USB Grabber",
"items":
{
"type" : "object",
"title" : "USB Grabber",
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"default" : false,
"propertyOrder" : 1
},
"device" :
{
"type" : "string",
"title" : "Device",
"default" : "auto",
"propertyOrder" : 2
},
"input" :
{
"type" : "integer",
"title" : "Input",
"default" : 0,
"propertyOrder" : 3
},
"standard" :
{
"type" : "string",
"title" : "Video standard",
"enum" : ["PAL","NTSC"],
"default" : "PAL",
"propertyOrder" : 4
},
"width" :
{
"type" : "integer",
"title" : "Width",
"default" : -1,
"append" : "Pixel",
"propertyOrder" : 5
},
"height" :
{
"type" : "integer",
"title" : "Height",
"default" : -1,
"append" : "Pixel",
"propertyOrder" : 6
},
"frameDecimation" :
{
"type" : "integer",
"title" : "Frame decimation",
"default" : 2,
"propertyOrder" : 7
},
"sizeDecimation" :
{
"type" : "integer",
"title" : "Size decimation",
"default" : 6,
"propertyOrder" : 8
},
"priority" :
{
"type" : "integer",
"title" : "Priority channel",
"default" : 900,
"propertyOrder" : 9
},
"mode" :
{
"type" : "string",
"title" : "Mode",
"enum" : ["2D","3DSBS","3DTAB"],
"default" : "2D",
"propertyOrder" : 10
},
"useKodiChecker" :
{
"type" : "boolean",
"title" : "Use Kodi Watch",
"default" : false,
"propertyOrder" : 11
},
"cropLeft" :
{
"type" : "integer",
"title" : "Crop left",
"minimum" : 0,
"default" : 0,
"append" : "Pixel",
"propertyOrder" : 12
},
"cropRight" :
{
"type" : "integer",
"title" : "Crop right",
"minimum" : 0,
"default" : 0,
"append" : "Pixel",
"propertyOrder" : 13
},
"cropTop" :
{
"type" : "integer",
"title" : "Crop top",
"minimum" : 0,
"default" : 0,
"append" : "Pixel",
"propertyOrder" : 14
},
"cropBottom" :
{
"type" : "integer",
"title" : "Crop bottom",
"minimum" : 0,
"default" : 0,
"append" : "Pixel",
"propertyOrder" : 15
},
"redSignalThreshold" :
{
"type" : "number",
"title" : "Red signal threshold",
"minimum" : 0.0,
"maximum" : 1.0,
"default" : 0.1,
"append" : "%",
"propertyOrder" : 16
},
"greenSignalThreshold" :
{
"type" : "number",
"title" : "Green signal threshold",
"minimum" : 0.0,
"maximum" : 1.0,
"default" : 0.1,
"append" : "%",
"propertyOrder" : 17
},
"blueSignalThreshold" :
{
"type" : "number",
"title" : "Blue signal threshold",
"minimum" : 0.0,
"maximum" : 1.0,
"default" : 0.1,
"append" : "%",
"propertyOrder" : 18
}
},
"additionalProperties" : false
}
},
"framegrabber" :
{
"type" : "object",
"title" : "Framegrabber",
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"default" : true,
"propertyOrder" : 1
},
"type" :
{
"type" : "string",
"title" : "Type",
"enum" : ["auto","dispmanx","amlogic","x11","framebuffer"],
"default" : "auto"
},
"width" :
{
"type" : "integer",
"title" : "Width",
"default" : 96,
"append" : "Pixel"
},
"height" :
{
"type" : "integer",
"title" : "Height",
"default" : 96,
"append" : "Pixel"
},
"frequency_Hz" :
{
"type" : "integer",
"title" : "Frequency",
"minimum" : 0,
"default" : 10,
"append" : "Hz"
},
"priority" :
{
"type" : "integer",
"title" : "Priority channel",
"minimum" : 0,
"default" : 890
},
"cropLeft" :
{
"type" : "integer",
"title" : "Crop left",
"minimum" : 0,
"default" : 0,
"append" : "Pixel"
},
"cropRight" :
{
"type" : "integer",
"title" : "Crop right",
"minimum" : 0,
"default" : 0,
"append" : "Pixel"
},
"cropTop" :
{
"type" : "integer",
"title" : "Crop top",
"minimum" : 0,
"default" : 0,
"append" : "Pixel"
},
"cropBottom" :
{
"type" : "integer",
"title" : "Crop bottom",
"minimum" : 0,
"default" : 0,
"append" : "Pixel"
},
"useXGetImage" :
{
"type" : "boolean",
"title" : "Use XGetImage",
"default" : false
},
"horizontalPixelDecimation" :
{
"type" : "integer",
"title" : "Horizontal pixel decimation",
"minimum" : 0,
"default" : 8
},
"verticalPixelDecimation" :
{
"type" : "integer",
"title" : "Vertical pixel decimation",
"minimum" : 0,
"default" : 8
},
"device" :
{
"type" : "string",
"title" : "Device",
"default" : "/dev/fb0"
},
"display" :
{
"type" : "integer",
"title" : "Display",
"minimum" : 0
}
},
"additionalProperties" : false
},
"blackborderdetector" :
{
"type" : "object",
"title" : "Blackbar detector",
"defaultProperties": ["enable","mode","threshold"],
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"default" : true,
"propertyOrder" : 1
},
"threshold" :
{
"type" : "number",
"title" : "Threshold",
"minimum" : 0.0,
"maximum" : 1.0,
"default" : 0.05,
"append" : "%",
"propertyOrder" : 2
},
"unknownFrameCnt" :
{
"type" : "integer",
"minimum" : 0,
"default" : 600,
"propertyOrder" : 3
},
"borderFrameCnt" :
{
"type" : "integer",
"minimum" : 0,
"default" : 50,
"propertyOrder" : 4
},
"maxInconsistentCnt" :
{
"type" : "integer",
"minimum" : 0,
"default" : 10,
"propertyOrder" : 5
},
"blurRemoveCnt" :
{
"type" : "integer",
"minimum" : 0,
"default" : 1,
"propertyOrder" : 6
},
"mode" :
{
"type" : "string",
"title": "Mode",
"enum" : ["default", "classic", "osd"],
"default" : "default",
"propertyOrder" : 7
}
},
"additionalProperties" : false
},
"kodiVideoChecker" :
{
"type" : "object",
"title" : "Kodi Watch",
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"default" : false,
"propertyOrder" : 1
},
"kodiAddress" :
{
"type" : "string",
"title" : "Kodi IP address",
"default" : "127.0.0.1",
"propertyOrder" : 2
},
"kodiTcpPort" :
{
"type" : "integer",
"title" : "Kodi TCP port",
"minimum" : 0,
"maximum" : 65535,
"default" : 9090,
"propertyOrder" : 3
},
"grabVideo" :
{
"type" : "boolean",
"title" : "Video",
"default" : true,
"propertyOrder" : 4
},
"grabPictures" :
{
"type" : "boolean",
"title" : "Pictures",
"default" : true,
"propertyOrder" : 5
},
"grabAudio" :
{
"type" : "boolean",
"title" : "Audio",
"default" : true,
"propertyOrder" : 6
},
"grabMenu" :
{
"type" : "boolean",
"title" : "Menu",
"default" : false,
"propertyOrder" : 7
},
"grabPause" :
{
"type" : "boolean",
"title" : "Pause",
"default" : false,
"propertyOrder" : 8
},
"grabScreensaver" :
{
"type" : "boolean",
"title" : "Screensaver",
"default" : false,
"propertyOrder" : 9
},
"enable3DDetection" :
{
"type" : "boolean",
"title" : "Detect 3D",
"default" : false,
"propertyOrder" : 10
}
},
"additionalProperties" : false
},
"initialEffect" :
{
"type" : "object",
"title" : "Initial Effect",
"defaultProperties": ["background-effect","foreground-effect","foreground-duration_ms"],
"properties" :
{
"background-effect" :
{
"type" : "array",
"title" : "Background effect",
"propertyOrder" : 3
},
"background-effect-args" :
{
"type" : "object",
"title" : "Background effect arguments"
},
"foreground-effect" :
{
"type" : "array",
"title" : "Boot effect",
"propertyOrder" : 1
},
"foreground-effect-args" :
{
"type" : "object",
"title" : "Boot effect arguments"
},
"foreground-duration_ms" :
{
"type" : "integer",
"title" : "Boot effect duration",
"propertyOrder" : 2
}
},
"additionalProperties" : false
},
"forwarder" :
{
"type" : "object",
"title" : "Forwarder",
"required" : true,
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"required" : true,
"propertyOrder" : 1
},
"json" :
{
"type" : "array",
"title" : "List of JSON clients",
"required" : true,
"propertyOrder" : 2
},
"proto" :
{
"type" : "array",
"title" : "List of PROTO clients",
"required" : true,
"propertyOrder" : 3
}
},
"additionalProperties" : false
},
"jsonServer" :
{
"type" : "object",
"required" : true,
"title" : "JSON Server",
"properties" :
{
"port" :
{
"type" : "integer",
"required" : true,
"title" : "Port",
"minimum" : 0,
"maximum" : 65535,
"default" : 19444
}
},
"additionalProperties" : false
},
"protoServer" :
{
"type" : "object",
"required" : true,
"title" : "Proto Server",
"properties" :
{
"port" :
{
"type" : "integer",
"required" : true,
"title" : "Port",
"minimum" : 0,
"maximum" : 65535,
"default" : 19445
}
},
"additionalProperties" : false
},
"boblightServer" :
{
"type" : "object",
"title" : "Boblight Server",
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"default" : false,
"propertyOrder" : 1
},
"port" :
{
"type" : "integer",
"required" : true,
"title" : "Port",
"minimum" : 0,
"maximum" : 65535,
"propertyOrder" : 2
},
"priority" :
{
"type" : "integer",
"title" : "Priority",
"minimum" : 0,
"default" : 800,
"propertyOrder" : 3
}
},
"additionalProperties" : false
},
"udpListener" :
{
"type" : "object",
"title" : "UDP Listener",
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"default" : false,
"propertyOrder" : 1
},
"address" :
{
"type" : "string",
"title" : "Address",
"default" : "239.255.28.01",
"required" : true,
"propertyOrder" : 2
},
"port" :
{
"type" : "integer",
"title" : "Port",
"minimum" : 0,
"maximum" : 65535,
"default" : 2801,
"propertyOrder" : 3
},
"priority" :
{
"type" : "integer",
"title" : "Priority",
"default" : 800,
"propertyOrder" : 4
},
"timeout" :
{
"type" : "integer",
"title" : "Timeout",
"default" : 10000,
"propertyOrder" : 5
},
"shared" :
{
"type" : "boolean",
"title" : "Shared",
"default" : false,
"propertyOrder" : 6
}
},
"additionalProperties" : false
},
"webConfig" :
{
"type" : "object",
"title" : "WebUI - DANGER CHANGES CAN MAKE THE WEBUI UNREACHABLE!",
"properties" :
{
"enable" :
{
"type" : "boolean",
"title" : "Activate",
"default" : true,
"propertyOrder" : 1
},
"document_root" :
{
"type" : "string",
"title" : "Document Root",
"propertyOrder" : 2
},
"port" :
{
"type" : "integer",
"title" : "Port",
"default" : 8099,
"propertyOrder" : 3
}
},
"additionalProperties" : false
},
"effects" :
{
"type" : "object",
"properties" :
{
"paths" :
{
"type" : "array",
"title" : "List of folders to additional effects",
"propertyOrder" : 1
},
"disable" :
{
"type" : "array",
"title" : "List of disabled effects",
"propertyOrder" : 2
}
},
"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" : ["rgb", "bgr", "rbg", "brg", "gbr", "grb"]
}
},
"additionalProperties" : false
}
}
},
"additionalProperties" : false
}