2024-12-05 17:29:03 +07:00

147 lines
2.8 KiB
JSON

{
"$id": "https://better-xcloud.github.io/schemas/device.json",
"$schema": "https://json-schema.org/draft/2019-09/schema",
"title": "Better xCloud: Device Schema",
"description": "",
"$defs": {
"EnumDeviceType": {
"enum": [
"android",
"android-tv",
"android-handheld",
"webos"
]
},
"EnumProfile": {
"enum": [
"lowest",
"highest"
]
},
"EnumStreamResolution": {
"enum": [
"default",
"720p",
"1080p",
"1080p-hq"
]
},
"EnumStreamCodecProfile": {
"enum": [
"default",
"low",
"normal",
"high"
]
},
"EnumVideoPlayer": {
"enum": [
"default",
"webgl",
"webgl2"
]
},
"EnumVideoPowerPreference": {
"enum": [
"default",
"low-power",
"high-performance"
]
},
"EnumVideoProcessing": {
"enum": [
"usm",
"cas"
]
}
},
"type": "object",
"additionalProperties": false,
"properties": {
"schema_version": {
"type": "number"
},
"device_name": {
"type": "string"
},
"device_type": {
"type": "string"
},
"settings": {
"type": "object",
"additionalProperties": false,
"properties": {
"app": {
"type": "object",
"additionalProperties": false
},
"script": {
"type": "object",
"additionalProperties": false,
"properties": {
"_base": {
"anyOf": [
{
"$ref": "#/$defs/EnumProfile"
},
{
"type": "array",
"items": {
"$ref": "#/$defs/EnumProfile"
}
}
]
},
"stream.video.resolution": {
"$ref": "#/$defs/EnumStreamResolution"
},
"stream.video.codecProfile": {
"$ref": "#/$defs/EnumStreamCodecProfile"
},
"stream.video.maxBitrate": {
"type": "number"
},
"video.player.type": {
"$ref": "#/$defs/EnumVideoPlayer"
},
"video.player.powerPreference": {
"$ref": "#/$defs/EnumVideoPowerPreference"
},
"video.processing": {
"$ref": "#/$defs/EnumVideoProcessing"
},
"video.processing.sharpness": {
"type": "number"
}
}
}
},
"required": [
"script"
]
}
},
"required": [
"schema_version",
"device_name",
"device_type",
"settings"
]
}