pub struct UnsupportedChannelCount { /* private fields */ }Expand description
Payload for ConvertError::UnsupportedChannelCount.
A channel count this crate will not carry: more than
u8::MAX, which the portable AudioFrame seat cannot hold, or
none at all on a frame that claims samples.
Refused, never clamped. Clamping to 255 was silent truncation of exactly the kind this boundary exists to refuse: a 256-channel packed frame then computed its byte product from the clipped count and copied 510 of its 512 bytes, delivering a short buffer that advertised 255 channels. A short read is not a smaller frame; it is a wrong one.
The count is carried signed, as AVChannelLayout.nb_channels
declares it. It has to be: a negative count is one of the things
this arm refuses, and the first version of this refusal read the
count off a materialised layout description that had already
floored it to zero — so nb_channels == -1 arrived looking like a
legitimate zero-channel frame and was never seen by the guard meant
to catch it.
Implementations§
Trait Implementations§
Source§impl Clone for UnsupportedChannelCount
impl Clone for UnsupportedChannelCount
Source§fn clone(&self) -> UnsupportedChannelCount
fn clone(&self) -> UnsupportedChannelCount
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more