ALSA project - the C library reference
Loading...
Searching...
No Matches
pcm_route.c File Reference

PCM Route & Volume Plugin Interface. More...

Functions

int snd_pcm_route_open (snd_pcm_t **pcmp, const char *name, snd_pcm_format_t sformat, int schannels, snd_pcm_route_ttable_entry_t *ttable, unsigned int tt_ssize, unsigned int tt_cused, unsigned int tt_sused, snd_pcm_t *slave, int close_slave)
 Creates a new Route & Volume PCM.
 
int snd_pcm_route_determine_ttable (snd_config_t *tt, unsigned int *tt_csize, unsigned int *tt_ssize)
 Determine route matrix sizes.
 
int snd_pcm_route_load_ttable (snd_config_t *tt, snd_pcm_route_ttable_entry_t *ttable, unsigned int tt_csize, unsigned int tt_ssize, unsigned int *tt_cused, unsigned int *tt_sused, int schannels)
 Load route matrix.
 
int _snd_pcm_route_open (snd_pcm_t **pcmp, const char *name, snd_config_t *root, snd_config_t *conf, snd_pcm_stream_t stream, int mode)
 Creates a new Route & Volume PCM.
 

Detailed Description

PCM Route & Volume Plugin Interface.

Author
Abramo Bagnara abram.nosp@m.o@al.nosp@m.sa-pr.nosp@m.ojec.nosp@m.t.org
Date
2000-2001

Function Documentation

◆ _snd_pcm_route_open()

int _snd_pcm_route_open ( snd_pcm_t ** pcmp,
const char * name,
snd_config_t * root,
snd_config_t * conf,
snd_pcm_stream_t stream,
int mode )

Creates a new Route & Volume PCM.

Parameters
pcmpReturns created PCM handle
nameName of PCM
rootRoot configuration node
confConfiguration node with Route & Volume PCM description
streamStream type
modeStream mode
Return values
zeroon success otherwise a negative error code
Warning
Using of this function might be dangerous in the sense of compatibility reasons. The prototype might be freely changed in future.

◆ snd_pcm_route_determine_ttable()

int snd_pcm_route_determine_ttable ( snd_config_t * tt,
unsigned int * tt_csize,
unsigned int * tt_ssize )

Determine route matrix sizes.

Parameters
ttConfiguration root describing route matrix
tt_csizeReturned client size in elements
tt_ssizeReturned slave size in elements
Return values
zeroon success otherwise a negative error code

◆ snd_pcm_route_load_ttable()

int snd_pcm_route_load_ttable ( snd_config_t * tt,
snd_pcm_route_ttable_entry_t * ttable,
unsigned int tt_csize,
unsigned int tt_ssize,
unsigned int * tt_cused,
unsigned int * tt_sused,
int schannels )

Load route matrix.

Parameters
ttConfiguration root describing route matrix
ttableReturned route matrix
tt_csizeClient size in elements
tt_ssizeSlave size in elements
tt_cusedUsed client elements
tt_susedUsed slave elements
schannelsSlave channels
Return values
zeroon success otherwise a negative error code

◆ snd_pcm_route_open()

int snd_pcm_route_open ( snd_pcm_t ** pcmp,
const char * name,
snd_pcm_format_t sformat,
int schannels,
snd_pcm_route_ttable_entry_t * ttable,
unsigned int tt_ssize,
unsigned int tt_cused,
unsigned int tt_sused,
snd_pcm_t * slave,
int close_slave )

Creates a new Route & Volume PCM.

Parameters
pcmpReturns created PCM handle
nameName of PCM
sformatSlave format
schannelsSlave channels
ttableAttenuation table
tt_ssizeAttenuation table - slave size
tt_cusedAttenuation table - client used count
tt_susedAttenuation table - slave used count
slaveSlave PCM handle
close_slaveWhen set, the slave PCM handle is closed with copy PCM
Return values
zeroon success otherwise a negative error code
Warning
Using of this function might be dangerous in the sense of compatibility reasons. The prototype might be freely changed in future.