RenderManifest class final

The capture sandbox's completion signal and encode plan, written last (after the frames file is complete) as manifest.json.

This is the single source of ffmpeg-arg truth: the capture side embeds the complete encode argument array, every path in it sandbox-relative, and the CLI spawns ffmpeg with exactly ffmpegArgs — it never composes arguments itself. RenderManifest.fromJson rejects an unknown schemaVersion so a capture/CLI version skew fails loudly instead of encoding garbage.

Annotations

Constructors

RenderManifest({required int width, required int height, required int fps, required int frameCount, required String framesFileName, required String outputFileName, required String renderDigest, required List<String> ffmpegArgs, List<String>? posterArgs, String? posterFileName})
Creates a manifest describing one completed capture.
RenderManifest.fromJson(Map<String, Object?> json)
Reads a manifest from its toJson form.
factory

Properties

ffmpegArgs List<String>
The complete, validated ffmpeg encode argument array (unmodifiable); every file reference in it is sandbox-relative.
final
fps int
Frames per second of the encode.
final
frameCount int
How many frames the frames file holds.
final
framesFileName String
Sandbox-relative name of the raw RGBA frames file (frames.rgba).
final
hashCode int
The hash code for this object.
no setteroverride
height int
Frame height in pixels.
final
outputFileName String
Sandbox-relative name of the encoded output (out.mp4).
final
posterArgs List<String>?
The SECOND ffmpeg invocation extracting the poster still (unmodifiable), or null when the composition declares no Video.poster.
final
posterFileName String?
Sandbox-relative name of the poster still (poster.png), or null when there is no poster.
final
renderDigest String
The render digest the frame cache keyed this capture under.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
width int
Frame width in pixels.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() Map<String, Object?>
The JSON form, with schemaVersion first. The poster keys appear only when a poster is present, so a no-poster manifest is byte-identical to a pre-poster one.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
override

Constants

schemaVersion → const int
The manifest schema this library writes and reads.