channelmap.h File Reference

Constants and routines for channel mapping handling. More...

Go to the source code of this file.

Data Structures

struct  pa_channel_map
 A channel map which can be used to attach labels to specific channels of a stream. More...

Defines

#define PA_CHANNEL_MAP_SNPRINT_MAX   336
 The maximum length of strings returned by pa_channel_map_snprint().

Typedefs

typedef enum pa_channel_position pa_channel_position_t
 A list of channel labels.
typedef enum pa_channel_map_def pa_channel_map_def_t
 A list of channel mapping definitions for pa_channel_map_init_auto().

Enumerations

enum  pa_channel_position {
  PA_CHANNEL_POSITION_INVALID = -1,
  PA_CHANNEL_POSITION_MONO = 0,
  PA_CHANNEL_POSITION_LEFT,
  PA_CHANNEL_POSITION_RIGHT,
  PA_CHANNEL_POSITION_CENTER,
  PA_CHANNEL_POSITION_FRONT_LEFT = PA_CHANNEL_POSITION_LEFT,
  PA_CHANNEL_POSITION_FRONT_RIGHT = PA_CHANNEL_POSITION_RIGHT,
  PA_CHANNEL_POSITION_FRONT_CENTER = PA_CHANNEL_POSITION_CENTER,
  PA_CHANNEL_POSITION_REAR_CENTER,
  PA_CHANNEL_POSITION_REAR_LEFT,
  PA_CHANNEL_POSITION_REAR_RIGHT,
  PA_CHANNEL_POSITION_LFE,
  PA_CHANNEL_POSITION_SUBWOOFER = PA_CHANNEL_POSITION_LFE,
  PA_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER,
  PA_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER,
  PA_CHANNEL_POSITION_SIDE_LEFT,
  PA_CHANNEL_POSITION_SIDE_RIGHT,
  PA_CHANNEL_POSITION_AUX0,
  PA_CHANNEL_POSITION_AUX1,
  PA_CHANNEL_POSITION_AUX2,
  PA_CHANNEL_POSITION_AUX3,
  PA_CHANNEL_POSITION_AUX4,
  PA_CHANNEL_POSITION_AUX5,
  PA_CHANNEL_POSITION_AUX6,
  PA_CHANNEL_POSITION_AUX7,
  PA_CHANNEL_POSITION_AUX8,
  PA_CHANNEL_POSITION_AUX9,
  PA_CHANNEL_POSITION_AUX10,
  PA_CHANNEL_POSITION_AUX11,
  PA_CHANNEL_POSITION_AUX12,
  PA_CHANNEL_POSITION_AUX13,
  PA_CHANNEL_POSITION_AUX14,
  PA_CHANNEL_POSITION_AUX15,
  PA_CHANNEL_POSITION_AUX16,
  PA_CHANNEL_POSITION_AUX17,
  PA_CHANNEL_POSITION_AUX18,
  PA_CHANNEL_POSITION_AUX19,
  PA_CHANNEL_POSITION_AUX20,
  PA_CHANNEL_POSITION_AUX21,
  PA_CHANNEL_POSITION_AUX22,
  PA_CHANNEL_POSITION_AUX23,
  PA_CHANNEL_POSITION_AUX24,
  PA_CHANNEL_POSITION_AUX25,
  PA_CHANNEL_POSITION_AUX26,
  PA_CHANNEL_POSITION_AUX27,
  PA_CHANNEL_POSITION_AUX28,
  PA_CHANNEL_POSITION_AUX29,
  PA_CHANNEL_POSITION_AUX30,
  PA_CHANNEL_POSITION_AUX31,
  PA_CHANNEL_POSITION_TOP_CENTER,
  PA_CHANNEL_POSITION_TOP_FRONT_LEFT,
  PA_CHANNEL_POSITION_TOP_FRONT_RIGHT,
  PA_CHANNEL_POSITION_TOP_FRONT_CENTER,
  PA_CHANNEL_POSITION_TOP_REAR_LEFT,
  PA_CHANNEL_POSITION_TOP_REAR_RIGHT,
  PA_CHANNEL_POSITION_TOP_REAR_CENTER,
  PA_CHANNEL_POSITION_MAX
}
 A list of channel labels. More...
