Page:
Runtime Host Configuration
Pages
Home
Making Shaders
OSC Control
Operator Interface
REST API
Runtime Host Configuration
Shader 3D LUT Apply
Shader Anamorphic Desqueeze
Shader Balatro Swirl
Shader Black and White
Shader Broken Shader Example
Shader Composition Guides
Shader DVD Bounce
Shader Data Mosh
Shader Ether
Shader False Color
Shader Fisheye Equirectangular Mirror
Shader Fisheye Reproject
Shader Gaussian Blur
Shader Greenscreen Key
Shader Happy Accident
Shader Lift Gamma Gain
Shader Multipass Test
Shader Pixelate
Shader SMPTE Color Bars
Shader Safe Area Guides
Shader Singularity
Shader Solid Color
Shader Temporal Echo
Shader Temporal Ghost Trail
Shader Temporal Low FPS
Shader Text Overlay
Shader Trigger Ripple
Shader UTC Clock
Shader VHS
Shader Video Cube
Shader Video Transform
Shader Waveform Overlay
Shader XYLA Exposure Chart
Shaders
Clone
2
Runtime Host Configuration
Aiden edited this page 2026-05-08 19:03:26 +10:00
Table of Contents
Runtime Host Configuration
Runtime settings live in:
config/runtime-host.json
The default configuration is:
{
"shaderLibrary": "shaders",
"serverPort": 8080,
"oscPort": 9000,
"inputVideoFormat": "1080p",
"inputFrameRate": "59.94",
"outputVideoFormat": "1080p",
"outputFrameRate": "59.94",
"autoReload": true,
"maxTemporalHistoryFrames": 12,
"enableExternalKeying": true
}
Settings
| Setting | What It Does |
|---|---|
shaderLibrary |
Folder containing shader packages. Usually shaders. |
serverPort |
Preferred local HTTP control server port. The browser UI, REST API, Swagger docs, and WebSocket use this server. |
oscPort |
Local UDP port for OSC parameter control. Use 0 to disable OSC. |
inputVideoFormat |
Video capture format, such as 1080p or 720p. |
inputFrameRate |
Video capture frame rate, such as 59.94, 50, or 25. |
outputVideoFormat |
Video output/playout format. |
outputFrameRate |
Video output/playout frame rate. |
autoReload |
When true, shader manifests, shader source, and declared texture changes are reloaded automatically. |
maxTemporalHistoryFrames |
Upper limit for temporal history buffers. Individual shaders can request fewer frames. |
enableExternalKeying |
Requests external keying when the DeckLink device and keyer path support it. |
Video Modes
The shader stack renders at the input resolution. The final rendered frame is then scaled once into the configured output mode.
Common examples include:
720p / 50
720p / 59.94
1080i / 50
1080i / 59.94
1080p / 25
1080p / 50
1080p / 59.94
2160p / 59.94
Actual availability depends on the active video I/O backend, installed card, driver, and signal path. The current production backend is DeckLink.
Legacy Keys
Older configs may use:
{
"videoFormat": "1080p",
"frameRate": "59.94"
}
Those keys are still accepted. They apply to both input and output unless the newer explicit input/output keys are present.
Practical Advice
- Keep
autoReloadon while developing shaders. - Keep
maxTemporalHistoryFramesmodest during live work; temporal history consumes texture memory. - Set
oscPortto0if you do not need OSC and want fewer moving parts. - Use matching input and output modes when possible for the simplest signal path.
- If the UI cannot be reached on the expected port, check the runtime status for the actual bound port.
- When external keying is enabled and supported, shader alpha can drive the key signal.