• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar
VdoCipher: Secure Video Hosting for BusinessVdoCipher
☰
Sign Up
  • Solutions
    • E-learning
    • Enterprise
    • Developer
    • Healthcare
    • Live Streaming
  • Features
  • Pricing
    • Video Hosting & DRM Solution
    • Live Streaming Solution
  • Live
  • Developer
  • About
    • Testimonials
    • The Company
  • Contact
Login
Sign Up

Having multiple videos on the same page

TLDR: We do not recommend having multiple videos embedded on the same page. Doing so can result in “device incompatible” error message on the player. Keep dedicated pages on your website for each video, or at least make a UX that keeps only one player loaded at a time.

What causes the error

Under the hood, there are big differences between a regular HTML5 video element and another one running with DRM. Playing a DRM encrypted video takes a few extra steps inside the browser and the operating system. It is supposed to decrypt the video while it is getting rendered by the browser. All the while ensuring that the raw video bytes are not available to the user-land at any time.

This process can be complicated because it involves making use of specialised provisions inside the computer. One such component is the trusted execution environment (TEE) on the processor itself. There are such limited and specialised resources in use from both hardware and software levels. The security level requested by the player and the security levels available on the device decides which exact components will be used.

Having multiple videos on the page will mean a number of these resources will get exhausted. Given that our scripts are inside an iframe, the player is unable to know count of other videos on the same page. The browser does not have a clear API about why exactly the DRM APIs failed. All this means, that the error from player is indistinguishable from the error when the device is actually incompatible to play DRM.

Possible error message on the player when multiple videos loaded

Load times vs data conservation

When loading a video player, and before the user has clicked the video, we have two choices.

  1. We can either just show a poster image, a play button, and wait for the user to click; or
  2. We can also create the video element, do the license verification and load a bit of the starting video in the background.

In the first scenario, the time-to-play-after-click will be huge. It can be anywhere from 2 to 10 seconds before the video starts playing even on a good connection. While in the second scenario, the time-to-play-after-click will be almost zero. The moment click event is captured, the video will start playing.

For the default player, we have decided to go with the second option because we believe that in most cases, especially in an encrypted video, the video will be the primary content of the page and it should have a good experience.

What happens when too many videos

Note that reducing this load time means that the secure key-exchange will happen before the click. This means that a video player loaded on the web page will have an active DRM session. This is one of the limited resources that we had talked about earlier. When another video is loaded on the page, it cannot open an active DRM session and shows an error message about incompatibility.

Getting error even with single video

Some android devices have reported getting stuck when the webpage tries to play multiple videos simultaneously. After such a page is loaded, it seems the internal resources are not automatically released. If this happens, you might see error messages when playing even regular videos on this device. One way to fix this issue is to restart the device. Hence, if a user reports having device compatibility errors, it is useful to ask them to restart their device. If the problem will be coming from having unreleased DRM sessions, then this can fix the problem. Information to identify such behaviour is not available via any APIs from the browser and therefore, it is difficult to track and show the appropriate error message when this happens.

Using Modals if you need to have multiple videos

The following solution require programming skills to implement. If you are not a developer, share this article with a developer to get this implemented.

Instead of loading the video player itself, you can show a poster image of the video, and a simple play button on top. Add a click listener to open a pop-up modal. The video player will be part of the modal contents. When the modal loads in DOM, the player is also loaded.
If you use this method, it is recommended to keep the poster image in your database to make this process easier.

Beware the preloaded-modal libraries

Note that if you use any of the modal libraries, there are two kinds of pop-ups. Some modals will load the modal/pop-up when the page loads. Showing that modal will just toggle the display and/or position properties of the modal to show it. Other kinds of modal will not keep the modal contents in the DOM. When the modal is shown, the DOM is injected into the modal container and it appears on the page. Let’s call this preloaded modals and just-in-time modals.

Preloaded modals can be quick to display because its contents (be it iframe, scripts or images) have been pulled from the network and loaded into the DOM. They were just kept hidden. However, if you have many such modals or the contents of those modals consume significant network resources, such as videos, preloaded modals can drain your users’ network bandwidth and cause the page to slow-down. Therefore, ensure that the modals you are using are NOT preloaded. You can check whether they are preloaded by looking at the browser’s dev-tools (network panel). Note the total bytes transferred after the page is reloaded. If the page is transferring multiple MBs of data just to reload, the popups might be loading their contents in the background.

Recommendations

