[−][src]Trait dasp::frame::Frame
Represents one sample from each channel at a single discrete instance in time within a PCM signal.
Implementations are provided for:
- All fixed-size arrays up to a length of 32 elements.
- All primitive types that implement
Sample
. These implementations assumeCHANNELS = 1
.
Associated Types
type Sample: Sample
The type of PCM sample stored at each channel within the frame.
type NumChannels: NumChannels
A typified version of a number of channels in the Frame
, used for safely mapping frames
of the same length to other Frame
s, perhaps with a different Sample
associated type.
type Channels: Iterator
An iterator yielding the sample in each channel, starting from left (channel 0) and ending at the right (channel NumChannels-1).
type Signed: Frame
A frame type with equilavent number of channels using the associated Sample::Signed
format.
type Float: Frame
A frame type with equilavent number of channels using the associated Sample::Float
format.
Associated Constants
const EQUILIBRIUM: Self
The equilibrium value for the wave that this Sample
type represents. This is normally the
value that is equal distance from both the min and max ranges of the sample.
Examples
use dasp_frame::{Frame, Mono, Stereo}; fn main() { assert_eq!(Mono::<f32>::EQUILIBRIUM, [0.0]); assert_eq!(Stereo::<f32>::EQUILIBRIUM, [0.0, 0.0]); assert_eq!(<[f32; 3]>::EQUILIBRIUM, [0.0, 0.0, 0.0]); assert_eq!(<[u8; 2]>::EQUILIBRIUM, [128u8, 128]); }
const CHANNELS: usize
The total number of channels within the frame.
Examples
use dasp_frame::{Frame, Mono, Stereo}; fn main() { assert_eq!(Mono::<f32>::CHANNELS, 1); assert_eq!(Stereo::<f32>::CHANNELS, 2); assert_eq!(<[f32; 3]>::CHANNELS, 3); assert_eq!(<[u8; 2]>::CHANNELS, 2); }
Required methods
fn from_fn<F>(from: F) -> Self where
F: FnMut(usize) -> Self::Sample,
F: FnMut(usize) -> Self::Sample,
Create a new Frame
where the Sample
for each channel is produced by the given function.
The given function should map each channel index to its respective sample.
fn from_samples<I>(samples: &mut I) -> Option<Self> where
I: Iterator<Item = Self::Sample>,
I: Iterator<Item = Self::Sample>,
Create a new Frame
from a borrowed Iterator
yielding samples for each channel.
Returns None
if the given Iterator
does not yield enough Sample
s.
This is necessary for the signal::FromSamples
Iterator
, that converts some Iterator
yielding Sample
s to an Iterator
yielding Frame
s.
fn channels(self) -> Self::Channels
Converts the frame into an iterator yielding the sample for each channel in the frame.
fn channel(&self, idx: usize) -> Option<&Self::Sample>
Yields a reference to the Sample
of the channel at the given index if there is one.
unsafe fn channel_unchecked(&self, idx: usize) -> &Self::Sample
Returns a pointer to the sample of the channel at the given index, without doing bounds checking.
Note: This is primarily a necessity for efficient Frame::map
and Frame::zip_map
methods, as for those methods we can guarantee lengths of different Frame
s to be the same
at compile-time.
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = Self::NumChannels>,
M: FnMut(Self::Sample) -> <F as Frame>::Sample,
F: Frame<NumChannels = Self::NumChannels>,
M: FnMut(Self::Sample) -> <F as Frame>::Sample,
Applies the given function to each sample in the Frame
in channel order and returns the
result as a new Frame
.
Example
use dasp_frame::Frame; use dasp_sample::Sample; fn main() { let foo = [0i16, 0]; let bar: [u8; 2] = foo.map(Sample::to_sample); assert_eq!(bar, [128u8, 128]); }
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = Self::NumChannels>,
M: FnMut(Self::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = Self::NumChannels>,
F: Frame<NumChannels = Self::NumChannels>,
M: FnMut(Self::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = Self::NumChannels>,
Calls the given function with the pair of elements at every index and returns the resulting Frame.
On a Vec
this would be akin to .into_iter().zip(other).map(|(a, b)| ...).collect()
, though
much quicker and tailored to fixed-size arrays of samples.
fn to_signed_frame(self) -> Self::Signed
Converts the frame type to the equivalent signal in its associated Float
ing point format.
Example
use dasp_frame::Frame; fn main() { let foo = [128u8; 2]; let signed = foo.to_signed_frame(); assert_eq!(signed, [0i8; 2]); }
fn to_float_frame(self) -> Self::Float
Converts the frame type to the equivalent signal in its associated Signed
format.
Example
use dasp_frame::Frame; fn main() { let foo = [128u8; 2]; let float = foo.to_float_frame(); assert_eq!(float, [0.0; 2]); }
Provided methods
fn offset_amp(self, offset: <Self::Sample as Sample>::Signed) -> Self
Offsets the amplitude of every channel in the frame by the given offset
and yields the
resulting frame.
Example
use dasp_frame::Frame; fn main() { assert_eq!([0.25, -0.5].offset_amp(0.5), [0.75, 0.0]); assert_eq!([0.5, -0.25].offset_amp(-0.25), [0.25, -0.5]); assert_eq!([128u8, 192].offset_amp(-64), [64, 128]); }
fn scale_amp(self, amp: <Self::Sample as Sample>::Float) -> Self
Multiplies each Sample
in the Frame
by the given amplitude and returns the resulting
Frame
.
- A > 1.0 amplifies the sample.
- A < 1.0 attenuates the sample.
- A == 1.0 yields the same sample.
- A == 0.0 yields the
Sample::equilibrium
.
Example
use dasp_frame::Frame; fn main() { assert_eq!([0.1, 0.2, -0.1, -0.2].scale_amp(2.0), [0.2, 0.4, -0.2, -0.4]); }
fn add_amp<F>(self, other: F) -> Self where
F: Frame<Sample = <Self::Sample as Sample>::Signed, NumChannels = Self::NumChannels>,
F: Frame<Sample = <Self::Sample as Sample>::Signed, NumChannels = Self::NumChannels>,
Sums each channel in other
with each channel in self
and returns the resulting Frame
.
Example
use dasp_frame::Frame; fn main() { let foo = [0.25, 0.5].add_amp([-0.75, 0.25]); assert_eq!(foo, [-0.5, 0.75]); }
fn mul_amp<F>(self, other: F) -> Self where
F: Frame<Sample = <Self::Sample as Sample>::Float, NumChannels = Self::NumChannels>,
F: Frame<Sample = <Self::Sample as Sample>::Float, NumChannels = Self::NumChannels>,
Multiplies other
with self
and returns the resulting Frame
.
Example
use dasp_frame::Frame; fn main() { let foo = [0.25, 0.4].mul_amp([0.2, 0.5]); assert_eq!(foo, [0.05, 0.2]); let bar = [192u8, 64].mul_amp([0.0, -1.0]); assert_eq!(bar, [128, 192]); }
Implementations on Foreign Types
impl Frame for i8
[src]
type Sample = i8
type NumChannels = N1
type Channels = Channels<i8>
type Float = <i8 as Sample>::Float
type Signed = <i8 as Sample>::Signed
const EQUILIBRIUM: i8
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <i8 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<i8 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> i8 where
F: FnMut(usize) -> <i8 as Frame>::Sample,
[src]
F: FnMut(usize) -> <i8 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<i8> where
I: Iterator<Item = <i8 as Frame>::Sample>,
[src]
I: Iterator<Item = <i8 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<i8 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <i8 as Frame>::Signed
[src]
fn to_float_frame(self) -> <i8 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <i8 as Frame>::NumChannels>,
M: FnMut(<i8 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <i8 as Frame>::NumChannels>,
M: FnMut(<i8 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <i8 as Frame>::NumChannels>,
M: FnMut(<i8 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <i8 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <i8 as Frame>::NumChannels>,
M: FnMut(<i8 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <i8 as Frame>::NumChannels>,
fn scale_amp(self, amp: <i8 as Sample>::Float) -> i8
[src]
fn add_amp<F>(self, other: F) -> i8 where
F: Frame<Sample = <i8 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <i8 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 6] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N6
type Channels = Channels<[S; 6]>
type Float = [<S as Sample>::Float; 6]
type Signed = [<S as Sample>::Signed; 6]
const EQUILIBRIUM: [S; 6]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 6] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 6] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 6] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 6]> where
I: Iterator<Item = <[S; 6] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 6] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 6] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 6] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 6] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 6] as Frame>::NumChannels>,
M: FnMut(<[S; 6] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 6] as Frame>::NumChannels>,
M: FnMut(<[S; 6] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 6] as Frame>::NumChannels>,
M: FnMut(<[S; 6] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 6] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 6] as Frame>::NumChannels>,
M: FnMut(<[S; 6] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 6] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 6]
[src]
fn add_amp<F>(self, other: F) -> [S; 6] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N6>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N6>,
impl Frame for u64
[src]
type Sample = u64
type NumChannels = N1
type Channels = Channels<u64>
type Float = <u64 as Sample>::Float
type Signed = <u64 as Sample>::Signed
const EQUILIBRIUM: u64
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <u64 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<u64 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> u64 where
F: FnMut(usize) -> <u64 as Frame>::Sample,
[src]
F: FnMut(usize) -> <u64 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<u64> where
I: Iterator<Item = <u64 as Frame>::Sample>,
[src]
I: Iterator<Item = <u64 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<u64 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <u64 as Frame>::Signed
[src]
fn to_float_frame(self) -> <u64 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <u64 as Frame>::NumChannels>,
M: FnMut(<u64 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <u64 as Frame>::NumChannels>,
M: FnMut(<u64 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <u64 as Frame>::NumChannels>,
M: FnMut(<u64 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <u64 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <u64 as Frame>::NumChannels>,
M: FnMut(<u64 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <u64 as Frame>::NumChannels>,
fn scale_amp(self, amp: <u64 as Sample>::Float) -> u64
[src]
fn add_amp<F>(self, other: F) -> u64 where
F: Frame<Sample = <u64 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <u64 as Sample>::Signed, NumChannels = N1>,
impl Frame for u16
[src]
type Sample = u16
type NumChannels = N1
type Channels = Channels<u16>
type Float = <u16 as Sample>::Float
type Signed = <u16 as Sample>::Signed
const EQUILIBRIUM: u16
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <u16 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<u16 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> u16 where
F: FnMut(usize) -> <u16 as Frame>::Sample,
[src]
F: FnMut(usize) -> <u16 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<u16> where
I: Iterator<Item = <u16 as Frame>::Sample>,
[src]
I: Iterator<Item = <u16 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<u16 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <u16 as Frame>::Signed
[src]
fn to_float_frame(self) -> <u16 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <u16 as Frame>::NumChannels>,
M: FnMut(<u16 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <u16 as Frame>::NumChannels>,
M: FnMut(<u16 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <u16 as Frame>::NumChannels>,
M: FnMut(<u16 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <u16 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <u16 as Frame>::NumChannels>,
M: FnMut(<u16 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <u16 as Frame>::NumChannels>,
fn scale_amp(self, amp: <u16 as Sample>::Float) -> u16
[src]
fn add_amp<F>(self, other: F) -> u16 where
F: Frame<Sample = <u16 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <u16 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 2] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N2
type Channels = Channels<[S; 2]>
type Float = [<S as Sample>::Float; 2]
type Signed = [<S as Sample>::Signed; 2]
const EQUILIBRIUM: [S; 2]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 2] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 2] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 2] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 2]> where
I: Iterator<Item = <[S; 2] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 2] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 2] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 2] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 2] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 2] as Frame>::NumChannels>,
M: FnMut(<[S; 2] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 2] as Frame>::NumChannels>,
M: FnMut(<[S; 2] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 2] as Frame>::NumChannels>,
M: FnMut(<[S; 2] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 2] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 2] as Frame>::NumChannels>,
M: FnMut(<[S; 2] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 2] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 2]
[src]
fn add_amp<F>(self, other: F) -> [S; 2] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N2>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N2>,
impl<S> Frame for [S; 32] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N32
type Channels = Channels<[S; 32]>
type Float = [<S as Sample>::Float; 32]
type Signed = [<S as Sample>::Signed; 32]
const EQUILIBRIUM: [S; 32]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 32] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 32] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 32] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 32]> where
I: Iterator<Item = <[S; 32] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 32] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 32] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 32] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 32] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 32] as Frame>::NumChannels>,
M: FnMut(<[S; 32] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 32] as Frame>::NumChannels>,
M: FnMut(<[S; 32] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 32] as Frame>::NumChannels>,
M: FnMut(<[S; 32] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 32] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 32] as Frame>::NumChannels>,
M: FnMut(<[S; 32] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 32] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 32]
[src]
fn add_amp<F>(self, other: F) -> [S; 32] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N32>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N32>,
impl<S> Frame for [S; 5] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N5
type Channels = Channels<[S; 5]>
type Float = [<S as Sample>::Float; 5]
type Signed = [<S as Sample>::Signed; 5]
const EQUILIBRIUM: [S; 5]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 5] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 5] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 5] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 5]> where
I: Iterator<Item = <[S; 5] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 5] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 5] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 5] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 5] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 5] as Frame>::NumChannels>,
M: FnMut(<[S; 5] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 5] as Frame>::NumChannels>,
M: FnMut(<[S; 5] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 5] as Frame>::NumChannels>,
M: FnMut(<[S; 5] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 5] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 5] as Frame>::NumChannels>,
M: FnMut(<[S; 5] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 5] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 5]
[src]
fn add_amp<F>(self, other: F) -> [S; 5] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N5>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N5>,
impl<S> Frame for [S; 4] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N4
type Channels = Channels<[S; 4]>
type Float = [<S as Sample>::Float; 4]
type Signed = [<S as Sample>::Signed; 4]
const EQUILIBRIUM: [S; 4]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 4] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 4] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 4] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 4]> where
I: Iterator<Item = <[S; 4] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 4] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 4] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 4] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 4] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 4] as Frame>::NumChannels>,
M: FnMut(<[S; 4] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 4] as Frame>::NumChannels>,
M: FnMut(<[S; 4] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 4] as Frame>::NumChannels>,
M: FnMut(<[S; 4] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 4] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 4] as Frame>::NumChannels>,
M: FnMut(<[S; 4] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 4] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 4]
[src]
fn add_amp<F>(self, other: F) -> [S; 4] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N4>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N4>,
impl<S> Frame for [S; 17] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N17
type Channels = Channels<[S; 17]>
type Float = [<S as Sample>::Float; 17]
type Signed = [<S as Sample>::Signed; 17]
const EQUILIBRIUM: [S; 17]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 17] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 17] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 17] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 17]> where
I: Iterator<Item = <[S; 17] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 17] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 17] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 17] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 17] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 17] as Frame>::NumChannels>,
M: FnMut(<[S; 17] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 17] as Frame>::NumChannels>,
M: FnMut(<[S; 17] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 17] as Frame>::NumChannels>,
M: FnMut(<[S; 17] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 17] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 17] as Frame>::NumChannels>,
M: FnMut(<[S; 17] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 17] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 17]
[src]
fn add_amp<F>(self, other: F) -> [S; 17] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N17>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N17>,
impl<S> Frame for [S; 27] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N27
type Channels = Channels<[S; 27]>
type Float = [<S as Sample>::Float; 27]
type Signed = [<S as Sample>::Signed; 27]
const EQUILIBRIUM: [S; 27]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 27] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 27] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 27] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 27]> where
I: Iterator<Item = <[S; 27] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 27] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 27] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 27] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 27] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 27] as Frame>::NumChannels>,
M: FnMut(<[S; 27] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 27] as Frame>::NumChannels>,
M: FnMut(<[S; 27] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 27] as Frame>::NumChannels>,
M: FnMut(<[S; 27] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 27] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 27] as Frame>::NumChannels>,
M: FnMut(<[S; 27] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 27] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 27]
[src]
fn add_amp<F>(self, other: F) -> [S; 27] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N27>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N27>,
impl Frame for i64
[src]
type Sample = i64
type NumChannels = N1
type Channels = Channels<i64>
type Float = <i64 as Sample>::Float
type Signed = <i64 as Sample>::Signed
const EQUILIBRIUM: i64
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <i64 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<i64 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> i64 where
F: FnMut(usize) -> <i64 as Frame>::Sample,
[src]
F: FnMut(usize) -> <i64 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<i64> where
I: Iterator<Item = <i64 as Frame>::Sample>,
[src]
I: Iterator<Item = <i64 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<i64 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <i64 as Frame>::Signed
[src]
fn to_float_frame(self) -> <i64 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <i64 as Frame>::NumChannels>,
M: FnMut(<i64 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <i64 as Frame>::NumChannels>,
M: FnMut(<i64 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <i64 as Frame>::NumChannels>,
M: FnMut(<i64 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <i64 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <i64 as Frame>::NumChannels>,
M: FnMut(<i64 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <i64 as Frame>::NumChannels>,
fn scale_amp(self, amp: <i64 as Sample>::Float) -> i64
[src]
fn add_amp<F>(self, other: F) -> i64 where
F: Frame<Sample = <i64 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <i64 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 8] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N8
type Channels = Channels<[S; 8]>
type Float = [<S as Sample>::Float; 8]
type Signed = [<S as Sample>::Signed; 8]
const EQUILIBRIUM: [S; 8]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 8] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 8] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 8] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 8]> where
I: Iterator<Item = <[S; 8] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 8] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 8] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 8] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 8] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 8] as Frame>::NumChannels>,
M: FnMut(<[S; 8] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 8] as Frame>::NumChannels>,
M: FnMut(<[S; 8] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 8] as Frame>::NumChannels>,
M: FnMut(<[S; 8] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 8] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 8] as Frame>::NumChannels>,
M: FnMut(<[S; 8] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 8] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 8]
[src]
fn add_amp<F>(self, other: F) -> [S; 8] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N8>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N8>,
impl<S> Frame for [S; 19] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N19
type Channels = Channels<[S; 19]>
type Float = [<S as Sample>::Float; 19]
type Signed = [<S as Sample>::Signed; 19]
const EQUILIBRIUM: [S; 19]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 19] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 19] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 19] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 19]> where
I: Iterator<Item = <[S; 19] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 19] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 19] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 19] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 19] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 19] as Frame>::NumChannels>,
M: FnMut(<[S; 19] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 19] as Frame>::NumChannels>,
M: FnMut(<[S; 19] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 19] as Frame>::NumChannels>,
M: FnMut(<[S; 19] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 19] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 19] as Frame>::NumChannels>,
M: FnMut(<[S; 19] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 19] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 19]
[src]
fn add_amp<F>(self, other: F) -> [S; 19] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N19>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N19>,
impl<S> Frame for [S; 26] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N26
type Channels = Channels<[S; 26]>
type Float = [<S as Sample>::Float; 26]
type Signed = [<S as Sample>::Signed; 26]
const EQUILIBRIUM: [S; 26]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 26] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 26] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 26] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 26]> where
I: Iterator<Item = <[S; 26] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 26] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 26] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 26] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 26] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 26] as Frame>::NumChannels>,
M: FnMut(<[S; 26] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 26] as Frame>::NumChannels>,
M: FnMut(<[S; 26] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 26] as Frame>::NumChannels>,
M: FnMut(<[S; 26] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 26] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 26] as Frame>::NumChannels>,
M: FnMut(<[S; 26] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 26] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 26]
[src]
fn add_amp<F>(self, other: F) -> [S; 26] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N26>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N26>,
impl<S> Frame for [S; 7] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N7
type Channels = Channels<[S; 7]>
type Float = [<S as Sample>::Float; 7]
type Signed = [<S as Sample>::Signed; 7]
const EQUILIBRIUM: [S; 7]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 7] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 7] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 7] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 7]> where
I: Iterator<Item = <[S; 7] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 7] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 7] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 7] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 7] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 7] as Frame>::NumChannels>,
M: FnMut(<[S; 7] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 7] as Frame>::NumChannels>,
M: FnMut(<[S; 7] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 7] as Frame>::NumChannels>,
M: FnMut(<[S; 7] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 7] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 7] as Frame>::NumChannels>,
M: FnMut(<[S; 7] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 7] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 7]
[src]
fn add_amp<F>(self, other: F) -> [S; 7] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N7>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N7>,
impl<S> Frame for [S; 20] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N20
type Channels = Channels<[S; 20]>
type Float = [<S as Sample>::Float; 20]
type Signed = [<S as Sample>::Signed; 20]
const EQUILIBRIUM: [S; 20]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 20] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 20] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 20] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 20]> where
I: Iterator<Item = <[S; 20] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 20] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 20] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 20] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 20] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 20] as Frame>::NumChannels>,
M: FnMut(<[S; 20] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 20] as Frame>::NumChannels>,
M: FnMut(<[S; 20] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 20] as Frame>::NumChannels>,
M: FnMut(<[S; 20] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 20] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 20] as Frame>::NumChannels>,
M: FnMut(<[S; 20] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 20] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 20]
[src]
fn add_amp<F>(self, other: F) -> [S; 20] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N20>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N20>,
impl<S> Frame for [S; 1] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N1
type Channels = Channels<[S; 1]>
type Float = [<S as Sample>::Float; 1]
type Signed = [<S as Sample>::Signed; 1]
const EQUILIBRIUM: [S; 1]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 1] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 1] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 1] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 1]> where
I: Iterator<Item = <[S; 1] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 1] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 1] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 1] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 1] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 1] as Frame>::NumChannels>,
M: FnMut(<[S; 1] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 1] as Frame>::NumChannels>,
M: FnMut(<[S; 1] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 1] as Frame>::NumChannels>,
M: FnMut(<[S; 1] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 1] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 1] as Frame>::NumChannels>,
M: FnMut(<[S; 1] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 1] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 1]
[src]
fn add_amp<F>(self, other: F) -> [S; 1] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 12] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N12
type Channels = Channels<[S; 12]>
type Float = [<S as Sample>::Float; 12]
type Signed = [<S as Sample>::Signed; 12]
const EQUILIBRIUM: [S; 12]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 12] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 12] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 12] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 12]> where
I: Iterator<Item = <[S; 12] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 12] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 12] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 12] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 12] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 12] as Frame>::NumChannels>,
M: FnMut(<[S; 12] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 12] as Frame>::NumChannels>,
M: FnMut(<[S; 12] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 12] as Frame>::NumChannels>,
M: FnMut(<[S; 12] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 12] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 12] as Frame>::NumChannels>,
M: FnMut(<[S; 12] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 12] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 12]
[src]
fn add_amp<F>(self, other: F) -> [S; 12] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N12>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N12>,
impl<S> Frame for [S; 24] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N24
type Channels = Channels<[S; 24]>
type Float = [<S as Sample>::Float; 24]
type Signed = [<S as Sample>::Signed; 24]
const EQUILIBRIUM: [S; 24]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 24] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 24] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 24] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 24]> where
I: Iterator<Item = <[S; 24] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 24] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 24] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 24] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 24] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 24] as Frame>::NumChannels>,
M: FnMut(<[S; 24] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 24] as Frame>::NumChannels>,
M: FnMut(<[S; 24] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 24] as Frame>::NumChannels>,
M: FnMut(<[S; 24] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 24] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 24] as Frame>::NumChannels>,
M: FnMut(<[S; 24] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 24] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 24]
[src]
fn add_amp<F>(self, other: F) -> [S; 24] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N24>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N24>,
impl<S> Frame for [S; 31] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N31
type Channels = Channels<[S; 31]>
type Float = [<S as Sample>::Float; 31]
type Signed = [<S as Sample>::Signed; 31]
const EQUILIBRIUM: [S; 31]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 31] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 31] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 31] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 31]> where
I: Iterator<Item = <[S; 31] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 31] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 31] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 31] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 31] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 31] as Frame>::NumChannels>,
M: FnMut(<[S; 31] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 31] as Frame>::NumChannels>,
M: FnMut(<[S; 31] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 31] as Frame>::NumChannels>,
M: FnMut(<[S; 31] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 31] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 31] as Frame>::NumChannels>,
M: FnMut(<[S; 31] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 31] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 31]
[src]
fn add_amp<F>(self, other: F) -> [S; 31] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N31>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N31>,
impl Frame for f64
[src]
type Sample = f64
type NumChannels = N1
type Channels = Channels<f64>
type Float = <f64 as Sample>::Float
type Signed = <f64 as Sample>::Signed
const EQUILIBRIUM: f64
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <f64 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<f64 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> f64 where
F: FnMut(usize) -> <f64 as Frame>::Sample,
[src]
F: FnMut(usize) -> <f64 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<f64> where
I: Iterator<Item = <f64 as Frame>::Sample>,
[src]
I: Iterator<Item = <f64 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<f64 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <f64 as Frame>::Signed
[src]
fn to_float_frame(self) -> <f64 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <f64 as Frame>::NumChannels>,
M: FnMut(<f64 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <f64 as Frame>::NumChannels>,
M: FnMut(<f64 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <f64 as Frame>::NumChannels>,
M: FnMut(<f64 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <f64 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <f64 as Frame>::NumChannels>,
M: FnMut(<f64 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <f64 as Frame>::NumChannels>,
fn scale_amp(self, amp: <f64 as Sample>::Float) -> f64
[src]
fn add_amp<F>(self, other: F) -> f64 where
F: Frame<Sample = <f64 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <f64 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 23] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N23
type Channels = Channels<[S; 23]>
type Float = [<S as Sample>::Float; 23]
type Signed = [<S as Sample>::Signed; 23]
const EQUILIBRIUM: [S; 23]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 23] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 23] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 23] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 23]> where
I: Iterator<Item = <[S; 23] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 23] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 23] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 23] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 23] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 23] as Frame>::NumChannels>,
M: FnMut(<[S; 23] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 23] as Frame>::NumChannels>,
M: FnMut(<[S; 23] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 23] as Frame>::NumChannels>,
M: FnMut(<[S; 23] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 23] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 23] as Frame>::NumChannels>,
M: FnMut(<[S; 23] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 23] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 23]
[src]
fn add_amp<F>(self, other: F) -> [S; 23] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N23>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N23>,
impl<S> Frame for [S; 13] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N13
type Channels = Channels<[S; 13]>
type Float = [<S as Sample>::Float; 13]
type Signed = [<S as Sample>::Signed; 13]
const EQUILIBRIUM: [S; 13]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 13] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 13] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 13] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 13]> where
I: Iterator<Item = <[S; 13] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 13] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 13] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 13] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 13] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 13] as Frame>::NumChannels>,
M: FnMut(<[S; 13] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 13] as Frame>::NumChannels>,
M: FnMut(<[S; 13] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 13] as Frame>::NumChannels>,
M: FnMut(<[S; 13] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 13] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 13] as Frame>::NumChannels>,
M: FnMut(<[S; 13] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 13] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 13]
[src]
fn add_amp<F>(self, other: F) -> [S; 13] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N13>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N13>,
impl<S> Frame for [S; 22] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N22
type Channels = Channels<[S; 22]>
type Float = [<S as Sample>::Float; 22]
type Signed = [<S as Sample>::Signed; 22]
const EQUILIBRIUM: [S; 22]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 22] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 22] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 22] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 22]> where
I: Iterator<Item = <[S; 22] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 22] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 22] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 22] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 22] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 22] as Frame>::NumChannels>,
M: FnMut(<[S; 22] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 22] as Frame>::NumChannels>,
M: FnMut(<[S; 22] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 22] as Frame>::NumChannels>,
M: FnMut(<[S; 22] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 22] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 22] as Frame>::NumChannels>,
M: FnMut(<[S; 22] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 22] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 22]
[src]
fn add_amp<F>(self, other: F) -> [S; 22] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N22>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N22>,
impl Frame for f32
[src]
type Sample = f32
type NumChannels = N1
type Channels = Channels<f32>
type Float = <f32 as Sample>::Float
type Signed = <f32 as Sample>::Signed
const EQUILIBRIUM: f32
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <f32 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<f32 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> f32 where
F: FnMut(usize) -> <f32 as Frame>::Sample,
[src]
F: FnMut(usize) -> <f32 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<f32> where
I: Iterator<Item = <f32 as Frame>::Sample>,
[src]
I: Iterator<Item = <f32 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<f32 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <f32 as Frame>::Signed
[src]
fn to_float_frame(self) -> <f32 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <f32 as Frame>::NumChannels>,
M: FnMut(<f32 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <f32 as Frame>::NumChannels>,
M: FnMut(<f32 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <f32 as Frame>::NumChannels>,
M: FnMut(<f32 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <f32 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <f32 as Frame>::NumChannels>,
M: FnMut(<f32 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <f32 as Frame>::NumChannels>,
fn scale_amp(self, amp: <f32 as Sample>::Float) -> f32
[src]
fn add_amp<F>(self, other: F) -> f32 where
F: Frame<Sample = <f32 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <f32 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 3] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N3
type Channels = Channels<[S; 3]>
type Float = [<S as Sample>::Float; 3]
type Signed = [<S as Sample>::Signed; 3]
const EQUILIBRIUM: [S; 3]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 3] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 3] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 3] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 3]> where
I: Iterator<Item = <[S; 3] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 3] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 3] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 3] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 3] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 3] as Frame>::NumChannels>,
M: FnMut(<[S; 3] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 3] as Frame>::NumChannels>,
M: FnMut(<[S; 3] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 3] as Frame>::NumChannels>,
M: FnMut(<[S; 3] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 3] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 3] as Frame>::NumChannels>,
M: FnMut(<[S; 3] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 3] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 3]
[src]
fn add_amp<F>(self, other: F) -> [S; 3] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N3>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N3>,
impl<S> Frame for [S; 11] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N11
type Channels = Channels<[S; 11]>
type Float = [<S as Sample>::Float; 11]
type Signed = [<S as Sample>::Signed; 11]
const EQUILIBRIUM: [S; 11]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 11] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 11] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 11] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 11]> where
I: Iterator<Item = <[S; 11] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 11] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 11] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 11] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 11] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 11] as Frame>::NumChannels>,
M: FnMut(<[S; 11] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 11] as Frame>::NumChannels>,
M: FnMut(<[S; 11] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 11] as Frame>::NumChannels>,
M: FnMut(<[S; 11] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 11] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 11] as Frame>::NumChannels>,
M: FnMut(<[S; 11] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 11] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 11]
[src]
fn add_amp<F>(self, other: F) -> [S; 11] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N11>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N11>,
impl<S> Frame for [S; 10] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N10
type Channels = Channels<[S; 10]>
type Float = [<S as Sample>::Float; 10]
type Signed = [<S as Sample>::Signed; 10]
const EQUILIBRIUM: [S; 10]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 10] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 10] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 10] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 10]> where
I: Iterator<Item = <[S; 10] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 10] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 10] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 10] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 10] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 10] as Frame>::NumChannels>,
M: FnMut(<[S; 10] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 10] as Frame>::NumChannels>,
M: FnMut(<[S; 10] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 10] as Frame>::NumChannels>,
M: FnMut(<[S; 10] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 10] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 10] as Frame>::NumChannels>,
M: FnMut(<[S; 10] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 10] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 10]
[src]
fn add_amp<F>(self, other: F) -> [S; 10] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N10>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N10>,
impl Frame for u32
[src]
type Sample = u32
type NumChannels = N1
type Channels = Channels<u32>
type Float = <u32 as Sample>::Float
type Signed = <u32 as Sample>::Signed
const EQUILIBRIUM: u32
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <u32 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<u32 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> u32 where
F: FnMut(usize) -> <u32 as Frame>::Sample,
[src]
F: FnMut(usize) -> <u32 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<u32> where
I: Iterator<Item = <u32 as Frame>::Sample>,
[src]
I: Iterator<Item = <u32 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<u32 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <u32 as Frame>::Signed
[src]
fn to_float_frame(self) -> <u32 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <u32 as Frame>::NumChannels>,
M: FnMut(<u32 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <u32 as Frame>::NumChannels>,
M: FnMut(<u32 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <u32 as Frame>::NumChannels>,
M: FnMut(<u32 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <u32 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <u32 as Frame>::NumChannels>,
M: FnMut(<u32 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <u32 as Frame>::NumChannels>,
fn scale_amp(self, amp: <u32 as Sample>::Float) -> u32
[src]
fn add_amp<F>(self, other: F) -> u32 where
F: Frame<Sample = <u32 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <u32 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 30] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N30
type Channels = Channels<[S; 30]>
type Float = [<S as Sample>::Float; 30]
type Signed = [<S as Sample>::Signed; 30]
const EQUILIBRIUM: [S; 30]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 30] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 30] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 30] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 30]> where
I: Iterator<Item = <[S; 30] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 30] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 30] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 30] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 30] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 30] as Frame>::NumChannels>,
M: FnMut(<[S; 30] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 30] as Frame>::NumChannels>,
M: FnMut(<[S; 30] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 30] as Frame>::NumChannels>,
M: FnMut(<[S; 30] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 30] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 30] as Frame>::NumChannels>,
M: FnMut(<[S; 30] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 30] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 30]
[src]
fn add_amp<F>(self, other: F) -> [S; 30] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N30>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N30>,
impl Frame for i32
[src]
type Sample = i32
type NumChannels = N1
type Channels = Channels<i32>
type Float = <i32 as Sample>::Float
type Signed = <i32 as Sample>::Signed
const EQUILIBRIUM: i32
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <i32 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<i32 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> i32 where
F: FnMut(usize) -> <i32 as Frame>::Sample,
[src]
F: FnMut(usize) -> <i32 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<i32> where
I: Iterator<Item = <i32 as Frame>::Sample>,
[src]
I: Iterator<Item = <i32 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<i32 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <i32 as Frame>::Signed
[src]
fn to_float_frame(self) -> <i32 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <i32 as Frame>::NumChannels>,
M: FnMut(<i32 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <i32 as Frame>::NumChannels>,
M: FnMut(<i32 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <i32 as Frame>::NumChannels>,
M: FnMut(<i32 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <i32 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <i32 as Frame>::NumChannels>,
M: FnMut(<i32 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <i32 as Frame>::NumChannels>,
fn scale_amp(self, amp: <i32 as Sample>::Float) -> i32
[src]
fn add_amp<F>(self, other: F) -> i32 where
F: Frame<Sample = <i32 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <i32 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 15] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N15
type Channels = Channels<[S; 15]>
type Float = [<S as Sample>::Float; 15]
type Signed = [<S as Sample>::Signed; 15]
const EQUILIBRIUM: [S; 15]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 15] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 15] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 15] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 15]> where
I: Iterator<Item = <[S; 15] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 15] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 15] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 15] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 15] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 15] as Frame>::NumChannels>,
M: FnMut(<[S; 15] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 15] as Frame>::NumChannels>,
M: FnMut(<[S; 15] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 15] as Frame>::NumChannels>,
M: FnMut(<[S; 15] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 15] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 15] as Frame>::NumChannels>,
M: FnMut(<[S; 15] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 15] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 15]
[src]
fn add_amp<F>(self, other: F) -> [S; 15] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N15>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N15>,
impl<S> Frame for [S; 21] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N21
type Channels = Channels<[S; 21]>
type Float = [<S as Sample>::Float; 21]
type Signed = [<S as Sample>::Signed; 21]
const EQUILIBRIUM: [S; 21]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 21] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 21] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 21] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 21]> where
I: Iterator<Item = <[S; 21] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 21] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 21] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 21] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 21] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 21] as Frame>::NumChannels>,
M: FnMut(<[S; 21] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 21] as Frame>::NumChannels>,
M: FnMut(<[S; 21] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 21] as Frame>::NumChannels>,
M: FnMut(<[S; 21] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 21] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 21] as Frame>::NumChannels>,
M: FnMut(<[S; 21] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 21] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 21]
[src]
fn add_amp<F>(self, other: F) -> [S; 21] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N21>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N21>,
impl<S> Frame for [S; 18] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N18
type Channels = Channels<[S; 18]>
type Float = [<S as Sample>::Float; 18]
type Signed = [<S as Sample>::Signed; 18]
const EQUILIBRIUM: [S; 18]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 18] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 18] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 18] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 18]> where
I: Iterator<Item = <[S; 18] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 18] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 18] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 18] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 18] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 18] as Frame>::NumChannels>,
M: FnMut(<[S; 18] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 18] as Frame>::NumChannels>,
M: FnMut(<[S; 18] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 18] as Frame>::NumChannels>,
M: FnMut(<[S; 18] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 18] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 18] as Frame>::NumChannels>,
M: FnMut(<[S; 18] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 18] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 18]
[src]
fn add_amp<F>(self, other: F) -> [S; 18] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N18>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N18>,
impl<S> Frame for [S; 28] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N28
type Channels = Channels<[S; 28]>
type Float = [<S as Sample>::Float; 28]
type Signed = [<S as Sample>::Signed; 28]
const EQUILIBRIUM: [S; 28]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 28] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 28] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 28] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 28]> where
I: Iterator<Item = <[S; 28] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 28] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 28] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 28] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 28] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 28] as Frame>::NumChannels>,
M: FnMut(<[S; 28] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 28] as Frame>::NumChannels>,
M: FnMut(<[S; 28] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 28] as Frame>::NumChannels>,
M: FnMut(<[S; 28] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 28] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 28] as Frame>::NumChannels>,
M: FnMut(<[S; 28] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 28] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 28]
[src]
fn add_amp<F>(self, other: F) -> [S; 28] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N28>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N28>,
impl<S> Frame for [S; 14] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N14
type Channels = Channels<[S; 14]>
type Float = [<S as Sample>::Float; 14]
type Signed = [<S as Sample>::Signed; 14]
const EQUILIBRIUM: [S; 14]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 14] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 14] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 14] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 14]> where
I: Iterator<Item = <[S; 14] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 14] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 14] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 14] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 14] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 14] as Frame>::NumChannels>,
M: FnMut(<[S; 14] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 14] as Frame>::NumChannels>,
M: FnMut(<[S; 14] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 14] as Frame>::NumChannels>,
M: FnMut(<[S; 14] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 14] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 14] as Frame>::NumChannels>,
M: FnMut(<[S; 14] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 14] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 14]
[src]
fn add_amp<F>(self, other: F) -> [S; 14] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N14>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N14>,
impl<S> Frame for [S; 29] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N29
type Channels = Channels<[S; 29]>
type Float = [<S as Sample>::Float; 29]
type Signed = [<S as Sample>::Signed; 29]
const EQUILIBRIUM: [S; 29]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 29] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 29] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 29] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 29]> where
I: Iterator<Item = <[S; 29] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 29] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 29] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 29] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 29] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 29] as Frame>::NumChannels>,
M: FnMut(<[S; 29] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 29] as Frame>::NumChannels>,
M: FnMut(<[S; 29] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 29] as Frame>::NumChannels>,
M: FnMut(<[S; 29] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 29] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 29] as Frame>::NumChannels>,
M: FnMut(<[S; 29] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 29] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 29]
[src]
fn add_amp<F>(self, other: F) -> [S; 29] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N29>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N29>,
impl Frame for u8
[src]
type Sample = u8
type NumChannels = N1
type Channels = Channels<u8>
type Float = <u8 as Sample>::Float
type Signed = <u8 as Sample>::Signed
const EQUILIBRIUM: u8
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <u8 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<u8 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> u8 where
F: FnMut(usize) -> <u8 as Frame>::Sample,
[src]
F: FnMut(usize) -> <u8 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<u8> where
I: Iterator<Item = <u8 as Frame>::Sample>,
[src]
I: Iterator<Item = <u8 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<u8 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <u8 as Frame>::Signed
[src]
fn to_float_frame(self) -> <u8 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <u8 as Frame>::NumChannels>,
M: FnMut(<u8 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <u8 as Frame>::NumChannels>,
M: FnMut(<u8 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <u8 as Frame>::NumChannels>,
M: FnMut(<u8 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <u8 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <u8 as Frame>::NumChannels>,
M: FnMut(<u8 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <u8 as Frame>::NumChannels>,
fn scale_amp(self, amp: <u8 as Sample>::Float) -> u8
[src]
fn add_amp<F>(self, other: F) -> u8 where
F: Frame<Sample = <u8 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <u8 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 25] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N25
type Channels = Channels<[S; 25]>
type Float = [<S as Sample>::Float; 25]
type Signed = [<S as Sample>::Signed; 25]
const EQUILIBRIUM: [S; 25]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 25] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 25] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 25] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 25]> where
I: Iterator<Item = <[S; 25] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 25] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 25] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 25] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 25] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 25] as Frame>::NumChannels>,
M: FnMut(<[S; 25] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 25] as Frame>::NumChannels>,
M: FnMut(<[S; 25] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 25] as Frame>::NumChannels>,
M: FnMut(<[S; 25] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 25] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 25] as Frame>::NumChannels>,
M: FnMut(<[S; 25] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 25] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 25]
[src]
fn add_amp<F>(self, other: F) -> [S; 25] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N25>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N25>,
impl<S> Frame for [S; 9] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N9
type Channels = Channels<[S; 9]>
type Float = [<S as Sample>::Float; 9]
type Signed = [<S as Sample>::Signed; 9]
const EQUILIBRIUM: [S; 9]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 9] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 9] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 9] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 9]> where
I: Iterator<Item = <[S; 9] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 9] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 9] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 9] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 9] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 9] as Frame>::NumChannels>,
M: FnMut(<[S; 9] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 9] as Frame>::NumChannels>,
M: FnMut(<[S; 9] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 9] as Frame>::NumChannels>,
M: FnMut(<[S; 9] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 9] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 9] as Frame>::NumChannels>,
M: FnMut(<[S; 9] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 9] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 9]
[src]
fn add_amp<F>(self, other: F) -> [S; 9] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N9>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N9>,
impl Frame for i16
[src]
type Sample = i16
type NumChannels = N1
type Channels = Channels<i16>
type Float = <i16 as Sample>::Float
type Signed = <i16 as Sample>::Signed
const EQUILIBRIUM: i16
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <i16 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<i16 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> i16 where
F: FnMut(usize) -> <i16 as Frame>::Sample,
[src]
F: FnMut(usize) -> <i16 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<i16> where
I: Iterator<Item = <i16 as Frame>::Sample>,
[src]
I: Iterator<Item = <i16 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<i16 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <i16 as Frame>::Signed
[src]
fn to_float_frame(self) -> <i16 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <i16 as Frame>::NumChannels>,
M: FnMut(<i16 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <i16 as Frame>::NumChannels>,
M: FnMut(<i16 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <i16 as Frame>::NumChannels>,
M: FnMut(<i16 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <i16 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <i16 as Frame>::NumChannels>,
M: FnMut(<i16 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <i16 as Frame>::NumChannels>,
fn scale_amp(self, amp: <i16 as Sample>::Float) -> i16
[src]
fn add_amp<F>(self, other: F) -> i16 where
F: Frame<Sample = <i16 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <i16 as Sample>::Signed, NumChannels = N1>,
impl<S> Frame for [S; 16] where
S: Sample,
[src]
S: Sample,
type Sample = S
type NumChannels = N16
type Channels = Channels<[S; 16]>
type Float = [<S as Sample>::Float; 16]
type Signed = [<S as Sample>::Signed; 16]
const EQUILIBRIUM: [S; 16]
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <[S; 16] as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<[S; 16] as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> [S; 16] where
F: FnMut(usize) -> S,
[src]
F: FnMut(usize) -> S,
fn from_samples<I>(samples: &mut I) -> Option<[S; 16]> where
I: Iterator<Item = <[S; 16] as Frame>::Sample>,
[src]
I: Iterator<Item = <[S; 16] as Frame>::Sample>,
unsafe fn channel_unchecked(&self, idx: usize) -> &<[S; 16] as Frame>::Sample
[src]
fn to_signed_frame(self) -> <[S; 16] as Frame>::Signed
[src]
fn to_float_frame(self) -> <[S; 16] as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <[S; 16] as Frame>::NumChannels>,
M: FnMut(<[S; 16] as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <[S; 16] as Frame>::NumChannels>,
M: FnMut(<[S; 16] as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <[S; 16] as Frame>::NumChannels>,
M: FnMut(<[S; 16] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 16] as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <[S; 16] as Frame>::NumChannels>,
M: FnMut(<[S; 16] as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <[S; 16] as Frame>::NumChannels>,
fn scale_amp(self, amp: <S as Sample>::Float) -> [S; 16]
[src]
fn add_amp<F>(self, other: F) -> [S; 16] where
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N16>,
[src]
F: Frame<Sample = <S as Sample>::Signed, NumChannels = N16>,
Implementors
impl Frame for I24
[src]
type Sample = I24
type NumChannels = N1
type Channels = Channels<I24>
type Float = <I24 as Sample>::Float
type Signed = <I24 as Sample>::Signed
const EQUILIBRIUM: I24
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <I24 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<I24 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> I24 where
F: FnMut(usize) -> <I24 as Frame>::Sample,
[src]
F: FnMut(usize) -> <I24 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<I24> where
I: Iterator<Item = <I24 as Frame>::Sample>,
[src]
I: Iterator<Item = <I24 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<I24 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <I24 as Frame>::Signed
[src]
fn to_float_frame(self) -> <I24 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <I24 as Frame>::NumChannels>,
M: FnMut(<I24 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <I24 as Frame>::NumChannels>,
M: FnMut(<I24 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <I24 as Frame>::NumChannels>,
M: FnMut(<I24 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <I24 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <I24 as Frame>::NumChannels>,
M: FnMut(<I24 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <I24 as Frame>::NumChannels>,
fn scale_amp(self, amp: <I24 as Sample>::Float) -> I24
[src]
fn add_amp<F>(self, other: F) -> I24 where
F: Frame<Sample = <I24 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <I24 as Sample>::Signed, NumChannels = N1>,
impl Frame for I48
[src]
type Sample = I48
type NumChannels = N1
type Channels = Channels<I48>
type Float = <I48 as Sample>::Float
type Signed = <I48 as Sample>::Signed
const EQUILIBRIUM: I48
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <I48 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<I48 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> I48 where
F: FnMut(usize) -> <I48 as Frame>::Sample,
[src]
F: FnMut(usize) -> <I48 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<I48> where
I: Iterator<Item = <I48 as Frame>::Sample>,
[src]
I: Iterator<Item = <I48 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<I48 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <I48 as Frame>::Signed
[src]
fn to_float_frame(self) -> <I48 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <I48 as Frame>::NumChannels>,
M: FnMut(<I48 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <I48 as Frame>::NumChannels>,
M: FnMut(<I48 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <I48 as Frame>::NumChannels>,
M: FnMut(<I48 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <I48 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <I48 as Frame>::NumChannels>,
M: FnMut(<I48 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <I48 as Frame>::NumChannels>,
fn scale_amp(self, amp: <I48 as Sample>::Float) -> I48
[src]
fn add_amp<F>(self, other: F) -> I48 where
F: Frame<Sample = <I48 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <I48 as Sample>::Signed, NumChannels = N1>,
impl Frame for U24
[src]
type Sample = U24
type NumChannels = N1
type Channels = Channels<U24>
type Float = <U24 as Sample>::Float
type Signed = <U24 as Sample>::Signed
const EQUILIBRIUM: U24
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <U24 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<U24 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> U24 where
F: FnMut(usize) -> <U24 as Frame>::Sample,
[src]
F: FnMut(usize) -> <U24 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<U24> where
I: Iterator<Item = <U24 as Frame>::Sample>,
[src]
I: Iterator<Item = <U24 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<U24 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <U24 as Frame>::Signed
[src]
fn to_float_frame(self) -> <U24 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <U24 as Frame>::NumChannels>,
M: FnMut(<U24 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <U24 as Frame>::NumChannels>,
M: FnMut(<U24 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <U24 as Frame>::NumChannels>,
M: FnMut(<U24 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <U24 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <U24 as Frame>::NumChannels>,
M: FnMut(<U24 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <U24 as Frame>::NumChannels>,
fn scale_amp(self, amp: <U24 as Sample>::Float) -> U24
[src]
fn add_amp<F>(self, other: F) -> U24 where
F: Frame<Sample = <U24 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <U24 as Sample>::Signed, NumChannels = N1>,
impl Frame for U48
[src]
type Sample = U48
type NumChannels = N1
type Channels = Channels<U48>
type Float = <U48 as Sample>::Float
type Signed = <U48 as Sample>::Signed
const EQUILIBRIUM: U48
[src]
const CHANNELS: usize
[src]
fn channels(self) -> <U48 as Frame>::Channels
[src]
fn channel(&self, idx: usize) -> Option<&<U48 as Frame>::Sample>
[src]
fn from_fn<F>(from: F) -> U48 where
F: FnMut(usize) -> <U48 as Frame>::Sample,
[src]
F: FnMut(usize) -> <U48 as Frame>::Sample,
fn from_samples<I>(samples: &mut I) -> Option<U48> where
I: Iterator<Item = <U48 as Frame>::Sample>,
[src]
I: Iterator<Item = <U48 as Frame>::Sample>,
unsafe fn channel_unchecked(&self, _idx: usize) -> &<U48 as Frame>::Sample
[src]
fn to_signed_frame(self) -> <U48 as Frame>::Signed
[src]
fn to_float_frame(self) -> <U48 as Frame>::Float
[src]
fn map<F, M>(self, map: M) -> F where
F: Frame<NumChannels = <U48 as Frame>::NumChannels>,
M: FnMut(<U48 as Frame>::Sample) -> <F as Frame>::Sample,
[src]
F: Frame<NumChannels = <U48 as Frame>::NumChannels>,
M: FnMut(<U48 as Frame>::Sample) -> <F as Frame>::Sample,
fn zip_map<O, F, M>(self, other: O, zip_map: M) -> F where
F: Frame<NumChannels = <U48 as Frame>::NumChannels>,
M: FnMut(<U48 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <U48 as Frame>::NumChannels>,
[src]
F: Frame<NumChannels = <U48 as Frame>::NumChannels>,
M: FnMut(<U48 as Frame>::Sample, <O as Frame>::Sample) -> <F as Frame>::Sample,
O: Frame<NumChannels = <U48 as Frame>::NumChannels>,
fn scale_amp(self, amp: <U48 as Sample>::Float) -> U48
[src]
fn add_amp<F>(self, other: F) -> U48 where
F: Frame<Sample = <U48 as Sample>::Signed, NumChannels = N1>,
[src]
F: Frame<Sample = <U48 as Sample>::Signed, NumChannels = N1>,