snd_pcm_capture_go()

Start a PCM capture channel running

Synopsis:

#include <sys/asoundlib.h>

int snd_pcm_capture_go ( snd_pcm_t *handle );

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

Library:

libasound.so

Description:

The snd_pcm_capture_go() function starts the capture channel.

You should call this function only when the driver is in the SND_PCM_STATUS_READY state. Calling this function is required if you've set your capture channel's start state to SND_PCM_START_GO (see snd_pcm_plugin_params()). You can also use this function to “kick start” early a capture channel that has a start state of SND_PCM_START_DATA or SND_PCM_START_FULL.

If the parameters are valid (i.e., snd_pcm_capture_go() returns zero), then the driver state is changed to SND_PCM_STATUS_RUNNING.

This function is safe to use with plugin-aware functions.

This call is used identically to snd_pcm_plugin_params().

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:
-EINVAL
The state of handle is invalid, an invalid file descriptor to the channel for capture, 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.