pub enum ExactOutputError {
InvalidOutputFormat,
InvalidEffectivePrecision(u32),
UnknownEffectivePrecision,
RateMismatch {
source: u32,
output: u32,
},
LayoutMismatch {
source: ChannelLayout,
output: ChannelLayout,
},
InsufficientPrecision {
source: u32,
output: u32,
},
IncompleteFrame,
BlockTooLarge,
SampleOutOfRange {
index: usize,
sample: i32,
bits: u32,
},
Allocation(TryReserveError),
}Expand description
A refusal to represent source samples exactly in a selected output format.
Variants§
InvalidOutputFormat
Rate or channel positions are invalid or unknown.
InvalidEffectivePrecision(u32)
Claimed effective precision is invalid for its representation.
UnknownEffectivePrecision
The downstream precision has not been established by the caller.
RateMismatch
Exact output cannot resample to another rate.
LayoutMismatch
Exact output cannot mix or remap source speaker positions.
Fields
source: ChannelLayoutOriginal source speaker positions and interleaved order.
output: ChannelLayoutSelected output speaker positions and interleaved order.
InsufficientPrecision
The representation or downstream precision would discard source bits.
Fields
IncompleteFrame
A source block ends inside an interleaved frame.
BlockTooLarge
A source block exceeds the bounded encoding operation.
SampleOutOfRange
A canonical source integer is outside its declared valid-bit range.
Fields
Allocation(TryReserveError)
The caller’s encoded buffer cannot reserve the needed capacity.