Skip to main content
Enter a TMDB ID and hit play. Sources stream in as providers resolve — the player starts on the first one and queues the rest as fallbacks. Both HLS and MP4 sources are handled automatically.
This player runs entirely in your browser against the live API. Source count and availability vary in real time depending on which providers are up. Check /health if you see zero sources.

Player


How to Use

Movies — enter a TMDB movie ID and click Play Movie. Find IDs on themoviedb.org — it’s the number in the URL.
URLTMDB IDTitle
themoviedb.org/movie/550550Fight Club
themoviedb.org/movie/2720527205Inception
themoviedb.org/movie/155155The Dark Knight
TV episodes — enter the series TMDB ID, then pick a season and episode number.
URLTMDB IDTitle
themoviedb.org/tv/13961396Breaking Bad
themoviedb.org/tv/9499794997House of the Dragon
themoviedb.org/tv/13991399Game of Thrones

What You’re Seeing

As the player connects, three things happen in sequence: Subtitle tracks load first — attached to the video element before any source resolves. Toggle them with your browser’s native subtitle control or the player’s subtitle menu. Sources stream in progressively — each provider that passes verification emits a button in the source switcher. The player auto-starts on the first one. Click any button to switch manually. HLS vs MP4 — sources are labeled HLS or MP4 in the switcher. HLS streams go through HLS.js and support quality selection; MP4 sources play directly via video.src. Both work in every modern browser.

Quality Selection

For HLS sources, a quality selector appears once the manifest is parsed. Options are populated from the stream’s available levels — select a fixed resolution or leave it on Auto to let HLS.js adapt to your connection. MP4 sources are single-quality — no selector is shown.

Standalone Embed

To embed the player in your own page:
<iframe
  src="https://vyla.pages.dev/movie/8363"
  width="100%"
  style="aspect-ratio: 16/9; border: none; border-radius: 8px;"
  allow="autoplay; fullscreen"
></iframe>
For a TV episode:
<iframe
  src="https://vyla.pages.dev/tv/1396/1/1"
  width="100%"
  style="aspect-ratio: 16/9; border: none; border-radius: 8px;"
  allow="autoplay; fullscreen"
></iframe>

Build Your Own

The live player is a reference implementation. For production use, integrate the API directly into your own player — you get full control over UI, fallback logic, and source handling.

Player Integrations →

Vanilla JS, React, Next.js, Vue, Android, iOS — all with HLS + MP4 support.

Movie Sources API →

Full SSE event reference for /movie and /tv.