다음을 통해 공유


MIXERCONTROLDETAILS 구조체(mmeapi.h)

MIXERCONTROLDETAILS 구조체는 오디오 믹서 컨트롤의 상태 정보를 검색하거나 설정하는 컨트롤 세부 구조체를 나타냅니다. mixerGetControlDetails 및 mixerSetControlDetails 함수를 호출하기 전에 이 구조체의 모든 멤버를 초기화해야 합니다.

구문

typedef struct tMIXERCONTROLDETAILS {
  DWORD  cbStruct;
  DWORD  dwControlID;
  DWORD  cChannels;
  union {
    HWND  hwndOwner;
    DWORD cMultipleItems;
  } DUMMYUNIONNAME;
  DWORD  cbDetails;
  LPVOID paDetails;
} MIXERCONTROLDETAILS, *PMIXERCONTROLDETAILS, *LPMIXERCONTROLDETAILS;

멤버

cbStruct

MIXERCONTROLDETAILS 구조체의 크기(바이트)입니다. 크기는 기본 MIXERCONTROLDETAILS 구조를 포함할 만큼 충분히 커야 합니다. mixerGetControlDetails가 반환되면 이 멤버에는 반환된 정보의 실제 크기가 포함됩니다. 반환된 정보는 요청된 크기를 초과하지 않으며 기본 MIXERCONTROLDETAILS 구조체보다 작습니다.

dwControlID

속성을 얻거나 설정할 컨트롤 식별자입니다.

cChannels

컨트롤 속성을 얻거나 설정할 채널 수입니다. 다음 값이 정의됩니다.

Name Description
0
컨트롤이 MIXERCONTROL_CONTROLTYPE_CUSTOM 컨트롤인 경우 이 값을 사용합니다.
1
컨트롤이 MIXERCONTROL_CONTROLF_UNIFORM 컨트롤이거나 애플리케이션이 모든 채널을 균일한 것처럼 가져와서 설정해야 하는 경우 이 값을 사용합니다.
MIXERLINE cChannels
컨트롤의 속성이 줄의 모든 채널에서 예상되는 경우 이 값을 사용합니다.
 

애플리케이션은 1과 오디오 라인의 채널 수 사이에 속하는 값을 지정할 수 없습니다. 예를 들어 4개 채널 줄에 2 또는 3을 지정하는 것은 유효하지 않습니다. 이 멤버는 비사용자 컨트롤 형식의 경우 0일 수 없습니다.

이 멤버는 비사용자 컨트롤 형식의 경우 0일 수 없습니다.

DUMMYUNIONNAME

DUMMYUNIONNAME.hwndOwner

믹서 컨트롤에 대한 사용자 지정 대화 상자를 소유하는 창에 대한 핸들입니다. 이 멤버는 mixerSetControlDetails 함수에 MIXER_SETCONTROLDETAILSF_CUSTOM 플래그를 지정할 때 사용됩니다.

DUMMYUNIONNAME.cMultipleItems

속성을 얻거나 설정할 채널당 여러 항목 수입니다. 다음 값이 정의됩니다.

Name Description
0
MIXERCONTROL_CONTROLF_MULTIPLE 또는 MIXERCONTROL_CONTROLTYPE_CUSTOM 컨트롤을 제외한 모든 컨트롤에 이 값을 사용합니다.
MIXERCONTROL cMultipleItems 멤버
컨트롤 클래스가 MIXERCONTROL_CONTROLF_MULTIPLE 경우 이 값을 사용합니다.
MIXERCONTROLDETAILS hwndOwner 멤버
컨트롤이 MIXERCONTROL_CONTROLTYPE_CUSTOM 컨트롤이고 mixerSetControlDetails 함수에 대해 MIXER_SETCONTROLDETAILSF_CUSTOM 플래그가 지정된 경우 이 값을 사용합니다.

이 경우 hwndOwner 멤버는 cMultipleItems와 겹쳐 창 핸들의 값을 제공합니다.

 

MIXERCONTROL_CONTROLTYPE_CUSTOM 플래그 없이 MIXERCONTROL_CONTROLTYPE_CUSTOM 컨트롤을 사용하는 경우 이 멤버에 대해 0을 지정합니다.

애플리케이션은 MIXERCONTROL_CONTROLF_MULTIPLE 컨트롤에 대해 MIXERCONTROL 구조체의 cMultipleItems 멤버에 지정된 값 이외의 값을 지정할 수 없습니다.

cbDetails

사용 중인 다음 세부 정보 구조 중 하나의 크기(바이트)입니다.

Name Description
MIXERCONTROLDETAILS_BOOLEAN
오디오 라인 컨트롤의 부울 값입니다.
MIXERCONTROLDETAILS_LISTTEXT
오디오 라인 컨트롤에 대한 텍스트 버퍼를 나열합니다. 특정 컨트롤에 대한 적절한 세부 정보 구조에 대한 자세한 내용은 컨트롤 형식을 참조하세요.
MIXERCONTROLDETAILS_SIGNED
오디오 라인 컨트롤의 부호 있는 값입니다.
MIXERCONTROLDETAILS_UNSIGNED
오디오 라인 컨트롤의 부호 없는 값입니다.

paDetails

지정된 컨트롤의 속성을 검색하거나 설정하는 하나 이상의 구조체 배열에 대한 포인터입니다.

MIXERCONTROL_CONTROLF_MULTIPLE 컨트롤의 경우 이 버퍼의 크기는 MIXERCONTROLDETAILS 구조체의 cChannels, cMultipleItemscbDetails 멤버의 곱이어야 합니다. MIXERCONTROL_CONTROLF_MULTIPLE 형식 이외의 컨트롤의 경우 이 버퍼의 크기는 MIXERCONTROLDETAILS 구조체의 cChannelscbDetails 멤버의 곱입니다.

MIXERCONTROL_CONTROLF_MULTIPLE 형식 이외의 컨트롤의 경우 이 버퍼의 크기는 MIXERCONTROLDETAILS 구조체의 cChannelscbDetails 멤버의 곱입니다. MIXERCONTROL_CONTROLF_MULTIPLE 형식 이외의 컨트롤의 경우 이 버퍼의 크기는 MIXERCONTROLDETAILS 구조체의 cChannelscbDetails 멤버의 곱입니다.

MIXERCONTROL_CONTROLF_MULTIPLE 형식인 컨트롤의 경우 배열을 채널 주체인 2차원 배열로 처리할 수 있습니다. 즉, 왼쪽 채널에 대한 모든 여러 항목이 지정된 다음 오른쪽 채널에 대한 모든 여러 항목이 제공됩니다.

MIXERCONTROL_CONTROLF_MULTIPLE 형식 이외의 컨트롤의 경우 각 요소 인덱스는 영향을 주는 0부터 시작하는 채널과 동일합니다. 즉, paDetails[0]은 왼쪽 채널용이고 paDetails[1]은 오른쪽 채널에 대한 것입니다.

컨트롤이 MIXERCONTROL_CONTROLTYPE_CUSTOM 컨트롤인 경우 이 멤버는 MIXERCONTROL 구조체의 cbCustomData 멤버가 지정한 크기(바이트)를 포함할 만큼 충분히 큰 버퍼를 가리킵니다.

요구 사항

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

추가 정보

오디오 믹서 구조체

오디오 믹서

MIXERCONTROL

mixerGetControlDetails

mixerSetControlDetails