Video streaming basics
Deliver low-latency video streams from your Meridian edge nodes without third-party CDNs. This recipe covers HLS packaging, adaptive bitrate ladder configuration, and client-side playback with automatic quality switching.
Prerequisites
- Meridian CLI v2.4+ installed and authenticated
- At least one edge node with GPU transcoding enabled
- Source video in MP4 or MKV container
Step 1 — Ingest the source
Upload your source file to the Meridian origin store. The ingest pipeline automatically validates codec compatibility and generates a manifest placeholder.
meridian stream ingest ./input.mp4 --name my-live-streamStep 2 — Define the ABR ladder
Create a ladder profile specifying resolution, bitrate, and codec for each rendition. Meridian supports H.264 and AV1 output.
ladder:
- res: 1920x1080, br: 6000k, codec: h264
- res: 1280x720, br: 3000k, codec: h264
- res: 640x360, br: 1000k, codec: h264Step 3 — Start the stream
Launch transcoding workers across your edge fleet. Meridian distributes segments in real time and serves the HLS playlist from the node closest to each viewer.
meridian stream start my-live-stream --ladder ladder.ymlStep 4 — Embed the player
Use the Meridian player snippet. It handles ABR switching, buffer health monitoring, and automatic fallback to the lowest rendition on degraded connections.
<script src="https://cdn.getnimbus.net/player/meridian-player.js">
</script>
<meridian-player stream="my-live-stream" autoplay muted>
</meridian-player>