enum  pa_channel_map_def {
  PA_CHANNEL_MAP_AIFF,
  PA_CHANNEL_MAP_ALSA,
  PA_CHANNEL_MAP_AUX,
  PA_CHANNEL_MAP_WAVEEX,
  PA_CHANNEL_MAP_OSS,
  PA_CHANNEL_MAP_DEFAULT = PA_CHANNEL_MAP_AIFF
}
 A list of channel mapping definitions for pa_channel_map_init_auto(). More...

Functions

pa_channel_mappa_channel_map_init (pa_channel_map *m)
 Initialize the specified channel map and return a pointer to it.
pa_channel_mappa_channel_map_init_mono (pa_channel_map *m)
 Initialize the specified channel map for monoaural audio and return a pointer to it.
pa_channel_mappa_channel_map_init_stereo (pa_channel_map *m)
 Initialize the specified channel map for stereophonic audio and return a pointer to it.
pa_channel_mappa_channel_map_init_auto (pa_channel_map *m, unsigned channels, pa_channel_map_def_t def)
 Initialize the specified channel map for the specified number of channels using default labels and return a pointer to it.
const char * pa_channel_position_to_string (pa_channel_position_t pos)
 Return a text label for the specified channel position.
char * pa_channel_map_snprint (char *s, size_t l, const pa_channel_map *map)
 Make a humand readable string from the specified channel map.
pa_channel_mappa_channel_map_parse (pa_channel_map *map, const char *s)
 Parse a channel position list into a channel map structure.
int pa_channel_map_equal (const pa_channel_map *a, const pa_channel_map *b)
 Compare two channel maps.
int pa_channel_map_valid (const pa_channel_map *map)
 Return non-zero of the specified channel map is considered valid.


Detailed Description

Constants and routines for channel mapping handling.


Define Documentation

#define PA_CHANNEL_MAP_SNPRINT_MAX   336

The maximum length of strings returned by pa_channel_map_snprint().


Typedef Documentation

typedef enum pa_channel_map_def pa_channel_map_def_t

A list of channel mapping definitions for pa_channel_map_init_auto().

typedef enum pa_channel_position pa_channel_position_t

A list of channel labels.


Enumeration Type Documentation

enum pa_channel_map_def

A list of channel mapping definitions for pa_channel_map_init_auto().

Enumerator:
PA_CHANNEL_MAP_AIFF  The mapping from RFC3551, which is based on AIFF-C.
PA_CHANNEL_MAP_ALSA  The default mapping used by ALSA.
PA_CHANNEL_MAP_AUX  Only aux channels.
PA_CHANNEL_MAP_WAVEEX  Microsoft's WAVEFORMATEXTENSIBLE mapping.
PA_CHANNEL_MAP_OSS  The default channel mapping used by OSS as defined in the OSS 4.0 API specs.
PA_CHANNEL_MAP_DEFAULT  The default channel map.

enum pa_channel_position

A list of channel labels.

