pub struct StreamInfo {
    pub min_block_size: u16,
    pub max_block_size: u16,
    pub min_frame_size: Option<u32>,
    pub max_frame_size: Option<u32>,
    pub sample_rate: u32,
    pub channels: u32,
    pub bits_per_sample: u32,
    pub samples: Option<u64>,
    pub md5sum: [u8; 16],
}
Expand description

The streaminfo metadata block, with important information about the stream.

Fields

min_block_size: u16

The minimum block size (in inter-channel samples) used in the stream.

This number is independent of the number of channels. To get the minimum block duration in seconds, divide this by the sample rate.

max_block_size: u16

The maximum block size (in inter-channel samples) used in the stream.

This number is independent of the number of channels. To get the maximum block duration in seconds, divide by the sample rate. To avoid allocations during decoding, a buffer of this size times the number of channels can be allocated up front and passed into FrameReader::read_next_or_eof().

min_frame_size: Option<u32>

The minimum frame size (in bytes) used in the stream.

max_frame_size: Option<u32>

The maximum frame size (in bytes) used in the stream.

sample_rate: u32

The sample rate in Hz.

channels: u32

The number of channels.

bits_per_sample: u32

The number of bits per sample.

samples: Option<u64>

The total number of inter-channel samples in the stream.

md5sum: [u8; 16]

MD5 signature of the unencoded audio data.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.