We wish we could have the above workaround on the player itself to make this easy. However, having such interactive elements via an embed code while ensuring that there are no CSS conflicts can not be applied universally. Our best recommendation therefore is to implement such workarounds yourself, or just keep each video on a dedicated page.

Supercharge Your Business with Videos

At VdoCipher we maintain the strongest content protection for videos. We also deliver the best viewer experience with brand friendly customisations. We'd love to hear from you, and help boost your video streaming business.

Free 30-day trial →
Decorative Circle

Primary Sidebar

Secure Your Videos

Blog Categories

  • DRM 
  • APIs and Sample Codes
  • WordPress
  • E-learning
  • Media
  • Video Tech

Popular Posts

  • Google Widevine DRM
  • WordPress video plugin
  • Video Quality
  • Dynamic Watermarking
  • Encrypted Video Streaming
  • Video Hosting For Online Courses
  • Online Video Player
  • Apple Fairplay DRM
  • SVOD VS TVOD VS AVOD
  • Exoplayer
  • DRM

Top Recent Posts

  • Enterprise Video Platform
  • Cloud Video Platform
  • Video Player for Android
  • DRM Solution
  • Video Bitrate
  • React Native Video
  • Video Piracy
  • Learning Management System
  • AVPlayer
  • Live Streaming Websites
  • DRM Providers
  • DRM Security
  • Private Video Hosting
  • HTML5 Video Player

Schedule Demo Link
Popular Blogs
  • How many use easy video download piracy tools ?
  • Apple FairPlay DRM : Video Protection on iOS & Safari
  • 12 Video Piracy Statistics, 6 Prevention Methods
  • Elearning Video Protection from Piracy
  • Content Creator Economy Growth and other Statistics Report
  • Top 21 Education Apps In India For Online Learning
  • How To Embed Videos in WordPress A Comprehensive Guide
  • Live Streaming Platform For E-learning Media & Broadcast
  • Explained in Simple Language, 32 Key DRM Encryption Terminologies
  • Best Video Player for Android Comparison 2024
Recent Blogs
  • Streaming Piracy Statistics & Fixes for Pirate Streaming Services
  • How to Embed Video in HTML Using iframe or Video Tag Element
  • How to Embed Video in Tutor LMS – VdoCipher
  • Video Streaming Analytics Examples: 15 Parameters to Track in Player
  • Top 25+ Online Video-On-Demand (VOD) Platforms in Asia [2025]
  • Prevent Video Piracy in 10 Steps in 2025
  • Forensic Watermarking for Video Protection in 2025
  • Geo Blocking Video: How to Implement Geo Restrictions
Featured Blogs
  • Online Video Player
  • Video Encryption
  • Video Protection
  • Video Hosting
  • Widevine DRM
  • Fairplay DRM
  • Video Quality
  • Online Video Platform
  • Video hosting for business
Comparison
  • VdoCipher vs Vimeo
  • VdoCipher vs Dacast
  • VdoCipher vs YouTube
  • VdoCipher vs Zoom
  • VdoCipher vs JW Player
  • VdoCipher vs Dacast Live
  • VdoCipher vs Kaltura
  • VdoCipher vs Brightcove
    Contact Us
  • Phone : +91 7619171878
  • Whatsapp : +91 7042238654
  • E-mail : support@vdocipher.com
Company
  • Home
  • Glossary
  • Features
  • About Us
  • Pricing
  • FAQs
  • Contact
Services
  • Enterprise
  • E-Learning
  • Developer
  • Healthcare
  • Live Streaming Platform
  • Video Analytics
  • Media and Entertainment
  • DRM and Antipiracy
  • APIs for Developers
  • Video Hosting
  • Video API
  • Video DRM
  • Google DRM
  • DRM License Server
  • Custom Video Player
  • Play Integrity
Countries Served
  • Secure Video Hosting in USA
  • Secure Video Hosting in India
  • Secure Video Player in Brazil
  • Secure Video Streaming in UK
  • Secure Video Streaming in Saudi Arabia
  • Video Encryption in Spain
  • Video Encryption in Italy
  • Protected Video Streaming in Indonesia
  • Encrypted Video Player in Canada
  • Protected Video Streaming in Australia
  • Encrypted Video Player in Germany
  • Video DRM for Sri Lanka
  • Video DRM for Middle East
  • DRM Encryption for Europe
  • DRM Encryption for Asia
  • DRM Solutions for Japan
  • DRM Solutions for UAE
  • DRM Software for Chile
  • DRM Software for Russia

Copyright © 2025 VdoCipher. All rights reserved.

  • Terms
  • Privacy Policy