snd_pcm_plugin_params()

Set the configurable parameters for a PCM channel (plugin-aware)

Synopsis:

#include <sys/asoundlib.h>

int snd_pcm_plugin_params( snd_pcm_t *handle, 
                           snd_pcm_channel_params_t *params );

Arguments:

handle
The handle for the PCM device, which you must have opened by calling snd_pcm_open_name(), snd_pcm_open(), or snd_pcm_open_preferred().
params
A pointer to a snd_pcm_channel_params_t structure in which you've specified the PCM channel's configurable parameters. All members are write-only.

Library:

libasound.so

Use the -l asound option to qcc to link against this library.

Description:

The snd_pcm_plugin_params() function sets up the transfer parameters according to params.

You can call the function in SND_PCM_STATUS_NOTREADY (initial) and SND_PCM_STATUS_READY states; otherwise, snd_pcm_plugin_params() returns -EBADFD.

If the parameters are valid (i.e., snd_pcm_plugin_params() returns zero), the driver state is changed to SND_PCM_STATUS_READY.

Note: You can confirm the channel's configuration by reading it back with snd_pcm_plugin_setup().

Returns:

EOK on success, a negative errno upon failure. The errno values are available in the errno.h file.

Errors:

-EINVAL
The state of handle is invalid, the format is unsupported, or an invalid state change occurred. You can call snd_pcm_channel_status() to check if the state change was invalid.

Classification:

QNX Neutrino

Safety:  
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes

Caveats:

This function is not thread safe if handle (snd_pcm_t) is used across multiple threads.

This function is the plugin-aware version of snd_pcm_channel_params() . It functions exactly the same way. However, make sure that you don't mix and match plugin- and nonplugin-aware functions in your application, or you may get undefined behavior and misleading results.