IntroductionHow to add CSS or JavaScript files to an Android/iOS projectHow to combat autoplay policiesWhy does fullscreen not behave as expected on iOSWhy does the Network API not work on iOS devicesWhy does Chromecast not work on iOS Chrome?Why can't I select another video quality on iOS/tvOS?Is YouTube supportedWhy does the player load only one audio track (even though there are several in the manifest)Is it possible to see 360 degrees photo with THEOplayerWhy the Visibility API does not work through an iframe on Safari and IE11What is an impressionHow to know whether a live stream is playingWhich error related events does the player exposeWhy did my subtitles stop workingHow does Media Engagement Index (MEI) affect Autoplay on ChromeWhat does the error message 'Unknown CDM error' meanWhat does the error message 'Something went wrong with Native playback' meanWhy are not all response headers exposedWhy does the currentTime seem off in my livestream & what can I do about itHow to remove CORS restrictions from a reproduction streamWhich network calls (or requests) does THEOplayer doWhy does the playback not work when using the Chrome iPhone/iPad simulatorWhat does the error message 'can only be initiated by a user gesture' imply? Can I still force the desired actionHow to remove unwanted CC track in iOS or SafariWhy do I get a gray play button in my Android WebView and how to remove it?MediaTek limitationsHow to use ProGuard with THEOplayer Android SDKSelf-hosting and versioning of THEOplayerDoes THEOplayer support EXT-X-DATERANGECan clipping be used on a playlistCan timeline thumbnails be made available before playback startWhat are the benefits of preloadingWhat are the player seeking and seeked events and when are they firedCan we use HLS or DASH adsHow to change text in THEOplayerChange text when AirplayingITP2.1 problems using THEOplayerRemoving context menu/'Powered by THEOplayer v2...'What aspects of THEOplayer do we need to take into account to deploy a proper Content Security Policy (CSP)How can we avoid that the player keeps looking for chunks/segments if they are not foundCan we show a custom message on 403 on mp4Can we prevent UpNext feature from redirectingIs it possible to preload VOD content while the pre-roll is playingWhy is my video not playing automaticallyIs it possible to have multiple player instances play at the same timeIs it a problem if the viewer pauses a live stream for longer than the DVR windowTHEOplayer Features & ModulesChromecast on my webplayer does not work any longer despite no change in my implementationHow to track network errorsWhat is the support for WowzaHow to use the CDN fallback/backup stream featureHow to apply accurate buffering strategyHow can I distribute 4K content?What is the collaboration between Azure Media Services and THEOplayerIs Portrait mode supportedHow to prevent screen recordingThe provided video source is incompatible with the license for this playerPage and Source domainsWhat does the error message “Something went wrong determining the initial period of the provided MPEG-DASH stream” meanWhy is my PlayReady stream not working in Chromium Edge?Which subtitle and CC formats are supported on native SafariHow to navigate through the documentation and resourcesHow to create a (great) ticketHow to investigate a ticketWhat are the limitations of AirPlayWhat are the Edgio challengesHow to use the Media Session APIHow to use THEOplayer iOS SDK on an M1 macWidevine CDM deprecation notice for old browser versions

Why is my video not playing automatically

There is a wide variety of possible causes that bring to a video not being automatically played. These may have to do with autoplay policies, iframes, Media Engagement Index and more. Please read the full answer in this article for more information. Also, please keep in mind that this is not an extensive list of causes for autoplay failure and that, as time goes by, browsers autoplay management and autoplay policies may change.

If you want your video to play automatically once the player is available, you should set the autoplay feature to true.

However, sometimes this does not lead directly to the desired result: different issues may be preventing the automatic reproduction of your video. In the following we will be listing some of the most common causes for this.


Some issues depend on the fact that autoplay is not really implemented, but the method play() is called on the player instead. Although in specific cases this may work, we do not advise to use this instead of the autoplay, as often this is more strictly blocked by autoplay policies and may produce, in certain cases, desync with the UI buttons (e.g.: the button suggests that the stream is playing although it’s not) or other issues.

Solution: for autoplay behavior, use the provided autoplay feature.

Autoplay policies

Different browsers have different autoplay policies. For the specifics, please consult the policies themselves, as they may get updated. In general, though, when an autoplay policy is applied, it is possible to still autoplay a video if the player is muted.

Solution: to enable this, please use the mutedAutoplay property in your player configuration and set it to all.

Chrome Media Engagement Index (MEI)

On the desktop-version of Chrome (unmuted) autoplay may also appear not to be working on your web page (while it does on your localhost). In this case the problem may be due to the Media Engagement Index. The MEI measures an individual's propensity to consume media on a site. The MEI score is highest on sites where media are played on a regular basis. When it is high enough, media playback is allowed to autoplay on desktop only.

Solution: the following article explains two ways to avoid this problem.

How does Media Engagement Index (MEI) affect Autoplay on Chrome?


When playing a video through an iframe, your autoplaying issues may be due to the iframe itself. In this case the issue comes from the fact that the iframe does not allow autoplay. Although this shouldn’t be a common problem when using a player, there have been cases in which this piece of advice was useful.

Solution: include the attribute allow="autoplay" in your iframe.

iOS 11 and following

Apple made it that from iOS 11 and onwards autoplay is automatically muted from the start and added some settings that can remove autoplay from any site.

So it is possible that on your device autoplay is not working on Safari while it is working elsewhere.

Solution: check if the feature is disabled on the device. If it's explicitly disabled, the setting would be under Accessibility > Per App Settings > Add App > Safari > Safari > Auto-Playing Video Previews. Otherwise it would be enabled.


The following resources provide more information:

Make sure to follow us on GitHub!
Copyright © 2022. All Rights Reserved.
New York