Skip to main content

RenderSession

The RenderSession class provides an async iterable interface for frame-by-frame rendering. It handles seeking to each frame and waiting for stability before yielding.

Constructor parameters

Helios
required
The Helios instance to render.
RenderSessionOptions
required
Configuration for the render session.

Methods

() => AsyncIterator<number>
Returns an async iterator that yields frame numbers. Each iteration seeks to the next frame and waits for stability.

RenderSessionOptions

Configuration options for creating a render session.
number
required
Starting frame number. Must be non-negative.
number
required
Ending frame number (inclusive). Must be >= startFrame.
AbortSignal
Optional abort signal for canceling the render session.

HeliosTimeline

Defines a multi-track timeline structure for compositions.
HeliosTrack[]
Array of timeline tracks.

HeliosTrack

Represents a single track in the timeline.
string
Unique track identifier.
string
Optional human-readable track name.
HeliosClip[]
Array of clips in this track.

HeliosClip

Represents a clip within a track.
string
Unique clip identifier.
string
Source identifier or composition reference.
number
Start time in seconds within the timeline.
number
Clip duration in seconds.
number
Optional track number for layering.
Record<string, any>
Optional properties passed to the clip composition.

HeliosComposition

Extends HeliosConfig with timeline support for multi-layer compositions.
Inherits all fields from HeliosConfig.
HeliosTimeline
Optional timeline definition with tracks and clips.

StabilityCheck

Callback type for custom stability checks.
Stability checks are async functions that resolve when a custom system is ready. Used with helios.registerStabilityCheck() to block waitUntilStable() until external operations complete.

DiagnosticReport

Runtime capability detection report.
Generated by Helios.diagnose(). All codec support fields are boolean values indicating availability.
boolean
Web Animations API support (document.timeline).
boolean
WebCodecs API support.
boolean
OffscreenCanvas support.
boolean
WebGL 1.0 support.
boolean
WebGL 2.0 support.
boolean
Web Audio API support.
'srgb' | 'p3' | 'rec2020' | null
Highest supported color gamut.
object
Video encoding support for h264, vp8, vp9, and av1.
object
Audio encoding support for aac and opus.
object
Video decoding support for h264, vp8, vp9, and av1.
object
Audio decoding support for aac and opus.
string
Browser or runtime user agent string.

Usage examples

Render session

Timeline composition

Diagnostic check