Bagikan melalui


Struktur MIXERCONTROL (mmeapi.h)

Struktur MIXERCONTROL menjelaskan status dan metrik kontrol tunggal untuk garis audio.

Sintaks

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;

Anggota

cbStruct

Ukuran, dalam byte, dari struktur MIXERCONTROL .

dwControlID

Pengidentifikasi yang ditentukan mixer audio yang secara unik mengacu pada kontrol yang dijelaskan oleh struktur MIXERCONTROL . Pengidentifikasi ini dapat dalam format apa pun yang didukung oleh perangkat mixer. Aplikasi harus menggunakan pengidentifikasi ini hanya sebagai handel abstrak. Tidak ada dua kontrol untuk satu perangkat mixer yang dapat memiliki pengidentifikasi kontrol yang sama.

dwControlType

Kelas kontrol yang pengidentifikasinya ditentukan dalam dwControlID. Aplikasi harus menggunakan informasi ini untuk menampilkan kontrol yang sesuai untuk input dari pengguna. Aplikasi juga dapat menampilkan grafik yang disesuaikan berdasarkan kelas kontrol atau mencari kelas kontrol tertentu pada baris tertentu. Jika aplikasi tidak tahu tentang kelas kontrol, kontrol ini harus diabaikan. Ada delapan klasifikasi kelas kontrol, masing-masing dengan satu atau beberapa jenis kontrol standar:

Nama Deskripsi
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

Bendera status dan dukungan untuk kontrol garis audio. Nilai berikut didefinisikan:

Nama Deskripsi
MIXERCONTROL_CONTROLF_DISABLED
Kontrol dinonaktifkan, mungkin karena pengaturan lain untuk perangkat keras mixer, dan tidak dapat digunakan. Aplikasi dapat membaca pengaturan saat ini dari kontrol yang dinonaktifkan, tetapi tidak dapat menerapkan pengaturan.
MIXERCONTROL_CONTROLF_MULTIPLE
Kontrol memiliki dua pengaturan atau lebih per saluran. Ekualiser, misalnya, memerlukan bendera ini karena setiap pita frekuensi dapat diatur ke nilai yang berbeda. Equalizer yang mempengaruhi kedua saluran garis stereo dengan cara yang seragam juga akan menentukan bendera MIXERCONTROL_CONTROLF_UNIFORM.
MIXERCONTROL_CONTROLF_UNIFORM
Kontrol bertindak pada semua saluran garis multisaluran dengan cara yang seragam. Misalnya, kontrol yang mematikan suara kedua saluran garis stereo akan mengatur bendera ini. Sebagian besar kontrol MIXERCONTROL_CONTROLTYPE_MUX dan MIXERCONTROL_CONTROLTYPE_MIXER juga menentukan bendera MIXERCONTROL_CONTROLF_UNIFORM.

cMultipleItems

Jumlah item per saluran yang membentuk kontrol MIXERCONTROL_CONTROLF_MULTIPLE. Angka ini selalu dua atau lebih besar untuk kontrol multi-item. Jika kontrol bukan kontrol multi-item, jangan gunakan anggota ini; itu akan menjadi nol.

szShortName[MIXER_SHORT_NAME_CHARS]

String pendek yang menjelaskan kontrol baris audio yang ditentukan oleh dwControlID. Deskripsi ini harus sesuai untuk digunakan sebagai label ringkas untuk kontrol.

szName[MIXER_LONG_NAME_CHARS]

String yang menjelaskan kontrol baris audio yang ditentukan oleh dwControlID. Deskripsi ini harus sesuai untuk digunakan sebagai deskripsi lengkap untuk kontrol.

Bounds

Penyatuan jenis batas.

Bounds.DUMMYSTRUCTNAME

Bounds.DUMMYSTRUCTNAME.lMinimum

Nilai minimum yang ditandatangani untuk kontrol yang memiliki sifat batas yang ditandatangani. Anggota ini tidak dapat digunakan bersama dengan dwMinimum.

Bounds.DUMMYSTRUCTNAME.lMaximum

Nilai maksimum yang ditandatangani untuk kontrol yang memiliki sifat batas yang ditandatangani. Anggota ini tidak dapat digunakan bersama dengan dwMaximum.

Bounds.DUMMYSTRUCTNAME2

Bounds.DUMMYSTRUCTNAME2.dwMinimum

Nilai minimum yang tidak ditandatangani untuk kontrol yang memiliki sifat batas yang tidak ditandatangani. Anggota ini tidak dapat digunakan bersama dengan lMinimum.

Bounds.DUMMYSTRUCTNAME2.dwMaximum

Nilai maksimum yang tidak ditandatangani untuk kontrol yang memiliki sifat batas yang tidak ditandatangani. Anggota ini tidak dapat digunakan bersama dengan lMaximum.

Bounds.dwReserved[6]

Dipesan; jangan gunakan.

Metrics

Penyatuan metrik batas.

Metrics.cSteps

Jumlah rentang diskrit dalam gabungan yang ditentukan untuk kontrol yang ditentukan oleh anggota Batas . Anggota ini tumpang tindih dengan anggota lain dari anggota struktur Metrik dan tidak dapat digunakan bersama dengan anggota tersebut.

Metrics.cbCustomData

Ukuran, dalam byte, diperlukan untuk berisi status kelas kontrol kustom. Anggota ini hanya sesuai untuk kelas kontrol MIXERCONTROL_CONTROLTYPE_CUSTOM.

Metrics.dwReserved[6]

Dipesan; jangan gunakan.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Header mmeapi.h

Lihat juga

Struktur Mixer Audio

Mixer Audio

MIXERLINECONTROLS

mixerGetLineControls