Embed films and series with a single iframe, addressed by IMDb or TMDB ID. Source failover, subtitles and quality selection are built in — no SDK, no script tag, no API key.
Paste it in and it works. Nothing to install.
<iframe src="https://videm.xyz/embed/movie/{id}" width="100%" height="100%" frameborder="0" allowfullscreen></iframe>
<iframe src="https://videm.xyz/embed/tv/{id}/{season}/{episode}" width="100%" height="100%" frameborder="0" allowfullscreen></iframe>
allowfullscreen on the iframe, or the fullscreen button
does nothing on the viewer's device.
| Format | Example | |
|---|---|---|
| IMDb | tt1375666 |
tt followed by seven or eight digits |
| TMDB | 27205 |
Digits only |
// the same film, either way https://videm.xyz/embed/movie/tt1375666 https://videm.xyz/embed/movie/27205
| Parameter | Values | Effect |
|---|---|---|
autoplay | true · false |
Start without a click. Off by default; browsers may still require muted audio. |
server | server code | Open on a specific source instead of the automatic choice. |
https://videm.xyz/embed/movie/27205?autoplay=true
The awkward parts of streaming, already solved.
Sources are ordered by what has actually been playing, and a dead one is dropped in seconds. A bad source never becomes a bad page.
Resolution and audio-track menus appear only when the chosen source really offers them — never as buttons that do nothing.
Attached automatically where they exist, with the viewer free to switch track or turn them off entirely.
Touch controls, native fullscreen on iOS, picture-in-picture, and a layout that fits whatever box you give it.
No. Paste the iframe and it works — the URL format is the whole of the API, and there is nothing to set up on your side.
Whichever your catalogue already stores. Both go in the same position, so you need no lookup or conversion step.
The player moves to the next one by itself, within a couple of seconds, without the viewer doing anything. Sources that keep failing sink down the order for everyone.
The parameters above cover the common cases — starting muted or unmuted, and pinning a specific source. Everything else the viewer controls from the player itself.