Enumerator:
PA_CHANNEL_POSITION_INVALID 
PA_CHANNEL_POSITION_MONO 
PA_CHANNEL_POSITION_LEFT 
PA_CHANNEL_POSITION_RIGHT 
PA_CHANNEL_POSITION_CENTER 
PA_CHANNEL_POSITION_FRONT_LEFT 
PA_CHANNEL_POSITION_FRONT_RIGHT 
PA_CHANNEL_POSITION_FRONT_CENTER 
PA_CHANNEL_POSITION_REAR_CENTER 
PA_CHANNEL_POSITION_REAR_LEFT 
PA_CHANNEL_POSITION_REAR_RIGHT 
PA_CHANNEL_POSITION_LFE 
PA_CHANNEL_POSITION_SUBWOOFER 
PA_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER 
PA_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER 
PA_CHANNEL_POSITION_SIDE_LEFT 
PA_CHANNEL_POSITION_SIDE_RIGHT 
PA_CHANNEL_POSITION_AUX0 
PA_CHANNEL_POSITION_AUX1 
PA_CHANNEL_POSITION_AUX2 
PA_CHANNEL_POSITION_AUX3 
PA_CHANNEL_POSITION_AUX4 
PA_CHANNEL_POSITION_AUX5 
PA_CHANNEL_POSITION_AUX6 
PA_CHANNEL_POSITION_AUX7 
PA_CHANNEL_POSITION_AUX8 
PA_CHANNEL_POSITION_AUX9 
PA_CHANNEL_POSITION_AUX10 
PA_CHANNEL_POSITION_AUX11 
PA_CHANNEL_POSITION_AUX12 
PA_CHANNEL_POSITION_AUX13 
PA_CHANNEL_POSITION_AUX14 
PA_CHANNEL_POSITION_AUX15 
PA_CHANNEL_POSITION_AUX16 
PA_CHANNEL_POSITION_AUX17 
PA_CHANNEL_POSITION_AUX18 
PA_CHANNEL_POSITION_AUX19 
PA_CHANNEL_POSITION_AUX20 
PA_CHANNEL_POSITION_AUX21 
PA_CHANNEL_POSITION_AUX22 
PA_CHANNEL_POSITION_AUX23 
PA_CHANNEL_POSITION_AUX24 
PA_CHANNEL_POSITION_AUX25 
PA_CHANNEL_POSITION_AUX26 
PA_CHANNEL_POSITION_AUX27 
PA_CHANNEL_POSITION_AUX28 
PA_CHANNEL_POSITION_AUX29 
PA_CHANNEL_POSITION_AUX30 
PA_CHANNEL_POSITION_AUX31 
PA_CHANNEL_POSITION_TOP_CENTER 
PA_CHANNEL_POSITION_TOP_FRONT_LEFT 
PA_CHANNEL_POSITION_TOP_FRONT_RIGHT 
PA_CHANNEL_POSITION_TOP_FRONT_CENTER 
PA_CHANNEL_POSITION_TOP_REAR_LEFT 
PA_CHANNEL_POSITION_TOP_REAR_RIGHT 
PA_CHANNEL_POSITION_TOP_REAR_CENTER 
PA_CHANNEL_POSITION_MAX 


Function Documentation

int pa_channel_map_equal ( const pa_channel_map a,
const pa_channel_map b 
)

Compare two channel maps.

Return 1 if both match.

pa_channel_map* pa_channel_map_init ( pa_channel_map m  ) 

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

pa_channel_map* pa_channel_map_init_auto ( pa_channel_map m,
unsigned  channels,
pa_channel_map_def_t  def 
)

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

pa_channel_map* pa_channel_map_init_mono ( pa_channel_map m  ) 

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

pa_channel_map* pa_channel_map_init_stereo ( pa_channel_map m  ) 

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

pa_channel_map* pa_channel_map_parse ( pa_channel_map map,
const char *  s 
)

Parse a channel position list into a channel map structure.

Since:
0.8.1
Examples:
pacat.c, and paplay.c.

char* pa_channel_map_snprint ( char *  s,
size_t  l,
const pa_channel_map map 
)

Make a humand readable string from the specified channel map.

int pa_channel_map_valid ( const pa_channel_map map  ) 

Return non-zero of the specified channel map is considered valid.

const char* pa_channel_position_to_string ( pa_channel_position_t  pos  ) 

Return a text label for the specified channel position.


Generated on Wed May 30 19:36:31 2007 for PulseAudio by  doxygen 1.5.1