Player
class Player
The player logic used by the editor and embeddable player.
This class builds on top of the PlaybackManager to provide a simple
interface similar to other media players. It plays through the animation
using a real-time update loop and optionally synchronises it with audio.
Constructors​
constructor​
public new Playerproject: Projectsettings: PartialPlayerSettings = {}initialState: PartialPlayerState = {}initialFrame: number = -1: Player
Parameters
project: Projectsettings: PartialPlayerSettings = {}initialState: PartialPlayerState = {}initialFrame: number = -1
Properties​
audio​
readonly public audio: AudioManager
audioPool​
readonly public audioPool: AudioManagerPool
audioResources​
readonly public audioResources: AudioResourceManager
logger​
playback​
readonly public playback: PlaybackManager
status​
readonly public status: PlaybackStatus
Accessors​
onDurationChanged​
public get onDurationChanged(): SubscribableValueEventnumber
onFrameChanged​
public get onFrameChanged(): SubscribableValueEventnumber
onStateChanged​
public get onStateChanged(): SubscribableValueEventPlayerState
Events​
onRecalculated​
public get onRecalculated(): SubscribablevoidEventHandlervoid
Triggered right after recalculation finishes.
Can be used to provide visual feedback.
onRender​
public get onRender(): SubscribablevoidAsyncEventHandlervoid
Triggered during each iteration of the update loop when the frame is ready to be rendered.
Player does not perform any rendering on its own. For the animation to be
visible, another class must subscribe to this event and perform the
rendering itself. Stage can be used to display the animation.
Methods​
activate​
public activate(): void
Activate the player.
A player needs to be active in order for the update loop to run. Each player is active by default.
addAudioVolume​
public addAudioVolumevalue: number: void
Parameters
value: number
clampRange​
public clampRangeframe: number: number
Parameters
frame: number
configure​
public configuresettings: PlayerSettings: Promisevoid
Parameters
deactivate​
public deactivate(): void
Deactivate the player.
Deactivating the player prevents its update loop from running. This should be done before disposing the player, to prevent it from running in the background.
Just pausing the player does not stop the loop.
isInRange​
public isInRangeframe: number: boolean
Whether the given frame is inside the animation range.
Parameters
frame: numberThe frame to check.
isInUserRange​
public isInUserRangeframe: number: boolean
Whether the given frame is inside the user-defined range.
Parameters
frame: numberThe frame to check.
requestNextFrame​
public requestNextFrame(): void
requestPreviousFrame​
public requestPreviousFrame(): void
requestRender​
public requestRender(): void
requestReset​
public requestReset(): void
requestSeek​
public requestSeekvalue: number: void
Parameters
value: number
setAudioVolume​
public setAudioVolumevalue: number: void
Parameters
value: number
setSpeed​
public setSpeedvalue: number: void
Parameters
value: number
setVariables​
public setVariablesvariables: Recordstringunknown: void
Parameters
variables: Recordstringunknown
toggleAudio​
public toggleAudiovalue: boolean = ...: void
Parameters
value: boolean = ...
toggleLoop​
public toggleLoopvalue: boolean = !this.playerState.current.loop: void
Parameters
value: boolean = !this.playerState.current.loop
togglePlayback​
public togglePlaybackvalue: boolean = ...: void
Parameters
value: boolean = ...