▶
Free embed API

Put a player
on your site

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.

542,847Films
1,785,447Episodes
0Keys needed

One URL, one iframe

Paste it in and it works. Nothing to install.

Films

<iframe src="https://videm.xyz/embed/movie/{id}"
        width="100%" height="100%"
        frameborder="0" allowfullscreen></iframe>

Series

<iframe src="https://videm.xyz/embed/tv/{id}/{season}/{episode}"
        width="100%" height="100%"
        frameborder="0" allowfullscreen></iframe>
Keep allowfullscreen on the iframe, or the fullscreen button does nothing on the viewer's device.

Title IDs

FormatExample
IMDbtt1375666 tt followed by seven or eight digits
TMDB27205 Digits only
// the same film, either way
https://videm.xyz/embed/movie/tt1375666
https://videm.xyz/embed/movie/27205

Options

ParameterValuesEffect
autoplaytrue · false Start without a click. Off by default; browsers may still require muted audio.
serverserver code Open on a specific source instead of the automatic choice.
https://videm.xyz/embed/movie/27205?autoplay=true

What it handles for you

The awkward parts of streaming, already solved.

↻

Automatic failover

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.

✦

Quality & audio

Resolution and audio-track menus appear only when the chosen source really offers them — never as buttons that do nothing.

❝

Subtitles

Attached automatically where they exist, with the viewer free to switch track or turn them off entirely.

▣

Built for phones

Touch controls, native fullscreen on iOS, picture-in-picture, and a layout that fits whatever box you give it.

Questions

Do I need an account or a key?

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.

Which ID format should I use?

Whichever your catalogue already stores. Both go in the same position, so you need no lookup or conversion step.

What happens when a source stops working?

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.

Can I control the player from my page?

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.

Copy one line and you're done

No install, no key, no account.

Get the embed code