Skip to main content

Module buffer

Module buffer 

Source
Expand description

Adapters and utilities for working with audio buffers.

Structs§

Block
A block yielded by BlocksIter. Can be iterated over once or multiple times, and also supports direct access to the block’s samples if needed.
BlockChannelsIter
An iterator over all channels in a block yielded by Block, returning an entire channel slice at a time.
BlocksIter
An iterator over all samples in the buffer, slicing over the sample-dimension with a maximum size of max_block_size. See Buffer::iter_blocks(). Yields both the block and the offset from the start of the buffer.
Buffer
The audio buffers used during processing. This contains the output audio output buffers with the inputs already copied to the outputs. You can either use the iterator adapters to conveniently and efficiently iterate over the samples, or you can do your own thing using the raw audio buffers.
ChannelSamples
Can construct iterators over actual iterator over the channel data for a sample, yielded by SamplesIter. Can be turned into an iterator, or ChannelSamples::iter_mut() can be used to iterate over the channel data multiple times, or more efficiently you can use ChannelSamples::get_unchecked_mut() to do the same thing.
ChannelSamplesIter
The actual iterator over the channel data for a sample, yielded by ChannelSamples.
SamplesIter
An iterator over all samples in a buffer or block, yielding iterators over each channel for every sample. This iteration order offers good cache locality for per-sample access.