pub struct MultiGpuParams<'a> {Show 20 fields
pub input: Bytes,
pub rungs: &'a [Rung],
pub header: DemuxHeader,
pub source_color_metadata: ColorMetadata,
pub source_pixel_format: PixelFormat,
pub tonemap_to_sdr: bool,
pub output_color_metadata: ColorMetadata,
pub output_pixel_format: PixelFormat,
pub needs_downsample: bool,
pub frame_rate: f64,
pub gpu_pool: Arc<GpuPool>,
pub gpu_indices: Vec<u32>,
pub decode_gpu: Option<u32>,
pub output_root: PathBuf,
pub timescale: u32,
pub per_frame_ticks: u32,
pub keyframe_interval: u32,
pub segment_target_ticks: u64,
pub total_input_frames: u64,
pub constant_qp: bool,
}Expand description
Inputs to run_multigpu_hls.
Fields§
§input: Bytes§rungs: &'a [Rung]§header: DemuxHeader§source_color_metadata: ColorMetadata§source_pixel_format: PixelFormat§tonemap_to_sdr: boolWhether the decode pump tonemaps HDR→SDR (from the spec’s ColorPolicy).
output_color_metadata: ColorMetadataResolved output color metadata + pixel format the encoders target
(from OutputSpec::resolve_output).
output_pixel_format: PixelFormat§needs_downsample: bool§frame_rate: f64§gpu_pool: Arc<GpuPool>§gpu_indices: Vec<u32>GPU indices the encode policy selected, in detection order. The decode
pump pins to these (round-robin for per-rung pumps) so decode honors the
same Family / SingleGpu / AllGpus constraint as encode. Empty ⇒
the decoder dispatch auto-selects (legacy behavior).
decode_gpu: Option<u32>Explicit decode-pump GPU override. Some(i) forces every decode pump
onto GPU i regardless of gpu_indices; None follows the policy.
output_root: PathBuf§timescale: u32§per_frame_ticks: u32§keyframe_interval: u32§segment_target_ticks: u64§total_input_frames: u64§constant_qp: boolForce constant-QP chunk encoding (single-file ChunkSeamMode::ParallelConstQp)
so stitched chunk seams are quality-flat. false for HLS (segments are
independent) and the default Parallel single-file mode.