Поделиться через


Структура MIXERCONTROLW (mmeapi.h)

Структура MIXERCONTROL описывает состояние и метрики единого элемента управления для звуковой строки.

Синтаксис

typedef struct tagMIXERCONTROLW {
  DWORD cbStruct;
  DWORD dwControlID;
  DWORD dwControlType;
  DWORD fdwControl;
  DWORD cMultipleItems;
  WCHAR szShortName[MIXER_SHORT_NAME_CHARS];
  WCHAR szName[MIXER_LONG_NAME_CHARS];
  union {
    struct {
      LONG lMinimum;
      LONG lMaximum;
    } DUMMYSTRUCTNAME;
    struct {
      DWORD dwMinimum;
      DWORD dwMaximum;
    } DUMMYSTRUCTNAME2;
    DWORD dwReserved[6];
  } Bounds;
  union {
    DWORD cSteps;
    DWORD cbCustomData;
    DWORD dwReserved[6];
  } Metrics;
} MIXERCONTROLW, *PMIXERCONTROLW, *LPMIXERCONTROLW;

Члены

cbStruct

Размер в байтах структуры MIXERCONTROL.

dwControlID

Определяемый звуком идентификатор, который однозначно относится к элементу управления, описанному структурой MIXERCONTROL. Этот идентификатор может быть в любом формате, поддерживаемом устройством миксера. Приложение должно использовать этот идентификатор только в качестве абстрактного дескриптора. Ни один элемент управления для одного устройства смешивания не может иметь один и тот же идентификатор элемента управления.

dwControlType

Класс элемента управления, для которого идентификатор указан в dwControlID. Приложение должно использовать эти сведения для отображения соответствующего элемента управления для ввода данных от пользователя. Приложение также может отображать адаптированную графику на основе класса элемента управления или поиска определенного класса элемента управления в определенной строке. Если приложение не знает о классе элемента управления, этот элемент управления должен игнорироваться. Существует восемь классификаций классов элементов управления, каждый из которых имеет один или несколько стандартных типов элементов управления:

Имя Описания
MIXERCONTROL_CT_CLASS_CUSTOM
MIXERCONTROL_CONTROLTYPE_CUSTOM
MIXERCONTROL_CT_CLASS_FADER
MIXERCONTROL_CONTROLTYPE_BASS MIXERCONTROL_CONTROLTYPE_EQUALIZER MIXERCONTROL_CONTROLTYPE_FADER MIXERCONTROL_CONTROLTYPE_TREBLE MIXERCONTROL_CONTROLTYPE_VOLUME
MIXERCONTROL_CT_CLASS_LIST
MIXERCONTROL_CONTROLTYPE_MIXER MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT MIXERCONTROL_CONTROLTYPE_MUX MIXERCONTROL_CONTROLTYPE_SINGLESELECT
MIXERCONTROL_CT_CLASS_METER
MIXERCONTROL_CONTROLTYPE_BOOLEANMETER MIXERCONTROL_CONTROLTYPE_PEAKMETER MIXERCONTROL_CONTROLTYPE_SIGNEDMETER MIXERCONTROL_CONTROLTYPE_UNSIGNEDMETER
MIXERCONTROL_CT_CLASS_NUMBER
MIXERCONTROL_CONTROLTYPE_DECIBELS MIXERCONTROL_CONTROLTYPE_PERCENT MIXERCONTROL_CONTROLTYPE_SIGNED MIXERCONTROL_CONTROLTYPE_UNSIGNED
MIXERCONTROL_CT_CLASS_SLIDER
MIXERCONTROL_CONTROLTYPE_PAN MIXERCONTROL_CONTROLTYPE_QSOUNDPAN MIXERCONTROL_CONTROLTYPE_SLIDER
MIXERCONTROL_CT_CLASS_SWITCH
MIXERCONTROL_CONTROLTYPE_BOOLEAN MIXERCONTROL_CONTROLTYPE_BUTTON MIXERCONTROL_CONTROLTYPE_LOUDNESS MIXERCONTROL_CONTROLTYPE_MONO MIXERCONTROL_CONTROLTYPE_MUTE MIXERCONTROL_CONTROLTYPE_ONOFF MIXERCONTROL_CONTROLTYPE_STEREOENH
MIXERCONTROL_CT_CLASS_TIME
MIXERCONTROL_CONTROLTYPE_MICROTIME MIXERCONTROL_CONTROLTYPE_MILLITIME

