NDI
Planned · Network ingest fabric · reach: direct · meters at $0.005/min. WAN-reachable (reach: direct) — an encoder/publisher hits a hosted *.wave.online edge worker directly. Also the bridge TARGETS that LAN fabrics convert to.
NDI is the de-facto standard for high-quality, low-latency video over IP inside production facilities. NDI has dual reach: an NDI-over-WAN sender can hit the hosted edge directly, and an on-prem NDI source (discovered on the facility LAN) can be picked up by a WAVE node and bridged to MoQ, SRT, or RIST for WAN distribution. The meter and gateway wiring are in place; the native ingest adapter is the remaining gap, so today NDI runs through a WAVE node bridge rather than a hosted edge worker.
Hosted endpoint: ndi.wave.online — fronted by the WAVE gateway (reach: direct).
Install
Native adapter not built yet — runs through the WAVE node metering bridge today.
# Bridge a local NDI source up to WAVE via a WAVE node
wave node bridge --in ndi://STUDIO-PC%20(Camera%201) --out moq://moq.wave.online
Every fabric authenticates with the same WAVE key (Authorization: Bearer $WAVE_KEY) and is gated by the same scope grant. A call carrying x-wave-protocol: ndi is attributed to this fabric end-to-end.
API reference
The WAVE gateway (api.wave.online) enforces auth, scope, entitlement, and metering for NDI — the same contract as every other fabric.
| Scope | ndi:read / ndi:write |
| Protocol tag | x-wave-protocol: ndi |
| Stripe meter | wave_usage_duration_ms_ndi |
| Price env | STRIPE_PRICE_STREAM_MIN_NDI |
| Transport | Network ingest (network-ingest) |
| Reach | direct |
| Bridge targets | moq, srt, rist |
| Spoke | https://ndi.wave.online |
A subscription to the NDI product grants both ndi:read and ndi:write. Usage is reported as wall-clock minutes under the metering dimension duration_ms:ndi, which bills the live Stripe meter wave_usage_duration_ms_ndi once STRIPE_PRICE_STREAM_MIN_NDI is provisioned. Read your own accumulated usage at GET /v1/usage (scope usage:read).
All fabric reference fields above are generated from the fabric-support contract (catalog/fabrics.json) and the pricing SSOT, so the docs can never drift from what the gateway actually enforces.
Pricing
| Meter | Rate | Billed unit |
|---|---|---|
wave_usage_duration_ms_ndi | $0.005 | minute |
Every transport fabric meters at the uniform $0.005/min anchor. Metering is wall-clock and mutually exclusive — a minute is billed under duration_ms:ndi or the aggregate stream dimension, never both. Prices are inert until your subscription is attached; you are billed only for minutes the gateway observes.