Optional ReadonlyframeExact frame timing when the media source provides an index; null otherwise.
Optional ReadonlyframeIndexed moves and observable scrub landings for push-based indexed sources.
Optional ReadonlydetectionDetection source used by the renderer. Present when the session was created with static frames, a source, or an appendable source.
ReadonlymediaReadonlyrendererOptionalsetResize an engine-backed display-box source and await its presented output.
Append semantic detection frames to the selected writable source, supplied
by the caller or created through detections.appendable.
Optionaloptions: MediaSessionDetectionWriteOptionsOptionaloptions: MediaSessionDetectionWriteOptionsOptionaloptions: MediaSessionDetectionWriteOptionsSummary of frames written through appendDetectionFrames, when available.
Optionaloptions: MediaSessionDetectionWriteOptionsRe-read semantic detections and redraw the current presentation.
Encodes the media frame the session is currently presenting.
The session keeps decode and render ownership; hosts receive an encoded image of the raw media pixels plus the presentation timestamp of that exact frame. Defaults to JPEG.
Optionaloptions: MediaFrameCaptureOptionsOptionalsetReplaces the session's depth, or removes it with null, and redraws the
frame on screen. Resolves once the renderer has that depth, and rejects
with the reason a manifest did not load; the media keeps playing
meanwhile. session.renderer.getActiveDepth() reads back what is drawn.
Append the newest live detection frame to the selected writable source.
The frame stays active until the next live frame supersedes it, which is
closed at the new frame's mediaTime. Use this for streams whose producer
only knows that its latest result is current.
Optionaloptions: MediaSessionDetectionWriteOptionsClose the appendable source's final coverage at the end of media.
endTime defaults to the renderer's reported media duration. Calling it
again is a no-op. Use it when a producer has finished, so the source stops
answering for the terminal sliver a container can declare beyond the last
decoded sample. What the sliver would otherwise strand is a waitForRange
caller, and an enabled detection playback gate along with it.
OptionalendTime: numberOptionaloptions: MediaSessionDetectionWriteOptions
Media session that also exposes live detection ingestion.
createMediaSessionreturns this shape. The members it requires are optional on MediaSession, so live ingestion is an added capability rather than a required one.