Expand description
LVQR server library entry point.
main.rs parses CLI args and hands off to start; tests and embedders
can call start directly with a pre-built ServeConfig. Every
listener (MoQ/QUIC, RTMP/TCP, admin/TCP) is bound inside start before
it returns, so callers who pass port: 0 can read the real bound
addresses back off the returned ServerHandle and point test clients
at them without polling.
This is the library target used by lvqr-test-utils::TestServer to
spin up a full-stack LVQR instance on ephemeral ports inside
integration tests.
Modules§
- cluster_
claim - Ingest auto-claim bridge (Tier 3 session F2c).
Structs§
- Latency
Tracker - Re-export of
lvqr_admin::LatencyTrackerso downstream callers (lvqr-test-utils, integration tests) do not need to pulllvqr-adminin as a direct dep. Tier 4 item 4.7 session A. Thread-safe latency SLO tracker. Cheap to clone (internal state is behindArc). - Serve
Config - Configuration passed to [
start] to bring up a full-stack LVQR server. - Server
Handle - Handle to a running LVQR server. Dropping the handle cancels the shared
shutdown token but does not block on subsystem drain; call
shutdownexplicitly in tests that need deterministic teardown before the next fixture starts. - SloEntry
- Re-export of
lvqr_admin::LatencyTrackerso downstream callers (lvqr-test-utils, integration tests) do not need to pulllvqr-adminin as a direct dep. Tier 4 item 4.7 session A. Per-broadcast + per-transport latency snapshot returned byLatencyTracker::snapshotand serialized on theGET /api/v1/sloroute.
Enums§
- Live
Scheme - Scheme tag for live-playback signed URLs. Renders lowercase on the
wire (
"hls"/"dash") so the signature input is stable across operator tooling written in any language.
Functions§
- sign_
live_ url - Generate a signed URL query suffix for a live HLS / DASH broadcast.
- sign_
playback_ url - Generate a signed playback URL query suffix for the operator’s
server-side helper code. Returns the full query string
"exp=<exp>&sig=<b64url>"that the caller concatenates after<request_path>?. The caller choosesexp_unix(typicallynow + share_duration); short-lived is preferred (minutes, not days). - start
- Start a full-stack LVQR server. All listeners are bound before the
function returns, so the
ServerHandleimmediately reports real addresses even when the config requested ephemeral ports.