External Filter plugin SDK
[External PCM plugin SDK]


Data Structures

struct  snd_pcm_extplug
struct  snd_pcm_extplug_callback

Defines

#define SND_PCM_EXTPLUG_VERSION_MAJOR   1
#define SND_PCM_EXTPLUG_VERSION_MINOR   0
#define SND_PCM_EXTPLUG_VERSION_TINY   1
#define SND_PCM_EXTPLUG_VERSION

Typedefs

typedef snd_pcm_extplug snd_pcm_extplug_t
typedef snd_pcm_extplug_callback snd_pcm_extplug_callback_t

Enumerations

enum  { SND_PCM_EXTPLUG_HW_FORMAT, SND_PCM_EXTPLUG_HW_CHANNELS, SND_PCM_EXTPLUG_HW_PARAMS }

Functions

int snd_pcm_extplug_create (snd_pcm_extplug_t *ext, const char *name, snd_config_t *root, snd_config_t *slave_conf, snd_pcm_stream_t stream, int mode)
 Create an extplug instance.
int snd_pcm_extplug_delete (snd_pcm_extplug_t *ext)
 Delete the extplug instance.
void snd_pcm_extplug_params_reset (snd_pcm_extplug_t *ext)
 Reset extplug parameters.
int snd_pcm_extplug_set_param_list (snd_pcm_extplug_t *extplug, int type, unsigned int num_list, const unsigned int *list)
 Set master parameter as the list.
int snd_pcm_extplug_set_param_minmax (snd_pcm_extplug_t *extplug, int type, unsigned int min, unsigned int max)
 Set master parameter as the min/max values.
int snd_pcm_extplug_set_slave_param_list (snd_pcm_extplug_t *extplug, int type, unsigned int num_list, const unsigned int *list)
 Set slave parameter as the list.
int snd_pcm_extplug_set_slave_param_minmax (snd_pcm_extplug_t *extplug, int type, unsigned int min, unsigned int max)
 Set slave parameter as the min/max values.

Detailed Description

See the PCM (digital audio) interface page for more details.

Define Documentation

#define SND_PCM_EXTPLUG_VERSION

Value:

Filter-plugin protocol version

#define SND_PCM_EXTPLUG_VERSION_MAJOR   1

Protocol major version

#define SND_PCM_EXTPLUG_VERSION_MINOR   0

Protocol minor version

#define SND_PCM_EXTPLUG_VERSION_TINY   1

Protocol tiny version


Typedef Documentation

typedef struct snd_pcm_extplug_callback snd_pcm_extplug_callback_t

Callback table of extplug

typedef struct snd_pcm_extplug snd_pcm_extplug_t

Handle of external filter plugin


Enumeration Type Documentation

anonymous enum

hw constraints for extplug

Enumerator:
SND_PCM_EXTPLUG_HW_FORMAT  format
SND_PCM_EXTPLUG_HW_CHANNELS  channels
SND_PCM_EXTPLUG_HW_PARAMS  max number of hw constraints


Function Documentation

int snd_pcm_extplug_create ( snd_pcm_extplug_t extplug,
const char *  name,
snd_config_t root,
snd_config_t slave_conf,
snd_pcm_stream_t  stream,
int  mode 
)

Create an extplug instance.

Parameters:
extplug the extplug handle
name name of the PCM
root configuration tree root
slave_conf slave configuration root
stream stream direction
mode PCM open mode
Returns:
0 if successful, or a negative error code
Creates the extplug instance based on the given handle. The slave_conf argument is mandatory, and usually taken from the config tree of the PCM plugin as "slave" config value. name, root, stream and mode arguments are the values used for opening the PCM.

The callback is the mandatory field of extplug handle. At least, start, stop and pointer callbacks must be set before calling this function.

int snd_pcm_extplug_delete ( snd_pcm_extplug_t extplug  ) 

Delete the extplug instance.

Parameters:
extplug the extplug handle to delete
Returns:
0 if successful, or a negative error code
The destructor of extplug instance. Closes the PCM and deletes the associated resources.

void snd_pcm_extplug_params_reset ( snd_pcm_extplug_t extplug  ) 

Reset extplug parameters.

Parameters:
extplug the extplug handle
Resets the all parameters for the given extplug handle.

int snd_pcm_extplug_set_param_list ( snd_pcm_extplug_t extplug,
int  type,
unsigned int  num_list,
const unsigned int *  list 
)

Set master parameter as the list.

Parameters:
extplug the extplug handle
type parameter type
num_list number of available values
list the list of available values
Returns:
0 if successful, or a negative error code
Sets the master parameter as the list. The available values of the given parameter type of this PCM (as input) is restricted to the ones of the given list.

int snd_pcm_extplug_set_param_minmax ( snd_pcm_extplug_t extplug,
int  type,
unsigned int  min,
unsigned int  max 
)

Set master parameter as the min/max values.

Parameters:
extplug the extplug handle
type parameter type
min the minimum value
max the maximum value
Returns:
0 if successful, or a negative error code
Sets the master parameter as the min/max values. The available values of the given parameter type of this PCM (as input) is restricted between the given minimum and maximum values.

int snd_pcm_extplug_set_slave_param_list ( snd_pcm_extplug_t extplug,
int  type,
unsigned int  num_list,
const unsigned int *  list 
)

Set slave parameter as the list.

Parameters:
extplug the extplug handle
type parameter type
num_list number of available values
list the list of available values
Returns:
0 if successful, or a negative error code
Sets the slave parameter as the list. The available values of the given parameter type of the slave PCM is restricted to the ones of the given list.

int snd_pcm_extplug_set_slave_param_minmax ( snd_pcm_extplug_t extplug,
int  type,
unsigned int  min,
unsigned int  max 
)

Set slave parameter as the min/max values.

Parameters:
extplug the extplug handle
type parameter type
min the minimum value
max the maximum value
Returns:
0 if successful, or a negative error code
Sets the slave parameter as the min/max values. The available values of the given parameter type of the slave PCM is restricted between the given minimum and maximum values.


Generated on Tue Apr 10 08:32:01 2007 for ALSA project - the C library reference by  doxygen 1.5.1