Skip to main content

Player Methods Reference

Playback Management Methods

play()

Requesting the video to play.

Returns: void

player.play();

pause()

Requesting the video to pause.

Returns: void

player.pause();

seek(time)

Seeks to a specific time (seconds)

ValueDescription
time numberTime in seconds that you want to seek to.

Returns: void

player.seek(10);

catchLive()

Seeks to the end of the seekable range in live videos.

Returns: void

player.catchLive();

setVolume(volume)

Sets the volume of the player to the given value

ValueDescription
volume numberA value between 0 and 1

Returns: void

player.setVolume(number);

setMuted(muted)

Sets the muted setting of the player to the given value

ValueDescription
muted booleanWhether you want the video to be muted or not

Returns: void

player.setMuted(boolean);

getPlaybackSpeed()

Gets the playback speed

Returns: number

player.getPlaybackSpeed();

setPlaybackSpeed(number)

Sets the playback speed

Returns: void

player.setPlaybackSpeed(number);

setAutoplay(autoplay)

Sets the autoplay setting of the player to the given value

ValueDescription
autoplay booleanAutoplay value you want to set

Returns: void

player.setAutoplay(true);

setPoster(url)

Sets the video poster URL

ValueDescription
url stringPoster URL value you want to set

Returns: void

player.setPoster("https://picsum.photos/640/360");

requestFullscreen()

Requests fullscreen mode for the player

Returns: void

player.requestFullscreen();

requestPictureInPicture()

Requests Picture-in-Picture mode for

Returns: void

player.requestPictureInPicture();

Playback Status Methods

getDuration()

Gets video duration

Returns: number

player.getDuration();

getCurrentTime()

Gets current playback time

Returns: number

player.getCurrentTime();

isPaused()

Returns a boolean indicating whether the player is paused

Returns: boolean

player.isPaused();

getPoster()

Gets the video poster URL

Returns: string

player.getPoster();

getVideoType()

Returns the type of video ("VOD" or "LIVE")

Returns: lura.enums.LuraVideoType

player.getVideoType();

isAutoplay()

Returns the autoplay setting of the player

Returns: boolean

player.isAutoplay();

isMuted()

Returns a boolean indicating whether the player is muted

Returns: boolean

player.isMuted();

getVolume()

Returns the current volume of the player

Returns: number

player.getVolume();

isContentEnded()

Returns a boolean indicating whether the media content has ended

Returns: boolean

player.isContentEnded();

Ad Management Methods

skipAd()

Skips the current ad

Returns: void

player.skipAd();

getAdBreakPositions()

Gets ad break positions

Returns: Array<number>

player.getAdBreakPositions();

Configuration Methods

getConfig()

Returns the configuration object of the player

Returns: lura.configurations.ConfigData

player.getConfig();

loadConfig(config)

Loads video source

ValueDescription
config lura.configurations.ConfigDataIf media stays the same, updates metadata, if media changes destroys and reinitializes

Returns: Promise<void>

player.loadConfig({
content: {
media: [
{url: "https://www.example.com/example.mpd", "application/xml+dash"}
]
}
});

destroy()

Destroys the player, disconnects all events, cleanup resources

Returns: void

player.destroy();

reload()

Destroys the player, and reloads the current config.

Returns: void

player.reload();

Plugin Management

getPlugins()

Returns an array of all plugins of the player

Returns: Array<lura.plugins.Plugin>

player.getPlugins();

getPluginByName(name)

Returns the plugin with the given name.

ValueDescription
name stringThe return of the getName() method of the plugin you want to get.

Returns: lura.plugins.Plugin

player.getPluginByName("PALPlugin");

addPlugin(plugin)

Adds your custom plugin to the player

ValueDescription
plugin lura.plugins.PluginYour custom created plugin following pluginClazz interface.

Returns: void


class myCustomPlugin {
private player: lura.Player;
constructor(player: lura.Player) {
this.player = player;
}
getName() {
return "myCustomPlugin";
}
}

player.addPlugin(myCustomPlugin);

getOrCreatePlugin(plugin)

Returns the plugin with the given plugin class if created, or creates a new one

ValueDescription
plugin lura.plugins.PluginYour custom created plugin following pluginClazz interface.

Returns: lura.plugins.Plugin

class myCustomPlugin {
private player: lura.Player;
constructor(player: lura.Player) {
this.player = player;
}
getName() {
return "myCustomPlugin";
}
}

player.getOrCreatePlugin(myCustomPlugin);

Track Management

isAutoBitrate()

Returns a value representing if auto bitrate switching is enabled or not. (For IOS this is always true)

Returns: boolean

player.isAutoBitrate();

setAutoBitrate(autoBitrate)

Sets the automatic bitrate switching property (Ignored on IOS, ABR is always enabled).

ValueDescription
autoBitrate booleanEnable ABR

Returns: void

player.setAutoBitrate(true);

Others

getCueManager()

Returns the cue manager of the player

Returns: lura.interstitials.CueManager

player.getCueManager();

getMetadata()

Returns the metadata of the media

Returns: lura.metadata.VideoMetadata

player.getMetadata();

addEventListener(type, callback, options?)

Adds an event listener to the player

ValueDescription
type lura.enums.LuraPlayerEventsThe event you want to listen
callback (e: lura.events.LuraEvent) => voidThe callback function when the event is dispatched
options undefined | lura.events.EventListenerOptionsAdditional options

Returns: void

player.addEventListener(type: lura.enums.LuraPlayerEvents, callback: (e: lura.events.LuraEvent) => void, options?: lura.events.EventListenerOptions)

dispatchEvent(lura.enums.LuraPlayerEvents)

Dispatches an event from the player

Returns: void

player.dispatchEvent(lura.enums.LuraPlayerEvents);

removeEventListener(type: lura.enums.LuraPlayerEvents, callback: (e: lura.events.LuraEvent) => void)

Removes an event listener from the player

Returns: void

player.removeEventListener(type: lura.enums.LuraPlayerEvents, callback: (e: lura.events.LuraEvent) => void)

getElement()

Returns the HTML element of the player

Returns: HTMLElement

player.getElement();

getProvider()

Returns the media provider object of the player

Returns: lura.providers.VirtualProvider

player.getProvider();

getPreviewMatrix()

Returns the preview matrix of the media

Returns: lura.base.PreviewMatrix

player.getPreviewMatrix();

getMediaFormat()

Returns the format of the media (e.g. "mp4", "m3u8-variant")

Returns: lura.enums.LuraMediaFormat

player.getMediaFormat();

getCaptionManager()

Returns the caption manager of the player

Returns: lura.tracks.CaptionManager

player.getCaptionManager();

getAudioManager()

Returns the audio manager of the player

Returns: lura.tracks.AudioManager

player.getAudioManager();

getLiveSyncPosition()

Gets live sync position

Returns: number

player.getLiveSyncPosition();

getNativeBufferedEnd()

Gets native buffered end

Returns: number

player.getNativeBufferedEnd();

getBufferedEnd()

Gets buffered end

Returns: number

player.getBufferedEnd();

getNativeBufferedStart()

Gets native buffered start

Returns: number

player.getNativeBufferedStart();

getBufferedStart()

Gets buffered start

Returns: number

player.getBufferedStart();

isLoading()

Indicates if player is loading

Returns: boolean

player.isLoading();

timeWithoutAds(number)

Gets time without ads (seconds)

Returns: number

player.timeWithoutAds(number);

timeWithAds(number)

Gets time with ads (seconds)

Returns: number

player.timeWithAds(number);