logo

Introduction

The Player API is the top-level API. This API exposes:

  • basic functions to manipulate video playback, such as start and pause;
  • properties to check states and values, such as the playhead position;
  • events to track changes.

The list below overviews how-to articles related to the Player API.

Events

As a developer you can programmatically attach event listeners to different APIs. Event listeners are often used to implement a custom UI or to implement a custom analytics integration.

The THEOplayer API exposes many events across different interfaces, as can be seen in the graphic below. Furthermore, most events exist in all SDKs (Web, iOS-based, Android-based and Roku).

THEOplayer API Interfaces and Events

The table below gives an overview of a subset of the available events per interface in the THEOplayer Web SDK.

Interface Event Description
Player canplay Fired when the player can resume playback of the media data.
Player canplaythrough Fired when the player can resume playback of the media data and buffering is unlikely.
Player contentprotectionerror Fired when an error related to content protection occurs.
Player contentprotectionsuccess Fired when the key is usable for decryption.
Player currentsourcechange Fired when the current source, which is chosen from ChromelessPlayer.source.sources, changes.
Player destroy Fired when the the player is destroyed.
Player dimensionchange Fired when the dimensions of the HTML element changes.
Player durationchange Fired when ChromelessPlayer.duration changes.
Player emptied Fired when the player's source is cleared.
Player encrypted Fired when the player encounters key system initialization data in the media data.
Player ended Fired when playback has stopped because the end of the media resource was reached.
Player error Fired when an error occurs.
Player loadeddata Fired when the player can render the media data at the current playback position for the first time.
Player loadedmetadata Fired when the player determines the duration and dimensions of the media resource.
Player loadstart Fired when the player starts loading the manifest.
Player manifestupdate Fired when the manifest is updated.
Player pause Fired when ChromelessPlayer.paused changes to true.
Player play Fired when ChromelessPlayer.paused changes to false.
Player playing Fired when playback is ready to start after having been paused or delayed due to lack of media data.
Player progress Fired when the player loaded media data.
Player ratechange Fired when ChromelessPlayer.playbackRate changes.
Player readystatechange Fired when ChromelessPlayer.readyState changes.
Player representationchange Fired when the current representation changes.
Player resize Fired when either ChromelessPlayer.videoWidth or ChromelessPlayer.videoHeight changes.
Player seeked Fired when ChromelessPlayer.seeking changes to false after the current playback position was changed.
Player seeking Fired when ChromelessPlayer.seeking changes to true, and the player has started seeking to a new position.
Player segmentnotfound Fired when a segment can not be found.
Player sourcechange Fired when ChromelessPlayer.source changes.
Player timeupdate Fired when the current playback position changed as part of normal playback or in an especially interesting way, for example discontinuously.
Player volumechange Fired when ChromelessPlayer.volume changes.
Player waiting Fired when playback has stopped because the next frame is not available, but the player expects that frame to become available in due course.
Player currentTime The current playback position of the media, in seconds.
Player currentProgramDateTime The current playback position of the media, as a timestamp.
Player muted Whether audio is muted.
Player ... ...
Ads (Client-Side) adbegin Fired when an ad begins.
Ads (Client-Side) adbreakbegin Fired when an ad break begins.
Ads (Client-Side) adbreakchange Fired when an ad break changes.
Ads (Client-Side) adbreakend Fired when an ad break ends.
Ads (Client-Side) adbuffering Fired when the ad has stalled playback to buffer.
Ads (Client-Side) addad Fired when an ad is added.
Ads (Client-Side) addadbreak Fired when an ad break is added.
Ads (Client-Side) adend Fired when an ad ends.
Ads (Client-Side) aderror Fired when an ad errors.
Ads (Client-Side) adfirstquartile Fired when an ad reaches the first quartile.
Ads (Client-Side) adimpression Fired when an ad counts as an impression.
Ads (Client-Side) adloaded Fired when an ad is loaded.
Ads (Client-Side) admetadata Fired when an ads list is loaded.
Ads (Client-Side) admidpoint Fired when an ad reaches the mid point.
Ads (Client-Side) adskip Fired when an ad is skipped.
Ads (Client-Side) adthirdquartile Fired when an ad reaches the third quartile.
Ads (Client-Side) removeadbreak Fired when an ad break is removed.
Ads (Client-Side) updatead Fired when an ad is updated.
Ads (Client-Side) updateadbreak Fired when an AdBreak is updated.
Vendor Cast statechange Fired when the state changes.
Chromecast error Fired when an error occurs while casting or trying to cast.
Track List addtrack Fired when a track is added.
Track List change Fired when a track is activated or deactivated.
Track List removetrack Fired when a track is removed.
Track change Fired when a media track's enabled or a text track's changes.
Track update Fired when the track updates.
Media Track activequalitychanged Fired when the media track's active quality changes.
Media Track qualityunavailable Fired when a quality of the track becomes unavailable.
Media Track targetqualitychanged Fired when the media track's target quality changes.
Text Track addcue Fired when a cue is added to the track.
Text Track cuechange Fired when a cue of the track changes.
Text Track entercue Fired when a cue of the track enters.
Text Track error Fired when an error occurred while loading or parsing the track.
Text Track exitcue Fired when a cue of the track exits.
Text Track readystatechange Fired when the text track's changes.
Text Track removecue Fired when a cue of the track is removed.
Text Track typechange Fired when the text track's changes.
Text Track Cue enter Fired when the cue is entered.
Text Track Cue exit Fired when the cue is exited.
Text Track Cue update Fired when the cue is updated.
Presentation error Fired when an error occurs.
Presentation presentationmodechange Fired when the presentation mode changes.
VR directionchange Fired when the VR.direction changes.
VR error Fired when an error occurs.
VR statechange Fired when the VR.state changes.
VR stereochange Fired when the VR.stereo changes.
Verizon Media assetinforesponse Fired when an asset info response is received.
Verizon Media pingerror Fired when an error or invalid response is received from the Ping API.
Verizon Media pingresponse Fired when a Ping response is received.
Verizon Media preplayresponse Fired when a Preplay response is received.
Verizon Media ads The Verizon Media SSAI API.
Verizon Media assets List of Verizon Media assets.
Verizon Media Ad Break List addadbreak Fired when the ad break is added.
Verizon Media Ad Break List removeadbreak Fired when the ad break is removed.
Verizon Media Ad Break adbreakbegin Fired when the ad break begins.
Verizon Media Ad Break adbreakend Fired when the ad break ends.
Verizon Media Ad Break adbreakskip Fired when the ad break is skipped.
Verizon Media Ad Break updateadbreak Fired when the ad break is updated.
Verizon Media Ad adbegin Fired when an ad begins.
Verizon Media Ad adcomplete Fired when the ad is completed.
Verizon Media Ad adend Fired when the ad ends.
Verizon Media Ad adfirstquartile Fired when the ad reaches the first quartile.
Verizon Media Ad admidpoint Fired when the ad reaches the mid point.
Verizon Media Ad adthirdquartile Fired when the ad reaches the third quartile.

Our APIs are continuously evolving, and so is our list of events. Refer to our API references of our SDKs to go through the latest sets of events:

github
Make sure to follow us on GitHub!
THEO-logo-white
twitter
facebook
linkedin
Copyright © 2022. All Rights Reserved.
Leuven
New York
Singapore
Barcelona