Audio & Video Players
Embeddable players for audio, video, HLS, DASH.
Video players
- ★ Vidstack — modern, web-component-based, framework-agnostic (React, Vue, Svelte, Solid wrappers). HLS/DASH, captions, theming. The default for new projects.
- Mux Player — drop-in player tuned for Mux-hosted videos; works for non-Mux videos too. Free.
- Plyr — small, accessible, themable; supports YouTube/Vimeo embed.
- Video.js — long-standing classic; massive plugin ecosystem.
- Shaka Player (Google) — robust DASH/HLS, DRM (Widevine, PlayReady, FairPlay).
- HLS.js, dash.js — protocol-only libs; pair with
<video>directly. - react-player — wraps YouTube / Vimeo / Twitch / SoundCloud / direct files.
- media-chrome — web-component primitives for building custom players (used by Mux Player).
Audio players
- ★ Howler.js — simple, cross-browser audio API; the default for game / app sound.
- wavesurfer.js — waveform visualization + playback; great for podcast / DAW UIs.
- Tone.js — for music apps; high-level web-audio framework.
- Audio Motion Analyzer — real-time audio spectrum.
DRM / encrypted streams
- Shaka Player — most flexible.
- Video.js + EME plugin — works for many cases.
- Cast Receiver / Chromecast SDK — for living-room streaming.
Subtitles / captions
- subtitle (npm) — parse / generate WebVTT, SRT, etc.
- subtitlesOctopus — render
.ass(advanced subtitles) in browser. @vidstack/captions-parser— Vidstack's bundled.
Hosting / streaming services
- ★ Cloudflare Stream — generous free tier, simple pricing, MP4 + HLS + DASH.
- ★ Mux — best DX in the space; pay-per-minute encoded; trial credits.
- Bunny Stream — cheap, good DX.
- Vimeo OTT / Vimeo API — end-user-facing video.
- YouTube — free hosting, you give up the player UX.
- AWS IVS — interactive (low-latency live) video.
Live streaming
- OvenMediaEngine, MediaMTX, NMS — open-source live streaming servers.
- Cloudflare Stream Live, Mux Live, AWS IVS — managed.
Pick this if…
- Default video player: Vidstack (or Mux Player if you're on Mux).
- Smallest possible video player: Plyr.
- Need DRM: Shaka Player.
- Audio playback: Howler.js.
- Waveform UI: wavesurfer.js.
- Hosted video, DX matters: Mux.
- Cheapest hosted video: Cloudflare Stream or Bunny.