What is EmbedMaster
EmbedMaster is a powerful movie streaming API that lets webmasters easily integrate free online movies and TV shows into their websites using a simple iframe. By providing an IMDb or TMDb ID, EmbedMaster automatically fetches and displays the actual movie or TV episode, making it instantly available to watch online through multiple streaming servers. It offers a hassle-free solution for embedding high-quality movies and TV shows directly on any site, giving users seamless access to entertainment without the need for downloads or complex setups.
In this simple guide we will show you how to easily integrate EmbedMaster into your website. This guide is only for webmasters without EmbedMaster account. If you want to use all EmbedMaster features, please create an account and use our player builder.
Without account
- Simple iframe embed with default player that can't be customized.
With account
- Create multiple custom players with our player builder.
- Change player design, colors, fonts, icons, streaming servers and more.
- Buy ad-free plays to get rid of all ads.
- See your player statistics.
- Integrate other streaming APIs into your player.
- Add your own streaming links.
If you can't or don't want to create account you can proceed with this guide, otherwise use the guide in your account.
Use EmbedMaster on your website
Movie Embed URL
https://embedmaster.link/movie/{id}
Required parameters:
- {id} - IMDb or TMDB id. IMDb id must have tt prefix!
TV Embed URL
https://embedmaster.link/tv/{id}/{season}/{episode}
Required parameters:
- {id} - IMDb or TMDB id. IMDb id must have tt prefix!
- {season} - season number
- {episode} - episode number
Full page iframe code example
<iframe
src="https://embedmaster.link/movie/tt31193180"
width="100%"
height="100%"
frameborder="0"
allowfullscreen>
</iframe>
Responsive 16:9 iframe code example
<!-- 16:9 Aspect Ratio Container -->
<div style="position: relative; padding-bottom: 56.25%; height: 0;">
<iframe
src="https://embedmaster.link/movie/tt31193180"
style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"
frameborder="0"
allowfullscreen>
</iframe>
</div>
Custom Subtitles
https://embedmaster.link/movie/575265?sub_url[]=SUBTITLE_URL&sub_label[]=SUBTITLE_LABEL
Required parameters:
- sub_url[] - url encoded subtitle url (example: https%3A%2F%2Fexample.com%2Fsubtitle.vtt)
- sub_label[] - url encoded subtitle label (example: Custom+Subtitle)
- The server hosting subtitles must have "access-control-allow-origin" header set to "*"
- Your custom subtitle will load as default subtitle on every premium player. You can add multiple subtitles.
Player interaction
You can track time, receive events and send commands to the player. Below is an example code that showcases the player API functions and postMessage events. For more information you can read PlayerJS documentation - link 1, link 2
<!-- iframe with set id -->
<iframe id="embedmaster_iframe" src="https://embedmaster.link/movie/tt31193180" width="800" height="450" frameborder="0" allowfullscreen></iframe>
<!-- some example controls -->
<div style="margin-top: 20px;">
<button onclick="sendCommand('play')">Play</button>
<button onclick="sendCommand('pause')">Pause</button>
<button onclick="seekTo(60)">Seek to 60s</button>
<button onclick="sendCommand('mute')">Mute</button>
<button onclick="sendCommand('unmute')">Unmute</button>
<button onclick="setVolume(50)">Volume 50%</button>
<button onclick="setVolume(100)">Volume 100%</button>
<button onclick="sendCommand('fullscreen')">Fullscreen</button>
</div>
<!-- area for printing events -->
<pre id="log" style="box-sizing: border-box; margin-top: 20px; background: #f4f4f4; padding: 15px; max-width: 800px; height: 300px; overflow:auto;"></pre>
<!-- script for interacting with the player -->
<script>
const frame = document.getElementById('embedmaster_iframe');
function sendCommand(command, value) {
frame.contentWindow.postMessage({
source: 'embedmaster_player_command',
command: command,
value: value
}, '*');
}
function seekTo(seconds) {
sendCommand('seek', seconds);
}
function setVolume(percent) {
sendCommand('volume', percent);
}
// listen and print events coming from iframe
window.addEventListener('message', function (event) {
const data = event.data;
if (!data || data.source !== 'embedmaster_player') return;
log('event: ' + data.event + ' | info: ' + JSON.stringify(data.info));
// sample logging:
if (data.event === 'play') {
console.log('Video started playing.');
}
if (data.event === 'pause') {
console.log('Video paused.');
}
});
function log(msg) { // printing events on page
const el = document.getElementById('log');
el.textContent += msg + '\n';
el.scrollTop = el.scrollHeight;
}
</script>
Create an account ...if you want to unlock EmbedMaster's full potential.
Copyright © 2025 EmbedMaster
EmbedMaster