Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Func.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.58 Mб
Скачать

Acmfiltertagdetails

typedef struct {

DWORD cbStruct;

DWORD dwFilterTagIndex;

DWORD dwFilterTag;

DWORD cbFilterSize;

DWORD fdwSupport;

DWORD cStandardFilters;

char szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];

} ACMFILTERTAGDETAILS;

Переменные

  1. cbStruct — размер в байтах объекта структуры ACMFILTERTAGDETAILS. Данная переменная должна быть инициализирована перед вызовом функций acmFilterTagDetails и acmFilterTagEnum. Размер, указанный в этой переменной должен быть достаточно большим, чтобы содержать базовую структуру ACMFILTERTAGDETAILS. При выходе из функции acmFilterTagDetails в данной переменной содержится действительный размер возвращаемой информации. Размер возвращаемой информации никогда не превышает передаваемый в данной переменной размер.

  2. dwFilterTagIndex — индекс типа фильтра, параметры которого определяются. Индекс может принимать любое значение от нуля до величины, на единицу меньшей числа типов фильтров, поддерживаемых драйвером ACM. Число типов фильтров, поддерживаемых драйвером, содержится в переменной cFilterTags структуры ACMDRIVERDETAILS. Переменная dwFilterTagIndex используется только при запросе информации по типам фильтрам, во всех остальных случаях данная переменная должна иметь нулевое значение.

  3. dwFilterTag — идентификатор типа аудио фильтра, характеристики которого содержатся в данном объекте структуры ACMFILTERTAGDETAILS. Значение этой переменной должно быть инициализировано перед использованием флагов ACM_FILTERTAGDETAILSF_FILTERTAG и ACM_FILTERTAGDETAILSF_LARGESTSIZE. Для всех остальных флагов эта переменная должна содержать значение WAVE_FILTER_UNKNOWN. Если функция acmFilterDetails успешно завершает свою работу, эта переменная всегда содержит корректное значение.

  4. cbFilterSize — максимальный размер в байтах аудио фильтра типа dwFilterTag. Например, эта переменная имеет значение 40 для типа WAVE_FILTER_ECHO и значение 36 для типа WAVE_FILTER_VOLUME.

  5. fdwSupport — флаги поддержки драйверов, различные для различных фильтров. Эти флаги совпадают с флагами, определёнными для переменной fdwSupport в объекте структуры ACMDRIVERDETAILS. Определены следующие значения флагов:

  • ACMDRIVERDETAILS_SUPPORTF_ASYNC — драйвер допускает асинхронное преобразование.

  • ACMDRIVERDETAILS_SUPPORTF_CODEC — драйвер допускает преобразование между двумя различными типами представления данных. Например, этот флаг устанавливается в том случае, когда драйвер допускает преобразование формата WAVE_FORMAT_PCM в формат WAVE_FORMAT_ADPCM.

  • ACMDRIVERDETAILS_SUPPORTF_CONVERTER — драйвер допускает преобразование между двумя различными форматами одного типа представления данных. Например, этот флаг устанавливается в том случае, когда драйвер допускает изменение частоты дискретизации в формате WAVE_FORMAT_PCM.

  • ACMDRIVERDETAILS_SUPPORTF_FILTER — драйвер допускает использование фильтра (изменение данных при сохранении формата их представления). Например, этот флаг устанавливается в том случае, когда драйвер допускает изменение уровня воспроизведения и добавление эха в формате WAVE_FORMAT_PCM.

  • ACMDRIVERDETAILS_SUPPORTF_HARDWARE — драйвер позволяет производить аппаратный ввод, вывод или одновременный ввод и вывод через аудио устройство. Для получения идентификаторов устройств, связанных с поддерживаемым драйвером ACM приложение должно вызвать функцию acmMetrics с индексами метрики ACM_METRIC_HARDWARE_WAVE_INPUT и ACM_METRIC_HARDWARE_WAVE_OUTPUT.

  1. cStandardFilters — число стандартных фильтров типа dwFilterTag (понимается число всех возможных комбинаций характеристик фильтров). Эта величина не определяет все фильтры, поддерживаемые данным драйвером.

  2. szFilterTag — заканчивающаяся нулём строка, содержащая описание типа фильтра dwFilterTag. Если функция acmFilterTagDetails успешно завершает свою работу, эта переменная всегда содержит корректное значение.

Примечание

Объект структуры ACMFILTERTAGDETAILS используется для передачи и хранения информации о характеристиках типа аудио фильтра для драйвера ACM.

Описание данной структуры содержится в файле заголовка msacm.h. При работе с данным интерфейсом следует включить в проект библиотеку msacm32.lib.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]