snd_pcm_plugin_playback_drain()

Остановка PCM канала воспроизведения и сброс (удаление) контента в его очереди (плагино-зависимая функция)

Прототип:

#include <sys/asoundlib.h>
int snd_pcm_plugin_playback_drain( snd_pcm_t *handle );

Аргументы:

handle
Дескриптор PCM устройства, созданный с помощью snd_pcm_open() или snd_pcm_open_preferred().

Библиотека:

libasound

Описание:

Функция snd_pcm_plugin_playback_drain() останавливает PCM канал воспроизведения, ассоциированный с дескриптором handle, что приводит к сбросу всех аудиоданных в его буферах. Это выполняется немедленно.

Если функция завершается успешно (возвращается значение 0), состояние канала меняется на SND_PCM_STATUS_READY.

Возвращаемое значение:

EOK
Успешное завершение.
<0
Возникла ошибка, возвращенный код характеризует ошибку (также устанавливается errno).

Коды ошибок:

-EBADFD
PCM устройство не находится в состоянии готовности.
-EINVAL
Некорректный аргумент handle.

Классификация:

ЗОСРВ «Нейтрино»

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Предостережения:

Функция является плагино-зависимым аналогом snd_pcm_playback_drain(). Следует убедиться, что плагино-зависимый и независимый вызовы не смешиваются в приложении. В противном случае поведение будет непредсказуемым.

Тематические ссылки:

snd_pcm_playback_drain()




Предыдущий раздел: Библиотека libasound