One parsed ffmpeg -progress update emitted by FFix.Runner.
The common fields are exposed directly, while the original key/value payload is
kept in fields for callers that need something more specific.
Summary
Types
@type status() :: :continue | :end | String.t()
@type t() :: %FFix.Runner.Progress{ bitrate: String.t() | nil, drop_frames: non_neg_integer() | nil, dup_frames: non_neg_integer() | nil, fields: map(), fps: float() | nil, frame: non_neg_integer() | nil, out_time: String.t() | nil, out_time_ms: non_neg_integer() | nil, out_time_us: non_neg_integer() | nil, speed: float() | nil, status: status() | nil, total_size: non_neg_integer() | nil }