class

FfmpegProgress::ProgressBar

Inherits Reference < Object

Constants

SPEED_SLOT_WIDTH = 5

Right-padded 5-char speed slot so prefix width stays stable across updates: "0.04x", "1.23x", "12.5x", " 47x", " 425x", " -".

Instance methods

ascii
Source
ascii=(ascii : Bool)
Source
fmt_speed(value : Float64 | Nil) : String
Source
fmt_time(seconds : Float64) : String

Format seconds as "M:SS" or "H:MM:SS".

Source
frames_based
Source
frames_based=(frames_based : Bool)
Source
no_color
Source
no_color=(no_color : Bool)
Source
percent
Source
render(width : Int32) : String

Render the full line to fit width columns.

Source
speed

Most recent smoothed encoding speed reported by ffmpeg, in seconds of output produced per second of wall time (e.g. 2.2 == "2.2x"). nil until ffmpeg emits its first speed sample.

Source
speed=(speed : Float64 | Nil)

Most recent smoothed encoding speed reported by ffmpeg, in seconds of output produced per second of wall time (e.g. 2.2 == "2.2x"). nil until ffmpeg emits its first speed sample.

Source
speed_alpha

Smoothing factor for the EMA on speed. Smaller = smoother but slower to react; 0.3 is a reasonable compromise on ffmpeg's ~0.5s cadence.

Source
speed_alpha=(speed_alpha : Float64)

Smoothing factor for the EMA on speed. Smaller = smoother but slower to react; 0.3 is a reasonable compromise on ffmpeg's ~0.5s cadence.

Source
started_at
Source
started_at=(started_at : Time::Instant)
Source
total_duration
Source
total_duration=(total_duration : Float64 | Nil)
Source
total_frames
Source
total_frames=(total_frames : Int64 | Nil)
Source
update_frame(frame : Int64) : Nil
Source
update_out_time(seconds : Float64) : Nil
Source
update_speed(raw : Float64) : Nil

Apply a fresh raw speed sample from ffmpeg, blending it with the existing smoothed value via an exponential moving average.

Source