Resume a channel that was paused while playing back
Synopsis:
#include <sys/asoundlib.h>
int snd_pcm_playback_resume ( snd_pcm_t *pcm );
Library:
libasound.so
Use the -l asound option with
qcc
to link against this library.
Description:
The snd_pcm_playback_resume() function
resumes a channel that was paused while playing back.
If the channel is in the SUSPENDED (
SND_PCM_STATUS_SUSPENDED),
one of the following occurs when you call this function:
- If the channel is hard suspended, calling this function clears
any underlying
paused condition (e.g.,
snd_pcm_channel_pause() was called
before moving to the SND_PCM_STATUS_SUSPENDED state). However, because you are in the
SND_PCM_STATUS_SUSPENDED state and waiting for higher priority audio stream to complete, the channel remains in the SUSPENDED state.
- If the channel is in the soft suspended state, calling this
function clears any underlying paused condition (e.g.,
snd_pcm_channel_pause() was called
before moving to SND_PCM_STATUS_SUSPENDED state) and the
channel plays immediately and
transitions to the SND_PCM_STATUS_RUNNING state.
- If both the hard suspended and soft suspended conditions occur, the
hard suspended state takes precedence. In other words,
calling the function clears any pending paused conditione.g.,
snd_pcm_channel_pause()) but
the channel remains in the
SND_PCM_STATUS_SUSPENDED state.
For more information, see the
Audio Concurrency Management chapter in this guide.
Returns:
EOK on success, a negative errno upon failure. The
errno values are available in the errno.h
file.
Errors:
Additional information for common error values:
- -EAGAIN
- Indicates that there's insufficient data in the buffer to play. You should write more data to the buffer.
- -EINVAL
- The state of handle is invalid, the channel wasn't being used
for playback, or an invalid state change occurred. You can call snd_pcm_channel_status()
to check if the state change was invalid.
- -ENOTSUP
- Resume isn't supported on the PCM device that's referenced by the PCM handle
(pcm).
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.