#[non_exhaustive]
pub enum AudioChannelPosition {
Show 31 variants
None,
Mono,
Invalid,
FrontLeft,
FrontRight,
FrontCenter,
Lfe1,
RearLeft,
RearRight,
FrontLeftOfCenter,
FrontRightOfCenter,
RearCenter,
Lfe2,
SideLeft,
SideRight,
TopFrontLeft,
TopFrontRight,
TopFrontCenter,
TopCenter,
TopRearLeft,
TopRearRight,
TopSideLeft,
TopSideRight,
TopRearCenter,
BottomFrontCenter,
BottomFrontLeft,
BottomFrontRight,
WideLeft,
WideRight,
SurroundLeft,
SurroundRight,
// some variants omitted
}
Expand description
Audio channel positions.
These are the channels defined in SMPTE 2036-2-2008 Table 1 for 22.2 audio systems with the Surround and Wide channels from DTS Coherent Acoustics (v.1.3.1) and 10.2 and 7.1 layouts. In the caps the actual channel layout is expressed with a channel count and a channel mask, which describes the existing channels. The positions in the bit mask correspond to the enum values. For negotiation it is allowed to have more bits set in the channel mask than the number of channels to specify the allowed channel positions but this is not allowed in negotiated caps. It is not allowed in any situation other than the one mentioned below to have less bits set in the channel mask than the number of channels.
Mono
can only be used with a single mono channel that
has no direction information and would be mixed into all directional channels.
This is expressed in caps by having a single channel and no channel mask.
None
can only be used if all channels have this position.
This is expressed in caps by having a channel mask with no bits set.
As another special case it is allowed to have two channels without a channel mask. This implicitly means that this is a stereo stream with a front left and front right channel.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
None
used for position-less channels, e.g. from a sound card that records 1024 channels; mutually exclusive with any other channel position
Mono
Mono without direction; can only be used with 1 channel
Invalid
invalid position
FrontLeft
Front left
FrontRight
Front right
FrontCenter
Front center
Lfe1
Low-frequency effects 1 (subwoofer)
RearLeft
Rear left
RearRight
Rear right
FrontLeftOfCenter
Front left of center
FrontRightOfCenter
Front right of center
RearCenter
Rear center
Lfe2
Low-frequency effects 2 (subwoofer)
SideLeft
Side left
SideRight
Side right
TopFrontLeft
Top front left
TopFrontRight
Top front right
TopFrontCenter
Top front center
TopCenter
Top center
TopRearLeft
Top rear left
TopRearRight
Top rear right
TopSideLeft
Top side right
TopSideRight
Top rear right
TopRearCenter
Top rear center
BottomFrontCenter
Bottom front center
BottomFrontLeft
Bottom front left
BottomFrontRight
Bottom front right
WideLeft
Wide left (between front left and side left)
WideRight
Wide right (between front right and side right)
SurroundLeft
Surround left (between rear left and side left)
SurroundRight
Surround right (between rear right and side right)
Implementations
Trait Implementations
type Checker = GenericValueTypeChecker<Self>
type Checker = GenericValueTypeChecker<Self>
Value type checker.
Get the contained value from a Value
. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Returns the type identifier of Self
.
Auto Trait Implementations
impl RefUnwindSafe for AudioChannelPosition
impl Send for AudioChannelPosition
impl Sync for AudioChannelPosition
impl Unpin for AudioChannelPosition
impl UnwindSafe for AudioChannelPosition
Blanket Implementations
Mutably borrows from an owned value. Read more
Ensures that the type has been registered with the type system.
Returns a SendValue
clone of self
.