Reeljet handles transcoding, storage and global delivery for you. Hit one endpoint — your viewers get a smooth adaptive stream on any device and any connection.
From raw source to adaptive playback on your viewer's screen — no media servers, job queues or FFmpeg glue to maintain.
H.264, HEVC and AV1 at multiple bitrates in parallel. An average clip is ready to play in about four seconds — Reeljet builds the ABR ladder for you.
Direct file, remote URL, resumable uploads or a live RTMP push — one endpoint for every source.
HLS and DASH up to 4K over a global CDN. Quality follows the network; the player embeds in one line.
import { Reeljet } from "@reeljet/sdk"; const rj = new Reeljet(process.env.REELJET_KEY); const video = await rj.videos.create({ source: "./demo.mp4", playback: "public", }); console.log(video.hls); // https://stream.reeljet.io/v/a91f…/index.m3u8
client := reeljet.New(os.Getenv("REELJET_KEY")) video, err := client.Videos.Create(ctx, &reeljet.VideoParams{ Source: "./demo.mp4", Playback: "public", }) if err != nil { log.Fatal(err) } fmt.Println(video.HLS) // https://stream.reeljet.io/v/a91f…/index.m3u8
curl https://api.reeljet.io/v3/videos \ -H "Authorization: Bearer $REELJET_KEY" \ -F source="@demo.mp4" \ -F playback="public" # → { "id": "a91f…", "status": "processing" }
No idle-storage fees for clips nobody watches. You're billed for transcoding minutes and delivery bandwidth.
Create a key, upload a video and get an HLS URL back in minutes. No card required to start.