Skip to main content

Class: Player

Defined in: src/player/Player.ts:60

Constructors​

Constructor​

new Player(container, options): Player

Defined in: src/player/Player.ts:93

Parameters​

container​

HTMLElement

options​

PlayerOptions = {}

Returns​

Player

Accessors​

interactiveSlides​

Get Signature​

get interactiveSlides(): boolean

Defined in: src/player/Player.ts:448

Whether the scene stays interactive while paused on a slide.

Returns​

boolean


isPlaying​

Get Signature​

get isPlaying(): boolean

Defined in: src/player/Player.ts:231

Whether playback is active.

Returns​

boolean


loop​

Get Signature​

get loop(): boolean

Defined in: src/player/Player.ts:236

Whether playback restarts from the beginning when it reaches the end.

Returns​

boolean

Set Signature​

set loop(value): void

Defined in: src/player/Player.ts:241

Enable or disable looping. The render loop reads this flag live.

Parameters​
value​

boolean

Returns​

void


scene​

Get Signature​

get scene(): Scene

Defined in: src/player/Player.ts:221

Get the underlying scene for direct manipulation.

Returns​

Scene


timeline​

Get Signature​

get timeline(): MasterTimeline

Defined in: src/player/Player.ts:226

Get the master timeline.

Returns​

MasterTimeline

Methods​

dispose()​

dispose(): void

Defined in: src/player/Player.ts:583

Clean up all resources.

Returns​

void


exportAs()​

exportAs(format, settings?): Promise<void>

Defined in: src/player/Player.ts:478

Export the animation in the given format (gif, webm, mp4).

For video (webm/mp4) the frame-accurate WebCodecsExporter is used when the browser supports it; otherwise it falls back to the MediaRecorder VideoExporter via Scene.export. GIF always uses Scene.export.

Parameters​

format​

string

Output format: gif, webm or mp4.

settings?​

ExportSettings

Optional fps/resolution/quality from the export panel. When omitted, the exporter keeps its format defaults.

Returns​

Promise<void>


nextSegment()​

nextSegment(): void

Defined in: src/player/Player.ts:314

Jump to the next navigable unit.

  • slidesMode: navigates by Slide. Plays through the current slide to its end, then pauses (or rewinds / auto-advances per the slide's loop / autoNext flags). Multi-play slides are atomic units.
  • non-slidesMode: navigates by Segment — one play()/wait() per press, preserving the original per-segment UX.

Returns​

void


nextSlide()​

nextSlide(): void

Defined in: src/player/Player.ts:331

Alias for nextSegment. In slidesMode navigates by slide; otherwise by segment.

Returns​

void


pause()​

pause(): void

Defined in: src/player/Player.ts:263

Pause playback.

Returns​

void


play()​

play(): void

Defined in: src/player/Player.ts:246

Start playback from current position.

Returns​

void


prevSegment()​

prevSegment(): void

Defined in: src/player/Player.ts:341

Jump to the previous navigable unit. Same per-mode semantics as nextSegment.

Returns​

void


prevSlide()​

prevSlide(): void

Defined in: src/player/Player.ts:336

Alias for prevSegment. In slidesMode navigates by slide; otherwise by segment.

Returns​

void


seek()​

seek(time): void

Defined in: src/player/Player.ts:286

Seek to a specific time in seconds. If the new time stays inside the currently-targeted slide (slidesMode), the loop / target armed state is preserved — scrubbing within a looping slide should not silently kill the loop. Seeking outside the targeted slide drops both states so the next render tick doesn't snap back to the old slide.

Parameters​

time​

number

Returns​

void


sequence()​

sequence(builder): Promise<void>

Defined in: src/player/Player.ts:191

Define the animation sequence. The callback receives a recording proxy that captures all play()/wait() calls to build the master timeline.

Parameters​

builder​

(scene) => Promise<void>

Returns​

Promise<void>


setInteractiveSlides()​

setInteractiveSlides(enabled): void

Defined in: src/player/Player.ts:457

Enable or disable interactive slides at runtime. When enabled, a paused slide renders on pointer interaction (drag/click/hover) without advancing the timeline. When disabled, the idle-render path is removed.

Parameters​

enabled​

boolean

Returns​

void


setPlaybackRate()​

setPlaybackRate(rate): void

Defined in: src/player/Player.ts:433

Set the playback speed multiplier.

Parameters​

rate​

number

Returns​

void


setSlidesMode()​

setSlidesMode(enabled): void

Defined in: src/player/Player.ts:438

Enable or disable slides (presentation) mode at runtime.

Parameters​

enabled​

boolean

Returns​

void


toggleFullscreen()​

toggleFullscreen(): void

Defined in: src/player/Player.ts:563

Toggle browser fullscreen on the player container.

Returns​

void


togglePlayPause()​

togglePlayPause(): void

Defined in: src/player/Player.ts:271

Toggle between play and pause.

Returns​

void