Usage notes
Provide timeline sources, a canvas ref for visual frames, and named active layer selectors. The hook creates a MediabunnyAdapter, uses useTimelineMediaSync for external-clock playback, and keeps decoded frames and audio scheduling aligned with the timeline playhead.
Signature
Interface UseMediabunnyTimelineMediaOptionsType parameters
| Name | Constraint | Default | Description |
|---|---|---|---|
LayerName | string | string | Named media layer keys inferred from `layers`, such as
`"visuals" | "audio"`. |
Properties
| Name | Signature | Description |
|---|---|---|
audio? | audio?: MediabunnyTimelineAudioOptions | Audio scheduling options for source playback. |
audioTrackKinds? | audioTrackKinds?: typeOperator | Track kinds the adapter should treat as audio scheduling sources. Defaults to `["audio"]`. |
canvasRef? | canvasRef?: RefObject<HTMLCanvasElement | null> | Canvas ref that receives decoded visual frames. |
frameRate? | frameRate?: TimecodeFrameRate | Optional sequence frame rate used to lock media playback to project frames. |
layers | layers: Record<LayerName, ActiveLayerSelector> | Named active layer selectors used by the external media surface. |
mediabunny? | mediabunny?: __module | () => Promise<__module> | Mediabunny module instance or lazy browser loader. Defaults to a browser import. |
onError? | (message: string): void | Called when no content exists or no active layer clip is available. |
sources | sources: typeOperator | Media sources keyed by the `sourceId` values used by timeline clips. |
visualTrackKinds? | visualTrackKinds?: typeOperator | Track kinds the adapter should treat as visual frame sources. Defaults to `["visual"]`. |