Rust crates for Resolume Arena & Avenue REST API, WebSocket API, and OSC.
| Crate | Role |
|---|---|
resolume-core |
Sans-I/O JSON types, HTTP path builders, WebSocket message shapes (/api/v1). |
resolume-http |
Tokio reqwest + tokio-tungstenite client with a small high-level API. |
resolume-osc-core |
OSC packet building (via rosc), no_std + alloc. |
resolume-osc |
UDP send helpers (blocking and optional Tokio). |
A copy of the embedded Swagger document is stored as openapi/swagger.yaml (fetched from a running Arena web server at /api/docs/rest/swagger.yaml). Use it with code generators or as reference alongside testdata/ JSON samples.
# HTTP + composition (set base URL to your Resolume machine)
cargo run -p resolume-http --example composition -- http://192.168.1.3:8080
# WebSocket: read initial messages; optional RESOLUME_PARAM_ID or RESOLUME_PARAM_PATH
RESOLUME_PARAM_ID=1775128064770 cargo run -p resolume-http --example websocket_params -- http://192.168.1.3:8080
# OSC (default Resolume input port 7000)
cargo run -p resolume-osc --example send_opacity -- 192.168.1.3:7000
cargo run -p resolume-osc --example send_opacity_tokio -- 192.168.1.3:7000cargo test
# Optional: hit a live HTTP API (default base `http://192.168.1.3:8080`)
cargo test -p resolume-http --test live_resolume -- --ignoredLicensed under either of Apache License, Version 2.0 or MIT license at your option.