pub struct Stream {Show 14 fields
pub index: usize,
pub codec_id: CodecId,
pub media_type: MediaType,
pub time_base: Rational,
pub width: u32,
pub height: u32,
pub pixel_format: Option<PixelFormat>,
pub color_range: ColorRange,
pub sample_rate: u32,
pub channels: u16,
pub sample_format: Option<SampleFormat>,
pub extradata: Vec<u8>,
pub duration: Option<i64>,
pub nb_frames: Option<u64>,
}Expand description
Description of one elementary stream within a container.
Fields§
§index: usizePosition of this stream within its container.
codec_id: CodecId§media_type: MediaType§time_base: RationalUnit of all timestamps on packets of this stream.
width: u32§height: u32§pixel_format: Option<PixelFormat>Raw pixel layout, when known (raw video). Self-describing codecs leave this None.
color_range: ColorRangeLuma/chroma value range. JPEG and PNG sources are always
ColorRange::Full; leaving it Unspecified
makes containers label the data limited-range, which silently corrupts it.
sample_rate: u32§channels: u16§sample_format: Option<SampleFormat>Raw sample layout, when known (PCM). Self-describing codecs leave this None.
extradata: Vec<u8>Codec-private initialization data (e.g. H.264 SPS/PPS, OpusHead). Empty for codecs whose bitstream is fully self-describing.
duration: Option<i64>Total stream duration in time_base units, when
the container declares it (MP4 mdhd, Matroska Duration). None when
unknown (live streams, TS).
nb_frames: Option<u64>Total packet count (frames for video), when the container’s index
declares it. None when unknown — never a guess.