Enum gstreamer_audio::AudioChannelPosition [−][src]
pub enum AudioChannelPosition { 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 }
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.
AudioChannelPosition::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.
AudioChannelPosition::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 implicitely means that this is a stereo stream with a front left and front right channel.
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
Methods
impl AudioChannelPosition
[src]
impl AudioChannelPosition
pub fn to_mask(self) -> u64
[src]
pub fn to_mask(self) -> u64
pub fn positions_to_mask(
positions: &[AudioChannelPosition],
force_order: bool
) -> Option<u64>
[src]
pub fn positions_to_mask(
positions: &[AudioChannelPosition],
force_order: bool
) -> Option<u64>
pub fn positions_from_mask(
mask: u64,
positions: &mut [AudioChannelPosition]
) -> Result<(), BoolError>
[src]
pub fn positions_from_mask(
mask: u64,
positions: &mut [AudioChannelPosition]
) -> Result<(), BoolError>
pub fn positions_to_valid_order(
positions: &mut [AudioChannelPosition]
) -> Result<(), BoolError>
[src]
pub fn positions_to_valid_order(
positions: &mut [AudioChannelPosition]
) -> Result<(), BoolError>
pub fn get_fallback_mask(channels: u32) -> u64
[src]
pub fn get_fallback_mask(channels: u32) -> u64
pub fn check_valid_channel_positions(
positions: &[AudioChannelPosition],
force_order: bool
) -> bool
[src]
pub fn check_valid_channel_positions(
positions: &[AudioChannelPosition],
force_order: bool
) -> bool
Trait Implementations
impl Debug for AudioChannelPosition
[src]
impl Debug for AudioChannelPosition
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Eq for AudioChannelPosition
[src]
impl Eq for AudioChannelPosition
impl PartialEq for AudioChannelPosition
[src]
impl PartialEq for AudioChannelPosition
fn eq(&self, other: &AudioChannelPosition) -> bool
[src]
fn eq(&self, other: &AudioChannelPosition) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &AudioChannelPosition) -> bool
[src]
fn ne(&self, other: &AudioChannelPosition) -> bool
This method tests for !=
.
impl Ord for AudioChannelPosition
[src]
impl Ord for AudioChannelPosition
fn cmp(&self, other: &AudioChannelPosition) -> Ordering
[src]
fn cmp(&self, other: &AudioChannelPosition) -> Ordering
This method returns an Ordering
between self
and other
. Read more
fn max(self, other: Self) -> Self
1.21.0[src]
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
1.21.0[src]
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
impl PartialOrd for AudioChannelPosition
[src]
impl PartialOrd for AudioChannelPosition
fn partial_cmp(&self, other: &AudioChannelPosition) -> Option<Ordering>
[src]
fn partial_cmp(&self, other: &AudioChannelPosition) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, other: &AudioChannelPosition) -> bool
[src]
fn lt(&self, other: &AudioChannelPosition) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, other: &AudioChannelPosition) -> bool
[src]
fn le(&self, other: &AudioChannelPosition) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, other: &AudioChannelPosition) -> bool
[src]
fn gt(&self, other: &AudioChannelPosition) -> bool
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, other: &AudioChannelPosition) -> bool
[src]
fn ge(&self, other: &AudioChannelPosition) -> bool
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Hash for AudioChannelPosition
[src]
impl Hash for AudioChannelPosition
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl Clone for AudioChannelPosition
[src]
impl Clone for AudioChannelPosition
fn clone(&self) -> AudioChannelPosition
[src]
fn clone(&self) -> AudioChannelPosition
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Copy for AudioChannelPosition
[src]
impl Copy for AudioChannelPosition
impl StaticType for AudioChannelPosition
[src]
impl StaticType for AudioChannelPosition
fn static_type() -> Type
[src]
fn static_type() -> Type
Returns the type identifier of Self
.
impl<'a> FromValueOptional<'a> for AudioChannelPosition
[src]
impl<'a> FromValueOptional<'a> for AudioChannelPosition
unsafe fn from_value_optional(value: &Value) -> Option<Self>
[src]
unsafe fn from_value_optional(value: &Value) -> Option<Self>
impl<'a> FromValue<'a> for AudioChannelPosition
[src]
impl<'a> FromValue<'a> for AudioChannelPosition
unsafe fn from_value(value: &Value) -> Self
[src]
unsafe fn from_value(value: &Value) -> Self
impl SetValue for AudioChannelPosition
[src]
impl SetValue for AudioChannelPosition
Auto Trait Implementations
impl Send for AudioChannelPosition
impl Send for AudioChannelPosition
impl Sync for AudioChannelPosition
impl Sync for AudioChannelPosition