ReadonlyrendererReadonlyplaybackReadonlyfitOptional ReadonlypresentedReadonlycurrentReadonlyplaybackReadonlydurationReadonlymediaReadonlymediaReadonlypresentedReadonlyactiveReadonlyactiveReadonlyactiveOptional ReadonlydrawnDetection frame the mask raster on screen belongs to, null when no mask is
up. A renderer should either name activeDetectionFrameTime or draw no
raster; another value exposes a presentation invariant breach.
Optional ReadonlyplaybackHow far the active playback gates reach on the source this renderer opened.
Optional ReadonlyrenderThe render-preparation gate stopped playback for artifacts that never arrived and gave up on them, so the picture is moving without them. False again once preparation covers the playhead.
Optional ReadonlymaskWhether the raster on screen belongs to a frame other than the one the rest of the annotations were drawn from. Renderers report the mismatch instead of hiding it so diagnostics can fail loudly.
Optional ReadonlyseekingWhether the playhead has been moved to a frame that is not on screen yet.
playbackState cannot answer this: it keeps reporting what the transport
settled on before the seek, so a seek of any length reads as paused or
playing.
A scrub sets this on every tick, so a host that draws it owes the viewer a
delay before it appears, and owes them scrubbing too: a viewer dragging
the playhead is not waiting for the picture, they are leading it.
It answers for the transport, which settles one message before the frame it landed on reaches this thread. In that window the picture on screen is the cached stand-in the seek painted on its way out, which can be a quarter of a second from the frame requested, while this already reads false. A host that needs "is the right picture up" should compare the presented frame's own media time; reading a position the instant a seek resolves can return a frame that was never asked for.
Optional ReadonlyscrubbingWhether a drag is open on the playhead. True from the first scrub of a gesture until the seek that lands it, which is what separates a viewer leading the picture from one waiting on it.
ReadonlydetectionReadonlylastReadonlysource
Media time of the pixels currently composited, or
nullbefore the first frame reaches the scene. UnlikecurrentTime, this does not move when a producer advances its playhead ahead of the picture under load.