Skip to main content

Crate gled_core

Crate gled_core 

Source
Expand description

gled without a user interface: the engine that owns the running show, and everything it drives. Inputs (keys from clients, gamepads, Art-Net, OSC, MIDI, audio), Ableton Link timing, the render thread and the Art-Net/DMX output, the asset repository, and the patch’s lamp layout. The desktop app runs it in-process; gled-server runs it headless.

Modules§

engine
The engine: the one place that owns the running show. It holds the authoritative project, applies actions from the user interfaces, OSC, MIDI and Art-Net, evaluates the inputs, keeps time with Ableton Link, drives the render thread and the audio analysis, and publishes its state to every connected user interface.
gpu_choice
Choosing the GPU: on a machine with several (an integrated and a discrete one, or one through several drivers), gled measures each once and keeps the fastest that works. The choice is cached per set of GPUs, so it is measured again only when the hardware or the drivers change.
paths
Where gled keeps its files. The desktop app uses the user’s directories; the server is given one data directory and keeps everything below it.
runtime
The engine’s machinery: Link timing, the render thread and the machine-local settings.
start
Starting gled without a user interface: the background services first, then the engine once a GPU adapter is known. The desktop app gets its adapter from the window; the server opens one headless.