ado_mixer_element_mux2()

Создание элемента-мультиплексора (тип 2)

Прототип:

#include <audio_driver.h>
ado_mixer_delement_t * ado_mixer_element_mux2( ado_mixer_t *mixer,
char *name,
uint32_t attrib,
ado_mixer_delement_control_mux2_t *control,
void *instance_data,
void (*instance_free)( void *data ) );

Аргументы:

mixer
Указатель на структуру ado_mixer_t, которая определяет микшер, в котором создается элемент. Структура должна быть предварительно создана с помощью ado_mixer_create().
name
Имя элемента. Элементы идентифицируются по именам, следует быть осторожными в их выборе; некоторые стандартные имена можно найти в <asound.h>.
attrib
Не используется, следует установить в 0.
control
A callback function, of type ado_mixer_delement_control_mux2_t, that controls the channels. The prototype is:
int32_t control( MIXER_CONTEXT_T *context,
ado_mixer_delement_t *element,
uint8_t set,
ado_mixer_delement_t **inelements,
void *instance_data );
instance_data
Указатель на экземпляр произвольных данных, которые будут переданы в callback-функцию. Это может быть указатель на выделенную память, тогда для ее освобождения применяться функция instance_free(). Для доступа к этим данным может применяться вызов ado_mixer_get_element_instance_data(), поскольку тип ado_mixer_delement_t является прозрачным для драйвера.
instance_free()
Функция, применяемая для освобождения памяти, выделенной для instance_data.

Библиотека:

libado

Описание:

Функция ado_mixer_element_mux2() автоматизирует создание элемента-мультиплексора (тип 2). Мультиплексор данного типа выбирает ноль или несколько входов и направляет их на выход. Каждый вход имеет собственный независимый селектор.

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

Указатель на созданный элемент.

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

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

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

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

ado_mixer_create(), ado_mixer_element_mux1(), ado_mixer_get_element_instance_data()




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