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


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

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

Синтаксис

typedef struct tMIXERCONTROL {
  DWORD cbStruct;
  DWORD dwControlID;
  DWORD dwControlType;
  DWORD fdwControl;
  DWORD cMultipleItems;
  char  szShortName[MIXER_SHORT_NAME_CHARS];
  char  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;
} MIXERCONTROL, *PMIXERCONTROL, *LPMIXERCONTROL;

Члены

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. Это число всегда равно 2 или больше для элементов управления с несколькими элементами. Если элемент управления не является элементом управления с несколькими элементами, не используйте этот элемент; значение будет равно нулю.

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]

Защищены; не использовать.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть mmeapi.h

См. также раздел

Структуры аудиомикшеров

Аудио микшеры

MIXERLINECONTROLS

mixerGetLineControls