Skip to main content
@blindcast/player adds zero-knowledge encrypted HLS playback to any web application. It plugs into hls.js via custom loaders that intercept key fetches and decrypt segments locally in the browser — plaintext video never leaves the viewer’s device. Browser-only. This package requires MSE (Media Source Extensions) and the Web Crypto API. It does not support Node.js.

Install

hls.js is a peer dependency — install it separately.

Browser support

Always call isPlayerSupported() before creating a player:

Supported browsers

isPlayerSupported() returns false if either MSE or crypto.subtle is unavailable. This covers all modern browsers, including mobile.

10-line integration

That’s it. The player fetches the manifest, gets the content key from your key server, and decrypts each segment as it downloads.

Next steps