This is the Azure Media Player API reference.
Looking for our complete documentation? Visit docs.microsoft.com
The main function for users to create a player instance
The amp
function can be used to initialize or retrieve a player.
var myPlayer = amp('my_video_id');
Video element or video element ID string
Optional options object for config/settings
Optional ready handler
Player instance
SilverlightSS tech options
AzureHtml5JS tech options
Number of retries for key requests in case of http errors
Number of retries for each segment in case of http errors
Number of segments to skip in case of http errors
Number of total retries in case of http errors
Wait time between retrying for another key acquire request
FlashSS tech options.
Url to the AdaptiveStreaming plugin for OSMF.
Url to Strobe media player
SilverlightSS tech options
Url to the silverlight player
Interface describing an Advertisement.
Customizable Options for ad support.
Assest representing a media source.
bitrate of audio stream
codec of audio stream
Whether this stream is enabled
Language of audio stream, specified in RFC 5646
name of audio stream
Audio stream that is currently enabled, currently only 1 stream can be enabled at a single time. Returns array of indices
Array of available audio streams
Method to add a listener to an event
string of event name, available events are defined in StreamEventName class
handler that is called when event occurs
Method to remove a listener from an event
string of event name, available events are defined in StreamEventName class
handler that should be removed
Switch the audiostream currently playing (current implementation is exclusive)
the index of the stream to switch to
Buffer data, returned from amp.Player.videoBufferData and amp.Player.audioBufferData
Buffer level in seconds
Returns the most recent download completed, evt: "downloadcompleted"
Returns the most recent download decrypted, evt: "downloaddecrypted
Returns the most recent download failed, evt: "downloadfailed"
Returns the most recent download requested, evt: "downloadrequested"
Bandwidth used to make heuristic decision, available with amp.Player.videoBufferData only, in bps
Method to add a listener to an event
string of event name, available events are defined in BufferDataEventName class
handler that is called when event occurs
Method to remove a listener from an event
string of event name, available events are defined in BufferDataEventName class
handler that should be removed
Playable logical section of an Asset.
Optional URI to direct a user to when a click occurs while clip is active
The clip duration in seconds, cannot extend past the end of the asset
Is current Clip an advertisement or not.
The clip offset in seconds from the beginning of the asset.
The asset from where this clip was defined.
If set, the number of seconds to play before this clip becomes skippable Defaults to not skippable.
If set to true, clip presentation ends when the amount of time specified as duration has passed from when clip source was set, regardless of play status. Defaults to false.
Main program definition.
Returns the bitrate for this download, in bps
Returns the media time for this download in seconds, null, if initialization download
Returns the url for this download
Returns the measured bandwidth for this download, in bps
Returns the media download information
An Object containing Key value pair of response headers. If needed the requested headers can be passed in player options.
Returns the total bytes for this download
Returns the total time to download, in ms
Returns the media download information
Error code of the failure
Returns the media download information
Optional information on failure
Custom MediaError to report why playback failed
Error codes (see [[amp.ErrorCode]]) Bits [31-28] - Tech Id
Unknown = 0
AMP = 1
AzureHtml5JS = 2
FlashSS = 3
SilverlightSS = 4
Html5 = 5
.Html5FairPlayHLS = 6
Bits [27-20] - High level code
'MEDIA_ERR_CUSTOM' = 0
'MEDIA_ERR_ABORTED' = 1
'MEDIA_ERR_NETWORK' = 2
'MEDIA_ERR_DECODE' = 3
'MEDIA_ERR_SRC_NOT_SUPPORTED' = 4
'MEDIA_ERR_ENCRYPTED' = 5
'SRC_PLAYER_MISMATCH' = 6
'MEDIA_ERR_UNKNOWN' = 0xFF
Bits [19-0] - More details of the error. See amp.errorCode.
Optional error with more details
An insertion element into the current presentation.
Clip information. Not present when cancelling.
Splice information.
A presentation set.
List of clips in presentation order
Whether current clip timeline should be paused during mid-roll insertions
The Player instance for amp, for the caller to interact with.
Interface for the AudioTracksMenu of amp Controls for multi-audio scenarios. Ex: audioTracksMenu: { enabled: true, useManifestForLabel: false }
Set if audiotracks menu should be displayed on the default skin. Default is true. Note if there is only 1 audiostream no audio selection menu will be shown.
Set to turn off automatic label generation and use label from manifest. Default is false. When false, label shows language, bitrate and codec information if available and distinct When fields aren't available, stream will be called "Track {i}" When true, the label will use the audiostream name specified in the manifest
Interface for CEA708 captions configuration options
Enable CEA708 auto-parsing. Default is false.
Label attribute to create a user readable title for the track. label
The language of the text track data. srclang
Interface for downloadable media file
Optional media file bitrate, in bits per second.
The language of the downloadable media file in BCP47 format. Example: "en-us". lang
Optional media file size, in bytes.
Downloadable media file type.
use amp.downloadableMediaType for the list of media file types.
ex: amp.downloadableMediaType.transcript
Uri of the downloadable media file.
Interface for hot keys settings
Flag to control whether switching to fullscreen is allowed
Flag to control whether seeking forth/back by 1 sec with up/down arrows is allowed
Flag to control whether muting is allowed
Flag to control whether seeking to a percentage of a video by pressing number keys is allowed
Flag to control whether volume scrolling is allowed
Seek step in seconds
Volume change step
Interface for IMSC1 captions configuration options
Label attribute to create a user readable title for the track. Cannot be empty. label
The language of the text track data. Can be empty. It needs to match the value of the xml:lang tag in the IMSC1. Example: "en-us". srclang
Flag to indicate if the track should be selected when the player starts. Default is true.
Interface for the Logo of amp
Set if logo is displayed. Default is true.
Interface for the options of amp when it is created.
Set the autoplay for the next playback.
Configuration options for CEA708 closed captions
Set whether the controls should be displayed. Default is false.
CorsConfig to be used for request made by AzureMediaPlayer. Currently applied to all request [ Poster, TextTrack, Key, Fragments and Manifest ] for html5 tech. Applied to [ Poster, TextTrack ]in all other tech's.
custom Player settings. this is a JSON object. Ex: options.customPlayerSettings = { "customHeuristicSettings": { "windowSizeHeuristics": false } }
Disable the button that makes the video go into fullscreen mode. To fully disable going into fullscreen mode, also disable HotKeys.enableFullscreen. Default is false.
Set whether the video should follow the width of its container while keeping the video aspect ratio. Default is false.
Segment download response headers required. When provided downloadCompleted of BufferData would have a responseHeaders object containing the headers requested. Available only on AzureHtml5JS tech.
Heuristics profile Name
Hot keys to control playback (volume, current time, toggle full screen)
Configuration options for IMSC1 captions
Custom Player logo. Ex: logo: { enabled: true }
Boolean value specifying if audio should be muted at start.
Configuration options for playback speed control
Plugin configuration.
Sets the image that displays before the video begins playing. Defaults to no poster displayed.
Sets the alt text for the img tag of the poster. Default is an empty string.
Current SDN plugin
Skin configuration of amp
List of sources. SDN plugins can modify source URLs using this field. SDN plugin can modify source URLs only after it catches amp.eventName.sourceset event triggered by AMP.
Max time for stale data. Any Media data more then staleDataTimeLimitInSec behind current playback position is flushed. Disabled by default.
Tech order for the player to decide on which tech to use.
Set the configuration for the Tracing of amp
Object specifying wall clock time display settings. If enabled, will display an overlay with the wall clock time, and change how the time is displayed on the control bar. Disabled by default.
Interface for playback speeed control configuration options
Enable playback speed control. Default is false.
Initial playback speed. Default is 1.0. Value must be between 0.5 and 4.0 inclusively. Invalid values are ignored, and initial speed will be set to default value of 1.0.
Playback speed levels. Every element in the levels array specify name/value pair for the playback speed choice that will be available in the user selection menu. Default speed levels are: [{ name: '2.0x', value: 2}, { name: '1.0x', value: 1}, { name: '0.5x', value: 0.5}] values have to be between 0.5 and 4.0 inclusively.
Interface for protection information of the Source
Authentication Token for the player.
Certificate URL for Fairplay.
Protection type string.
Use amp.protectionType for the list of protection types.
ex: amp.protectionType.AES
Interface for SDN (Software-Defined Networking)
Interface for the SkinConfig of amp
Source object to hold the source information in Options and amp.Player.src.
Disable UrlRewiter and use the given sources. Default is false, to perform the url rewriting.
Array of ProtectionInfo for the source
Source Url
Streaming formats for the UrlRewiter to expand the sources from Azure Media Services (ex: "SMOOTH", "DASH", "HLS-V3" and "HLS-V4"). Default is all the streaming formats supported by Azure Media Services.
Mime type (ex: "application/dash+xml", "video/mp4", "application/dash+xml", "application/vnd.apple.mpegurl").
Interface for the Trace Configuration of amp
list of all the targets and its configuration for the Traces.
Set the trace level to log. Default value is 0. values: none = 0, error = 1, warning = 2, verbose = 3
Target location and the configuration for the Traces.
Max number of Traces. Only available for Memory Trace Target.
Target location for the Logs. Available targets are "console" or "memory"
Track object to hold the text track information in amp.Player.src
Type or category of the timed text track. kind
Label attribute to create a user readable title for the track. label
The address or Url of the media resource. src
The language of the text track data. srclang
Interface for wall clock time display settings
Enable display of wall clock time. Default is false.
Number specifying a time zone to display wall clock time in. Ex: -8 is Pacific Standard Time. Default is 0 (UTC)
Boolean specifying if to use local client time zone. If true, ignores timezone parameter. Default is false.
Heuristic profiles for amp
Profile that tries to play highest quality possible. It builds the buffer to limit potential buffering. It does not take the width and height of the player into account when switching bitrates. For live streams this profile has a backoff from the live edge to avoid potential buffering.
Profile that tries to balance quality and speed. It builds the buffer more than QuickStart but less than HighQuality. It takes the width and height of the player into account when switching bitrates. For live streams this profile tries to stay close to the live edge. This is the default profile.
Profile designed to work alongside Azure Media Services low latency feature for live streaming. If low latency is not enabled on the stream, this heuristic profile will not yield a latency improvement.
Profile that starts the playback as fast as possible. It also takes the width and height of the player into account when switching bitrates. For live streams this profile tries to stay close to the live edge.
Add an event listener to this Player's element.
myPlayer.addEventListener('eventType', myFunc);
The event type string. Use amp.eventName for the list of event types.
ex: amp.eventName.playing
Event handler.
The amp.Player calling this function.
Gets the audio buffer information
], undefined if not available
Set/Get whether or not to autoplay on amp.Player.src.
Whether to autoplay or not.
The amp.Player calling this function when setting, true/false when getting.
Get a TimeRanges object with the times of the source that have been downloaded.
var bufferedTimeRange = myPlayer.buffered();
Number of different ranges of time have been buffered. Usually 1.
var numberOfRanges = bufferedTimeRange.length;
Time in seconds when the first range starts. Usually 0.
var firstRangeStart = bufferedTimeRange.start(0);
Time in seconds when the first range ends
var firstRangeEnd = bufferedTimeRange.end(0);
Length in seconds of the first time range var firstRangeLength = firstRangeEnd - firstRangeStart;
TimeRanges object following JS spec.
Checks if the player is able to control playback rate. The ability to control playback rate depends on current tech, browser and OS.
var isPlaybackRateControlAvailable = myPlayer.canControlPlaybackRate();
True if playback rate can be changed, False otherwise.
Set/Get whether or not the controls are showing.
Set controls to showing or not.
The amp.Player calling this function when setting, true/false when getting.
Gets the current absolute time, in seconds.
absolute time in seconds, undefined if not available
Gets the current audio streams list.
], undefined if not available
Return current clip that is being played.
Gets the download bitrate.
bitrate in bps, undefined if not available
Set/Get the current HeuristicProfile
Gets the current media time, in seconds.
media time in seconds, undefined if not available
For live presentations, get the playable window start time (current absolute time - dvr window length) and end time in seconds. For VOD, returns undefined.
Example: If the playable window is 2 hours and the stream has been going for 3 hours, the returned time range would be 01:00:00 - 03:00:00
Playable window start and end in seconds
Gets the playback bitrate.
bitrate in bps, undefined if not available
Get the current Player settings for the given key
Get the protectionInfo for the current source.
Protection information of the current source.
Get the fully qualified URL of the current source value e.g. http://mysite.com/video.mp4. Can be used in conjuction with amp.Player.currentType to assist in rebuilding the current source object.
Current source.
Get the current name of the chosen tech.
Name of tech(in Pascal case).
Set the current time.
myPlayer.currentTime(120); // 2 minutes into the video
var whereYouAt = myPlayer.currentTime();
Time to seek to, in seconds.
The amp.Player calling this function when setting, time in seconds when getting.
Get the current source type e.g. video/mp4. This can allow you rebuild the current source object so that you could load the same source and tech later.
MIME type of the current source.
Gets the current video streams list.
], undefined if not available
Disables text Tracks that are currently being shown.
Destroys the amp.Player and does any necessary cleanup.
myPlayer.dispose();
This is especially helpful if you are dynamically adding and removing videos to/from the DOM. The orignial videoTag created by the app is also deleted as part of this dispose.
Gets or sets downloadable media options. Setting new value completely overwrites existing downloadable media.
The amp.Player calling this function when setting, current downlodable media value when getting.
Get the length in time of the source. For live, it is the playable window.
var lengthOfSource = myPlayer.duration();
NOTE: The source must have started loading before the duration can be known, and in the case of Flash, may not be known until the video starts playing.
Duration of the source, in seconds.
Get whether or not the player is in the "ended" state.
True if the player is in the ended state, false if not.
Increase the size of the video to full screen.
myPlayer.enterFullscreen();
In some browsers, full screen is not supported natively, so it enters "full window mode", where the video fills the browser window. In browsers and devices that support native full screen, sometimes the browser's default controls will be shown, and not the amp custom skin. This includes most mobile devices (iOS, Android) and older versions of Safari.
The amp.Player calling this function.
Get the current error.
Media error
Get the video to its normal size after having been in full screen mode.
myPlayer.exitFullscreen();
The amp.Player calling this function.
Used in live playback calculations. Given an absolute time, returns the associated time from the current playable window. If the given absolute time falls outside of the current playable window, returns the difference between the playable window edge and the given absolute time.
Example: If the playable window is 2 hours and the stream has been going for 3 hours, if you pass the absolute time of 01:00:00 (1 hour), the returned playable window time would be 00:00:00.
the player time in seconds
Get the version of AMP player in the format
Released AMP player version string.
Returns the textTrack that is currently being shown.
Get the Log traces from the player, if memoryLog is enabled.
flush memoryLog after returning the log.
Log trace string from the player.
Set/Get height of the component (CSS values).
Setting the video tag dimension values works with values in pixels, % or 'auto'.
The amp.Player calling this function when setting, pixels when getting.
Check if the player is in fullscreen mode.
var isFullscreen = myPlayer.isFullscreen();
True if fullscreen, false if not.
Get whether or not the presentation is live.
true if the presentation is live, false if not.
Get the playable window length in seconds from the manifest
Playable window length in seconds from the manifest or undefined if not present in the tech
Set/Get muted state.
myPlayer.muted(true); // mute the volume
True to mute, false to unmute.
The amp.Player calling this function when setting, current mute state when getting.
Pauses the video playback.
myPlayer.pause();
The amp.Player calling this function.
Get whether or not the player is in the "paused" state.
var isPaused = myPlayer.paused();
True if the player is in the paused state, false if not.
Starts media playback.
myPlayer.play();
The amp.Player calling this function.
Returns the playable window end time in seconds, regardless of if presentation is live or VOD, as long as it's available. Returns undefined if it's not available.
Playable window end time in seconds
Gets or sets the current playback rate. A playback rate of 1.0 represents normal speed and 0.5 would indicate half-speed playback, for instance.
The amp.Player calling this function when setting, current playback rate when getting.
Get the el_ of AMP player
the el_ from the underlying player.
Set/Get the poster image source url.
myPlayer.poster('http://example.com/myImage.jpg');
var currentPoster = myPlayer.poster();
Poster image source URL when setting.
The amp.Player calling this function when setting, posterURL when getting.
Get and Set presentationLayout.
Gets the presentation time offset specified in the manifest ( In seconds ). Available only in DASH.
Bind a listener to the Player's ready state.
Different from event listeners in that if the ready event has already happened it will trigger the function immediately.
Ready handler
The amp.Player calling this function.
Remove an event listener from this Player's element.
myPlayer.removeEventListener('eventType', myFunc);
If myFunc is excluded, all listeners for the event type will be removed. If eventType is excluded, all listeners will be removed from the component.
The event type string. Use amp.eventName for the list of event types.
ex: amp.eventName.playing
Event handler.
The amp.Player calling this function.
Get whether or not the player is in the "seeking" state.
True if the player is in the seeking state, false if not.
Get an array of the calculated segment boundary start times in seconds.
Calculated segment boundaries
Sets active text Track.
The text track.
Set a factory to allow custom XMLHttpRequest creation logic.
Returns newly seen splices, evt: "splicewaiting"
Sets a single source to play. Use this method if you know the type of the source and only have one source.
myPlayer.src({ type: "video/mp4", src: "http://www.example.com/path/to/video.mp4" },
~~~
[{ kind: "captions" src: "http://example.com/path/to/track.vtt" srclang: "fr" label: "French"}]);
~~~
The amp.Player calling this function.
Sets multiple versions of the source to play so that it can be played using techs across browsers.
myPlayer.src([
{ type: "application/dash+xml", src: "http://www.example.com/path/to/video.ism(format=mpd-csf-time)" },
{ type: "application/dash+xml", src: "http://www.example.com/path/to/video.ism(format=mpd-time-csf)", protectionInfo: [{type: "AES", authenticationToken:"token"}] },
{ type: "application/dash+xml", src: "http://www.example.com/path/to/video.ism(format=mpd-time-csf)", disableUrlRewriter: true },
{ type: "application/dash+xml", src: "http://www.example.com/path/to/video.ism(format=mpd-time-csf)", streamingFormats: ["SMOOTH", "DASH"] },
{ type: "video/ogg", src: "http://www.example.com/path/to/video.ogv" }],
[{ kind: "captions" src: "http://example.com/path/to/track.vtt" srclang: "fr" label: "French"}]
~~ ); ~~~
The amp.Player calling this function.
Get an array of associated text tracks. captions, subtitles, chapters, descriptions http://www.w3.org/html/wg/drafts/html/master/embedded-content-0.html#dom-media-texttracks
Array of track objects
Used in live playback calculations. Given a time from the current playable window, returns the associated absolute time.
Example: If the playable window is 2 hours and the stream has been going for 3 hours, if you pass the playable window time of 00:00:00, the returned absolute time would be 01:00:00 (1 hour).
the presentation time in seconds
Gets the video buffer information
], undefined if not available
Get the videoHeight of the player.
Video height of the player.
Get the videoWidth of the player.
Video width of the player.
Set/Get volume of the source.
myPlayer.volume(0.5); // Set volume to half
0 is off (muted), 1.0 is all the way up, 0.5 is half way.
New volume as a decimal (0 to 1.0).
The amp.Player calling this function when setting, current volume when getting.
Set/Get width of the component (CSS values).
Setting the video tag dimension values works with values in pixels, % or 'auto'.
The amp.Player calling this function when setting, pixels when getting.
The presentation layout defines the three logical regions where ads can be inserted. All regions are optional.
An insertion opportunity in the current presentation.
Set to true indicates that a previously sent splice event should be cancelled. Defaults to false.
Duration of the splice event, in seconds.
Splice unique identifier.
Splice signal is an opportunity to exit from current clip.
Start time of the splice event as an offset from the beginning of the current clip in seconds. -1 if this is an immediate splice.
Interface describing a time range
Video stream properties and functions
codec of video stream
Name of video stream
Array of video tracks
Method to add a listener to an event
string of event name, available events are defined in amp.streamEventName
handler that is called when event occurs
Method to remove a listener from an event
string of event name, available events are defined in amp.streamEventName
handler that should be removed
Select single track playback by tracks index. When selection has been honored, "changed" event will fire.
Index from tracks. If -1, enable auto switching heuristics.
Video stream list, returned from amp.Player.currentVideoStreamList
Video stream that is currently selected, for multi video streams, only 1 stream can be selected
Array of available video streams
Video track properties and functions
Returns the bitrate of the track in bits per second
Returns the height of the track
Returns whether the track is currently selectable for download
Returns the width of the track
Interface describing factory method for creation of XmlHttpRequestWrapper.
Interface describing a HttpRequest.
CORS setting values.
BufferData Events from amp.Player.videoBufferData or amp.Player.audioBufferData
Download of media has been completed from amp.Player.videoBufferData or amp.Player.audioBufferData
Download of media has been decrypted from amp.Player.videoBufferData or amp.Player.audioBufferData. Happens only for AES.
Download of media has failed from amp.Player.videoBufferData or amp.Player.audioBufferData
Download of media has been requested from amp.Player.videoBufferData or amp.Player.audioBufferData
Downloadable media types for amp.Player.DownloadableMediaFile
Media type is an audio file
Media type is a transcript file
Media type is a video file
Media type is a video file with closed captions overlaid on the video
Error codes for amp.MediaError.code for bits 27-0.
MEDIA_ERR_ABORTED errors end value (0x001FFFFF).
The page is loaded over HTTPS, but the source is set to serve over HTTP. The content must be served over HTTPS when the page is loaded over HTTPS (0x00100002).
Abort error, not implemented (0x00100001).
MEDIA_ERR_ABORTED errors start value (0x00100000).
Generic abort error (0x00100000).
MEDIA_ERR_DECODE errors end value (0x003FFFFF).
MEDIA_ERR_DECODE errors start value (0x00300000).
Generic decode error (0x00300000).
Certificate fetch failed (0x00500007).
Decryptor initialization error (0x00500002).
Decryptor not found (0x00500001).
Decryptor not supported (0x00500003).
Decryption of segment failed (0x00500005).
MEDIA_ERR_ENCRYPTED errors end value (0x005FFFFF).
Key acquire failed (0x00500004).
License acquire failed (0x00500006).
MEDIA_ERR_ENCRYPTED errors start value (0x00500000).
Generic encrypted error (0x00500000).
Unknown errors (0x0FF00000).
Request aborted (0x0020025A).
MEDIA_ERR_NETWORK errors end value (0x002FFFFF).
Connection error (0x00200259).
Http 502 error response (0x002001F6).
Http 400 error response (0x00200190).
Http 504 error response (0x002001F8).
Http 410 error response (0x0020019A).
Http 500 error response (0x002001F4).
Http 405 error response (0x00200195).
Http 412 error response (0x0020019C).
Http error response start value (0x00200190).
Http error response end value (0x00200257).
Http 503 error response (0x002001F7).
Http 404 error response (0x00200194).
Http 401 error response (0x00200191).
Http 403 error response (0x00200193).
Client is offline (0x0020025B).
MEDIA_ERR_NETWORK errors start value (0x00200000).
Network timeout error (0x00200258).
Generic network error (0x00200000).
MEDIA_ERR_SRC_NOT_SUPPORTED errors end value (0x004FFFFF).
Invalid segment (0x00400004).
Segments not available yet (0x00400005).
Presentation parse error (0x00400001).
Segment parse error (0x00400002).
MEDIA_ERR_SRC_NOT_SUPPORTED errors start value (0x00400000).
Generic source not supported error (0x00400000).
Presentation not supported (0x00400003).
SRC_PLAYER_MISMATCH errors end value (0x006FFFFF).
Flash plugin is not installed, if installed the source may play (0x00600001). Note: If 0x00600003, both Flash and Silverlight are not installed.
Silverlight plugin is not installed, if installed the source may play (0x00600002). Note: If 0x00600003, both Flash and Silverlight are not installed.
SRC_PLAYER_MISMATCH errors start value (0x00600000).
Generic source and tech player error (0x00600000).
Event types from amp
Buffer has met pre-roll level. Note: There are some variation across techs. On Html5 tech, this event is only raised for the first set source, if source is set again on the same player, this event will not occur again.
[[amp.Player.click]] User clicked on video frame.
[[amp.Player.complete]] Playback reached end. Synonym of 'ended'
The decryptor has initialized in AES Handler.
amp.Player.dispose was called.
amp.Player.currentDownloadBitrate property has changed.
amp.Player.duration property has changed.
emsg boxes are available by examining the event [[amp.Player.emsgAvailable]]. Available only in DASH
myPlayer.addEventListener(amp.eventName.emsgAvailable, function (event, info) {
// emsg boxes are in info.data
});
amp.Player.ended property has changed.
Error occurred, playback will stop, check amp.Player.error property.
[[amp.Player.errorInPlayingAd]] player encountered an error when playing an advertisement clip.
[[amp.Player.exitfullscreen]] Player has exited fullscreen mode.
[[amp.Player.firstquartile]] Playback reached first quartile.
[[amp.Player.fullscreen]] Player has entered fullscreen mode.
amp.Player.isFullscreen property has changed.
[[amp.Player.livestartupretry]] player encountered an retry while trying to play a live content, and being retried.
Media data has been rendered for the first time.
amp.Player.currentVideoStreamList maybe available.
Playback is looking for media data.
[[amp.Player.midpoint]] Playback reached middle.
[[amp.Player.mute]] Playback was muted.
Playback has paused, check amp.Player.paused property.
Play function has begun.
amp.Player.currentPlaybackBitrate property has changed.
Play function has completed, check amp.Player.paused property.
amp.Player.playbackRate property has changed.
[[amp.Player.resume]] Player started after a pause.
[[amp.Player.rewind]] Playback was rewound.
Seek has complete, check amp.Player.seeking property.
Seek has begun.
[[amp.Player.skip]] Skip UI control was used.
App has set the source. SDN plugins should wait for this event before modifying amp.Player.Options.sourceList.
amp.Player.spliceWaiting msg was received.
[[amp.Player.start]] Playback started.
[[amp.Player.thirdquartile]] Playback reached third quarter.
amp.Player.currentTime property has changed.
[[amp.Player.unmute]] Player was unmuted.
amp.Player.volume property has changed.
Playback has been paused to build a low buffer.
Protection types for amp
Source is AES envelope encrypted.
Source is FairPlay encrypted.
Source is PlayReady encrypted.
Source is Widevine encrypted.
Stream Event types from amp.Player.currentVideoStreamList
Track has been selected in amp.Player.currentVideoStreamList
Stream Event types from amp.Player.currentAudioStreamList
Index chosen did not exist in the list of audio streams in amp.Player.currentAudioStreamList
Stream has been selected in amp.Player.currentAudioStreamList
Currently, stream selection is only supported when single stream is enabled in amp.Player.currentAudioStreamList
Function to register plugins
API of Azure Media Player (amp), use azuremediaplayer.d.ts if caller is using TypeScript.