Skip to content
All posts

2 June 2026

OTNet linear channel embed test

First end-to-end test of <otnet-video-player channel-ids="...">. The player calls /api/otnet/channel-session, which forwards to OTNet's per-channel playback handshake, resolves a stitched live DASH manifest plus a channel-scoped DRM session, and plays.

What you're watching

This is an OTNet linear channel: a fixed lineup of content items looping on a stable epoch, stitched into one DASH manifest by the platform's live-edge server. The player joined at the live edge with a 2-hour DVR window. Skipping back inside that window works the same as any DVR linear stream.

How the embed works

The page renders <otnet-video-player channel-ids="...">. On mount, the player POSTs to this site's /api/otnet/channel-session proxy with the channel id. The proxy attaches the OTNet API key server-side and forwards to OTNet's per-channel playback endpoint, which returns the manifest URL plus, for DRM channels, a channel-scoped session token. The player drops the response straight into setup() and Shaka loads it like any other live source.

No API key in the browser, no hand-rolled JavaScript, no manifest stitching client-side. One HTML attribute and the platform does the rest.