Skip to main content

Player

Represents the native player and provides methods for its control.

Getter methods do not rely on the React Native bridge; they return cached values instead. Cached values are updated via the event pipeline. Setter methods use the React Native bridge to modify the native player.

Extends

  • default

Implements

  • default

Methods

addEventListener()

addEventListener(eventType, callback): void

Parameters

ParameterType
eventTypeEventType
callbackEventCallback

Returns

void

Inherited from

BaseEventEmitter.addEventListener


destroy()

destroy(): Promise<void>

Returns

Promise<void>


enterPictureInPictureMode()

enterPictureInPictureMode(): Promise<void>

Returns

Promise<void>


exitPictureInPictureMode()

exitPictureInPictureMode(): Promise<void>

Returns

Promise<void>


getDuration()

getDuration(): number

Returns the duration of the current stream in milliseconds.

Returns

number


getExtension()

getExtension<T>(extensionClass): T

Returns the extension of the specified type.

Throws the ErrorCode.PlayerExtensionNotFound error if the extension is not found.

Type Parameters

Type Parameter
T extends PlayerExtension<T>

Parameters

ParameterTypeDescription
extensionClassPlayerExtensionConstructor<T>The extension class.

Returns

T


getFatalError()

getFatalError(): null | PrestoPlayError

Returns the last fatal error that occurred.

Returns

null | PrestoPlayError


getPlaybackRate()

getPlaybackRate(): number

Returns the current playback speed, where 1 represents 'normal' speed.

Returns

number


getPosition()

getPosition(): number

Returns the current playback position in milliseconds.

Returns

number


getState()

getState(): PlayerState

Returns the current player state.

Returns

PlayerState


getTrackManager()

getTrackManager(): TrackManager

Returns the track manager.

Returns

TrackManager


getVolume()

getVolume(): number

Returns

number


isLive()

isLive(): boolean

Returns whether the player is playing a live stream.

Returns

boolean


isMuted()

isMuted(): boolean

Returns

boolean


isPictureInPictureMode()

isPictureInPictureMode(): boolean

Returns

boolean


isPlayWhenReady()

isPlayWhenReady(): boolean

Returns

boolean


open()

open(playerConfiguration): Promise<void>

Parameters

ParameterType
playerConfigurationPlayerConfiguration

Returns

Promise<void>


pause()

pause(): Promise<void>

Returns

Promise<void>


play()

play(): Promise<void>

Returns

Promise<void>


removeEventListener()

removeEventListener(eventType, callback): void

Parameters

ParameterType
eventTypeEventType
callbackEventCallback

Returns

void

Inherited from

BaseEventEmitter.removeEventListener


replay()

replay(): Promise<void>

Returns

Promise<void>


setMuted()

setMuted(newMuted): Promise<void>

Parameters

ParameterType
newMutedboolean

Returns

Promise<void>


setPlaybackRate()

setPlaybackRate(newPlaybackRate): Promise<void>

Set the playback speed, where 1 represents 'normal' speed.

Note that setting speed for the online playback with high video quality may result in video stuttering/lagging, and it is advised to disable the ABR by setting one of the low video qualities before changing the playback speed.

Parameters

ParameterTypeDescription
newPlaybackRatenumberThe new speed at which the video is being played.

Returns

Promise<void>

Remarks

On Android, when the requested speed is different from 1, then the audio is disabled and otherwise is enabled automatically. On iOS, when the requested speed is higher than 2, then the audio is disabled.


setPosition()

setPosition(newPosition): Promise<void>

Seeks to a new position.

Parameters

ParameterTypeDescription
newPositionnumberNew position in milliseconds.

Returns

Promise<void>


setVolume()

setVolume(newVolume): Promise<void>

Parameters

ParameterType
newVolumenumber

Returns

Promise<void>


stop()

stop(): Promise<void>

Returns

Promise<void>


supportsPictureInPicture()

supportsPictureInPicture(): Promise<undefined | boolean>

Returns

Promise<undefined | boolean>