snd_pcm_plugin_drop()
Stop playback or capture immediately and discard buffered data (plugin-aware)
Synopsis:
#include <sys/asoundlib.h>
int snd_pcm_plugin_drop( snd_pcm_t *pcm,
int channel );
Arguments:
- pcm
- 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().
- channel
- The channel; SND_PCM_CHANNEL_CAPTURE or SND_PCM_CHANNEL_PLAYBACK.
Library:
libasound.so
Use the -l asound option with qcc to link against this library.
Description:
The snd_pcm_plugin_drop() function stops playback or capture immediately and discards buffered data. This all happens immediately, even if the channel's current state has been set to SND_PCM_STATUS_SUSPENDED or SND_PCM_STATUS_PAUSED by the current audio concurrency management policies.
If the operation is successful (zero is returned), the channel's state is changed to SND_PCM_STATUS_READY.
Returns:
EOK on success, a negative errno upon failure. The errno values are available in the errno.h file.
Errors:
- -EINVAL
- The state of pcm is invalid, an invalid channel was provided as input, 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 pcm (snd_pcm_t) is used across multiple threads.
This function is the plugin-aware version of snd_pcm_channel_drop() . 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.
