Создание дескриптора открытого соединения с предпочтительным аудио интерфейсом
#include <sys/asoundlib.h>int snd_pcm_open_preferred( snd_pcm_t **handle,int *rcard,int *rdevice,int mode );
NULL
, то в этом буфере сохраняется номер карты открытого интерфейса.NULL
, то в этом буфере сохраняется номер устройства открытого интерфейса.libasound
Функция snd_pcm_open_preferred() является расширением snd_pcm_open(), которое пытается открыть предпочтительное (определенное системой) устройство.
При использовании этой функции приложение становится более гибким, чем при использовании snd_pcm_open(). |
В системах, где имеется более одного PCM устройства, пользователь может отдать предпочтение одному из них. Данная функция позволяет в том числе получить его идентификаторы rcard и rdevice, если они не равны NULL
.
Алгоритм поиска предпочтительного устройства:
/etc/system/config/audio/preferences
. 0
и card = 0
. 0
и card = 0
. Если ни один из пунктов списка не приводит к открытию устройства, делается вывод о том, что аудио стек не запущен.
См. Открытие устройства.
ЗОСРВ «Нейтрино»
Успешное открытие PCM канала не гарантирует, что имеются в достаточном количестве ресурсы аудио стека для обслуживания приложения. Эти ресурсы (например, субканалы) аллоцируются при настройке канала с помощью snd_pcm_channel_params() или snd_pcm_plugin_params().
snd_pcm_close(), snd_pcm_nonblock_mode(), snd_pcm_open()
Предыдущий раздел: Библиотека libasound