FilmstripError
Every way a Filmstrip operation can fail, as branchable values.
Planning and running an export, probing a source, reading capabilities, encoding a still and drawing a frame or a thumbnail all report one of these. A player reports a PlaybackError instead, and where its preview is planned or read through the same lowering an export uses, the failure that lowering gives is mapped onto a PlaybackError arm.
Nothing in filmstrip's public API throws one of these. Every entry point returns a sealed result carrying the error instead. Cancellation is not an arm: cancelling the collecting scope cancels the export and propagates a CancellationException.
This hierarchy is open: a backend filmstrip has not shipped yet will fail in ways this list does not name, so arms arrive in minor versions and an exhaustive when over them will break.
Inheritors
Types
A backend that this operation needs was not registered.
A decoder rejected the source while being configured, before any transcoding started.
Not enough free space to write the output.
Apple only: hardware codec access was revoked because the app was suspended.
The composition does not describe a valid graph: instructions that do not tile the timeline, a clip with no readable track, a crop with no area.
The device has no encoder for the requested codec.
A caller-supplied effect is implemented on one platform and not the other.
The destination could not be opened or written.
The source is DRM-protected or otherwise not exportable.
The source could not be opened or read.
An external program this backend drives was not found, or is too old to use.
A platform failure filmstrip could not classify, with whatever code the platform gave.
An effect renders on one path but not the other, so it is refused rather than classified.
No resolver claimed an effect on this platform.
The requested resolution exceeds what the encoder publishes.
This target cannot write the still image format that was asked for.