snd_pcm_plugin_info()

Get information about a PCM channel's capabilities (plugin-aware)

Synopsis:

#include <sys/asoundlib.h>

int snd_pcm_plugin_info( snd_pcm_t              *handle, 
                         snd_pcm_channel_info_t *info );

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().
info
A pointer to a snd_pcm_channel_info_t structure that snd_pcm_plugin_info() fills in with information about the PCM channel.

Before calling this function, set the info structure's channel member to specify the direction. This function sets all the other members.

Library:

libasound.so

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

Description:

The snd_pcm_plugin_info() function fills the info structure with data about the PCM channel selected by handle.

Note: This function and the nonplugin version, snd_pcm_channel_info(), get a dynamic "snapshot" of the system's current capabilities, which can shrink and grow as subchannels are allocated and freed. They're similar to snd_ctl_pcm_channel_info(), which gets information about the complete capabilities of the system.

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 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 Read the Caveats

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_info() . 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.