ado_mixer_element_mux1()

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

Прототип:

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

Аргументы:

mixer
Указатель на структуру ado_mixer_t, которая определяет микшер, в котором создается элемент. Структура должна быть предварительно создана с помощью ado_mixer_create().
name
Имя элемента. Элементы идентифицируются по именам, следует быть осторожными в их выборе; некоторые стандартные имена можно найти в <asound.h>.
attrib
Не используется, следует установить в 0.
number_of_voices
Число голосов в канале.
control
Callback-функция типа ado_mixer_delement_control_mux1_t, которая контролирует каналы:
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_mux1() автоматизирует создание элемента-мультиплексора (тип 1). Мультиплексор данного типа выбирает ровно один вход из нескольких и направляет его на выход.

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

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

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

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

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

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

ado_mixer_create(), ado_mixer_element_mux2(), ado_mixer_get_element_instance_data()




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