ado_mixer_switch_new()

Создание нового переключателя микшера

Прототип:

#include <audio_driver.h>
ado_dswitch_t * ado_mixer_switch_new( ado_mixer_t *mixer,
char *name,
uint32_t type,
uint32_t subtype,
int32_t (*read)( MIXER_CONTEXT_T *context,
ado_dswitch_t *dswitch,
snd_switch_t *cswitch,
void *instance_data ),
int32_t (*write)( MIXER_CONTEXT_T *context,
ado_dswitch_t *dswitch,
snd_switch_t *cswitch,
void *instance_data ),
void *instance_data,
void (*instance_free)( void *data ) );

Аргументы:

mixer
Указатель на структуру ado_mixer_t, которая определяет микшер, в котором создается элемент. Структура должна быть предварительно создана с помощью ado_mixer_create().
name
Имя элемента. Элементы идентифицируются по именам, следует быть осторожными в их выборе; некоторые стандартные имена можно найти в <asound.h>.
type
Тип переключателя:
SND_SW_TYPE_BOOLEAN
SND_SW_TYPE_BYTE
SND_SW_TYPE_WORD
SND_SW_TYPE_DWORD
SND_SW_TYPE_LIST
subtype
Дополнительный тип переключателя:
SND_SW_SUBTYPE_DEC
SND_SW_SUBTYPE_HEXA
read()
Callback-функция для чтения состояния переключателя.
write()
Callback-функция для записи состояния переключателя.
instance_data
Указатель на экземпляр произвольных данных, которые могут быть считаны и записаны callback-функциями. Это может быть указатель на выделенную память, тогда для ее освобождения применяться функция instance_free().
instance_free()
Функция, применяемая для освобождения памяти, выделенной для instance_data.

Библиотека:

libado

Описание:

Функция ado_mixer_switch_new() создает новый переключатель микшера.


Note: Переключатель микшера и элемент микшера типа переключатель не одно и тоже:
Элемент микшера типа переключатель
Используется для таких операций, как отключение звука (mute) и выбор источника захватываемого сигнала.
Переключатель микшера
Используются не так часто, но могут использоваться, например для организации "PCM Loopback" интерфейса.

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

Указатель на созданный переключатель.

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

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

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




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