MIXERCONTROLW 構造体 (mmeapi.h)

MIXERCONTROL 構造体は、オーディオ行の 1 つのコントロールの状態とメトリックを記述します。

構文

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 構造体によって記述されたコントロールを一意に参照するオーディオ ミキサー定義識別子。 この識別子は、ミキサー デバイスでサポートされている任意の形式にすることができます。 アプリケーションでは、この識別子を抽象ハンドルとしてのみ使用する必要があります。 1 つのミキサー デバイスに対して 2 つのコントロールが同じコントロール識別子を持つことはありません。

dwControlType

dwControlID で識別子が指定されているコントロールのクラス。 アプリケーションでは、この情報を使用して、ユーザーからの入力に適したコントロールを表示する必要があります。 アプリケーションでは、コントロール クラスに基づいて調整されたグラフィックスを表示したり、特定の行で特定のコントロール クラスを検索したりすることもできます。 アプリケーションがコントロール クラスについて知らない場合は、このコントロールを無視する必要があります。 8 つのコントロール クラス分類があり、それぞれに 1 つ以上の標準コントロール型があります。

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 説明
MIXERCONTROL_CONTROLF_DISABLED
このコントロールは、ミキサー ハードウェアの他の設定が原因で無効になっている可能性があり、使用できません。 アプリケーションは無効なコントロールから現在の設定を読み取ることができますが、設定を適用することはできません。
MIXERCONTROL_CONTROLF_MULTIPLE
コントロールには、チャネルごとに 2 つ以上の設定があります。 たとえば、イコライザーでは、各周波数帯域を異なる値に設定できるため、このフラグが必要です。 ステレオラインの両方のチャンネルに均一な方法で影響を与えるイコライザーは、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]

予約済みです。使わないでください。

解説

注意

mmeapi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして MIXERCONTROL を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header mmeapi.h

関連項目

オーディオ ミキサーの構造

オーディオ ミキサー

MIXERLINECONTROLS

mixerGetLineControls