Struct claxon::frame::Block [] [src]

pub struct Block { /* fields omitted */ }

A block of raw audio samples.

Methods

impl Block
[src]

Returns a block with 0 channels and 0 samples.

Returns the sample number of the first sample in the block.

Returns the total number of samples in this block.

Samples in different channels are counted as distinct samples.

Returns the number of inter-channel samples in the block.

The duration is independent of the number of channels. The returned value is also referred to as the block size. To get the duration of the block in seconds, divide this number by the sample rate in the streaminfo.

Returns the number of channels in the block.

Returns the (zero-based) ch-th channel as a slice.

Panics

Panics if ch >= channels().

Returns a sample in this block.

The value returned is for the zero-based ch-th channel of the inter-channel sample with index sample in this block (so this is not the global sample number).

Panics

Panics if ch >= channels() or if sample >= len() for the last channel.

Returns the underlying buffer that stores the samples in this block.

This allows the buffer to be reused to decode the next frame. The capacity of the buffer may be bigger than len() times channels().

Returns an iterator that produces left and right channel samples.

This iterator can be more efficient than requesting a sample directly, because it avoids a bounds check.

Panics

Panics if the number of channels in the block is not 2.