claxon::metadata

Struct StreamInfo

Source
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§

Source§

impl Clone for StreamInfo

Source§

fn clone(&self) -> StreamInfo

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for StreamInfo

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Copy for StreamInfo

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.