Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

snd_pcm_plugin_playback_drain()

Stop the PCM playback channel and discard the contents of its queue (plugin-aware)

Synopsis:

#include <sys/asoundlib.h>

int snd_pcm_plugin_playback_drain(
       snd_pcm_t *handle );

Arguments:

handle
The handle for the PCM device, which you must have opened by calling snd_pcm_open() or snd_pcm_open_preferred().

Library:

libasound.so

Description:

The snd_pcm_plugin_playback_drain() function stops the PCM playback channel associated with handle and causes it to discard all audio data in its buffers. This happens immediately.

If the operation is successful (zero is returned), the channel's state is changed to SND_PCM_STATUS_READY.

Returns:

Zero on success, or a negative error code (errno is set).

Errors:

-EBADFD
The pcm device state isn't ready.
-EINVAL
Invalid handle.

Classification:

QNX Neutrino

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

Caveats:

This function is the plugin-aware version of snd_pcm_playback_drain(). 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.

See also:

snd_pcm_playback_drain()