Everything inside StreamKit SDK

One SDK, one config object — adaptive streaming, content protection, monetization, and analytics, all wired together for how media platforms actually operate.

1

Adaptive Streaming Engine

Automatic engine selection across hls.js, dash.js, and native playback — with resilience built in for when a CDN has a bad day.

  • Adaptive bitrate HLS and DASH, plus native/progressive MP4
  • Automatic backup-source failover on primary CDN failure
  • Offline/online detection — buffered playback continues, reconnects and resumes automatically
  • Low-latency live support
new SKPlayer({
  containerId: "player",
  src: "https://cdn.example.com/live.m3u8",
  backupsrc: "https://backup-cdn.example.com/live.m3u8",
  autoplay: 1,
  muted: 1
});
2

Multi-DRM Content Protection

License your premium content across every major DRM system, from one config block.

  • Widevine — Chrome, Firefox, Edge, Android
  • PlayReady — Windows Edge, Xbox, smart TVs
  • FairPlay — Safari, iOS
  • ClearKey — open W3C standard, no license server needed for testing
  • PrimeTime — legacy Adobe support
drm: {
  widevine: {
    licenseUrl: "https://lic.example.com/widevine"
  },
  fairplay: {
    licenseUrl: "https://lic.example.com/fairplay",
    certificateUrl: "https://lic.example.com/cert"
  }
}
3

Ad Monetization

Two ad formats built in, so ad-supported streaming doesn't need a second SDK bolted on.

  • Google IMA — pre-roll, mid-roll, and post-roll VAST/VMAP ads
  • L-Band — Google Ad Manager squeeze-back display ad format, common in premium broadcast placements
  • Ad-lifecycle events (request, loaded, started, skipped, completed, failed) tracked automatically
ads: {
  preroll: "https://pubads.g.doubleclick.net/...",
  midroll: ["..."],
  postroll: "..."
},
lband: {
  adUnit: "/1234/YourNetwork/Video"
}
4

CMCD-Aware Delivery

Built-in Common Media Client Data support (CTA-5004) — your CDN sees real-time buffer health, bitrate, and session data on every request, and can make smarter delivery decisions because of it.

  • Per-session CMCD ID, automatically generated
  • Attached to every manifest and segment request
  • Visible live in the built-in QoS tool
cmcd: true
// or a config object to customize which fields are sent
5

Built-in Analytics

Push standard playback events straight into your own GA4 property — no separate analytics vendor or custom event wiring required.

  • Play, pause, seek, buffering, fullscreen, and completion events
  • Ad-lifecycle events (request/loaded/start/skip/complete/failed)
  • Anonymous per-session device ID and view ID, no PII collected
  • Reuses your page's existing gtag if present, or self-loads one
analytics: {
  ga4MeasurementId: "G-XXXXXXXXXX"
}
6

License & Domain Protection

Every embed is checked server-side against a domain-locked license key — verified against the browser's own Origin header, not a value the page's own script can spoof.

  • Domain + license-key pairing, with wildcard subdomain support
  • Fails open on network errors — a licensing hiccup never blocks a real customer
  • Every check logged for full usage visibility
  • Spoofed/copied embeds flagged and denied automatically
licenseKey: "avp_your_key_here"
7

QoS & Diagnostics Tooling

A full stream-testing tool ships with the SDK — live bandwidth, buffer health, dropped frames, bitrate ladder, and CMCD session data, updating in real time.

  • Live bandwidth estimate and current-bitrate charts
  • Buffer level and buffering-event duration tracking
  • Resource download timing per segment/fragment
  • Works against both HLS.js and DASH.js sessions
Open the QoS Tool →

See it running on a real stream

The live demo runs the exact same SDK build your license key would unlock. Or start a 30-day free trial and drop it straight into your own site.

Start Free Trial Watch the Live Demo