fdwControl

Состояние и флаги поддержки для элемента управления аудиостроек. Определены следующие значения:

Имя Описание
MIXERCONTROL_CONTROLF_DISABLED
Элемент управления отключен, возможно, из-за других параметров оборудования микшера и не может использоваться. Приложение может считывать текущие параметры из отключенного элемента управления, но оно не может применять параметры.
MIXERCONTROL_CONTROLF_MULTIPLE
Элемент управления имеет два или более параметров для каждого канала. Например, для равенства требуется этот флаг, так как для каждого диапазона частот можно задать другое значение. Эквалайзер, который влияет на оба канала стереолайна в однородном режиме, также укажет флаг MIXERCONTROL_CONTROLF_UNIFORM.
MIXERCONTROL_CONTROLF_UNIFORM
Элемент управления действует на всех каналах многоканальной линии в единообразном режиме. Например, элемент управления, который отключает оба канала стереостроки, задал этот флаг. Большинство элементов управления MIXERCONTROL_CONTROLTYPE_MUX и MIXERCONTROL_CONTROLTYPE_MIXER также указывают флаг MIXERCONTROL_CONTROLF_UNIFORM.

cMultipleItems

Количество элементов на канал, составляющих элемент управления MIXERCONTROL_CONTROLF_MULTIPLE. Это число всегда равно двум или больше для элементов управления с несколькими элементами. Если элемент управления не является элементом управления с несколькими элементами, не используйте этот элемент. оно будет равно нулю.

szShortName[MIXER_SHORT_NAME_CHARS]

Короткая строка, описывающая элемент управления аудиостроек, указанный dwControlID. Это описание должно быть подходящим для использования в качестве краткой метки для элемента управления.

szName[MIXER_LONG_NAME_CHARS]

Строка, описывающая элемент управления звуковой линией, заданный dwControlID. Это описание должно использоваться в качестве полного описания элемента управления.

Bounds

Объединение типов границ.

Bounds.DUMMYSTRUCTNAME

Bounds.DUMMYSTRUCTNAME.lMinimum

Минимальное подписанное значение для элемента управления, имеющего характер подписанной границы. Этот элемент нельзя использовать в сочетании с dwMinimum.

Bounds.DUMMYSTRUCTNAME.lMaximum

Максимальное значение подписи для элемента управления, имеющего характер подписанной границы. Этот элемент нельзя использовать в сочетании с dwMaximum.

Bounds.DUMMYSTRUCTNAME2

Bounds.DUMMYSTRUCTNAME2.dwMinimum

Минимальное значение без знака для элемента управления, имеющего характер границы без знака. Этот элемент нельзя использовать в сочетании с lMinimum.

Bounds.DUMMYSTRUCTNAME2.dwMaximum

Максимальное значение без знака для элемента управления, имеющего характер границы без знака. Этот элемент нельзя использовать в сочетании с lMaximum.

Bounds.dwReserved[6]

Скрытный; не используйте.

Metrics

Объединение метрик границ.

Metrics.cSteps

Количество дискретных диапазонов в союзе, указанное для элемента управления, указанного элементом Bounds. Этот элемент перекрывается другими элементами Метрики структуры и не может использоваться в сочетании с этими элементами.

Metrics.cbCustomData

Размер в байтах, необходимый для хранения состояния пользовательского класса элемента управления. Этот элемент подходит только для класса управления MIXERCONTROL_CONTROLTYPE_CUSTOM.

Metrics.dwReserved[6]

Скрытный; не используйте.

Замечания

Заметка

Заголовок mmeapi.h определяет MIXERCONTROL как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
заголовка mmeapi.h

См. также

структуры миксера звука

Звуковые микшеры

MIXERLINECONTROLS

mixerGetLineControls