[][src]Struct libpulse_binding::channelmap::Map

#[repr(C)]
pub struct Map { pub channels: u8, pub map: [Position; 32], }

A channel map which can be used to attach labels to specific channels of a stream. These values are relevant for conversion and mixing of streams.

Fields

channels: u8

Number of channels mapped

map: [Position; 32]

Channel labels

Methods

impl Map[src]

pub fn new_from_string(s: &str) -> Result<Self, ()>[src]

Parse a channel position list or well-known mapping name into a channel map structure. This turns the output of print and to_name back into a Map.

pub fn init(&mut self) -> &mut Self[src]

Initialize the specified channel map and return a pointer to it. The map will have a defined state but is_valid will fail for it.

pub fn init_mono(&mut self) -> &mut Self[src]

Initialize the specified channel map for monaural audio and return a pointer to it.

pub fn init_stereo(&mut self) -> &mut Self[src]

Initialize the specified channel map for stereophonic audio and return a pointer to it.

pub fn init_auto(&mut self, channels: u32, def: MapDef) -> Option<&mut Self>[src]

Initialize the specified channel map for the specified number of channels using default labels and return a pointer to it.

This call will fail (return None) if there is no default channel map known for this specific number of channels and mapping.

pub fn init_extend(&mut self, channels: u32, def: MapDef) -> &mut Self[src]

Similar to init_auto but instead of failing if no default mapping is known with the specified parameters it will synthesize a mapping based on a known mapping with fewer channels and fill up the rest with AUX0...AUX31 channels.

pub fn print(&self) -> String[src]

Make a human readable string from the map.

pub fn is_equal_to(&self, to: &Self) -> bool[src]

Compare whether or not two maps are equal.

pub fn is_valid(&self) -> bool[src]

Check whether or not the map is considered valid.

pub fn is_compatible_with_sample_spec(&self, ss: &Spec) -> bool[src]

Checks whether or not the specified map is compatible with the specified sample spec.

pub fn is_superset_of(&self, of: &Self) -> bool[src]

Checks whether every channel defined in of is also defined in self.

pub fn can_balance(&self) -> bool[src]

Checks whether or not it makes sense to apply a volume “balance” with this mapping, i.e. if there are left/right channels available.

pub fn can_fade(&self) -> bool[src]

Checks whether or not it makes sense to apply a volume “fade” (i.e. “balance” between front and rear) with this mapping, i.e. if there are front/rear channels available.

pub fn can_lfe_balance(&self) -> bool[src]

Checks whether or not it makes sense to apply a volume “LFE balance” (i.e. “balance” between LFE and non-LFE channels) with this mapping, i.e. if there are LFE and non-LFE channels available.

pub fn to_name(&self) -> Option<Cow<'static, str>>[src]

Tries to find a well-known channel mapping name for this channel mapping, i.e. “stereo”, “surround-71” and so on. This name can be parsed with new_from_string.

pub fn to_pretty_name(&self) -> Option<String>[src]

Similar to to_name, but returning prettier, human readable text labels, i.e. “Stereo”, “Surround 7.1” and so on.

pub fn has_position(&self, p: Position) -> bool[src]

Checks whether or not the specified channel position is available at least once in the map.

pub fn get_mask(&self) -> PositionMask[src]

Generates a bit mask from a map.

Trait Implementations

impl Copy for Map[src]

impl PartialEq<Map> for Map[src]

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests for !=.

impl Default for Map[src]

impl Clone for Map[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for Map[src]

Auto Trait Implementations

impl Send for Map

impl Sync for Map

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]