snd_pcm_open_name()

Создание дескриптора открытого соединения с указанным аудио интерфейсом (по имени)

Прототип:

#include <sys/asoundlib.h>
int snd_pcm_open_name( snd_pcm_t **handle,
char *name,
int mode );

Аргументы:

handle
Указатель на буфер, в котором сохраняется дескриптор соединения с аудио инетрфейсом. Он используется в последующих вызовах snd_pcm_*().
name
Имя PCM устройства. Может указываться или базовое имя (например, navi) или полный путь (например, /dev/snd/pcmC0D0p).
mode
Режим открытия (см. snd_pcm_open()).

Библиотека:

libasound

Описание:

Функция snd_pcm_open_name() создает дескриптор handle и открывает соединение с аудио интерфесом, найденным с помощью его имени name. При этом также проверяется соответствие версии протокола между драйвером и приложением.

Никаких значений "по умолчанию" не предусмотрено, приложение должно указать все аргументы функции.

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

0
Успешное завершение.
-EINVAL
Некорректный аргумент mode.
-ENOENT
Именованное устройство не существует.
-ENOMEM
Недостаточно памяти для создания контролирующих структур.
-SND_ERROR_INCOMPATIBLE_VERSION
Версия аудио драйвера не совместима с используемой приложением клиентской библиотекой.

Примеры:

См. пример snd_pcm_open() в Открытие устройства.

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

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

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

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

Успешное открытие PCM канала не гарантирует, что имеются в достаточном количестве ресурсы аудио стека для обслуживания приложения. Эти ресурсы (например, субканалы) аллоцируются при настройке канала с помощью snd_pcm_channel_params() или snd_pcm_plugin_params().

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

snd_pcm_close(), snd_pcm_nonblock_mode(), snd_pcm_open(), snd_pcm_open_preferred()




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