다음을 통해 공유


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에 지정된 컨트롤의 클래스입니다. 애플리케이션은 이 정보를 사용하여 사용자의 입력에 대한 적절한 컨트롤을 표시해야 합니다. 애플리케이션은 컨트롤 클래스를 기반으로 맞춤형 그래픽을 표시하거나 특정 줄에서 특정 컨트롤 클래스를 검색할 수도 있습니다. 애플리케이션에서 컨트롤 클래스에 대해 모르는 경우 이 컨트롤을 무시해야 합니다. 각각 하나 이상의 표준 컨트롤 형식이 있는 8개의 컨트롤 클래스 분류가 있습니다.

Name 설명
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

오디오 라인 컨트롤의 상태 및 지원 플래그입니다. 다음 값이 정의됩니다.

Name Description
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개 이상입니다. 컨트롤이 다중 항목 컨트롤이 아닌 경우 이 멤버를 사용하지 마세요. 0이 됩니다.

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 구조체 멤버의 다른 멤버와 겹치며 해당 멤버와 함께 사용할 수 없습니다.

Metrics.cbCustomData

사용자 지정 컨트롤 클래스의 상태를 포함하는 데 필요한 크기(바이트)입니다. 이 멤버는 MIXERCONTROL_CONTROLTYPE_CUSTOM 컨트롤 클래스에만 적합합니다.

Metrics.dwReserved[6]

예약되어 있으므로 사용하지 마세요.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
머리글 mmeapi.h

참고 항목

오디오 믹서 구조체

오디오 믹서

MIXERLINECONTROLS

mixerGetLineControls