Bagikan melalui


fungsi mixerOpen (mmeapi.h)

Fungsi mixerOpen membuka perangkat mixer tertentu dan memastikan bahwa perangkat tidak akan dihapus sampai aplikasi menutup handel.

Sintaks

MMRESULT mixerOpen(
  LPHMIXER  phmx,
  UINT      uMxId,
  DWORD_PTR dwCallback,
  DWORD_PTR dwInstance,
  DWORD     fdwOpen
);

Parameter

phmx

Pointer ke variabel yang akan menerima handel yang mengidentifikasi perangkat mixer yang dibuka. Gunakan handel ini untuk mengidentifikasi perangkat saat memanggil fungsi mixer audio lainnya. Parameter ini tidak boleh NULL.

uMxId

Pengidentifikasi perangkat mixer untuk dibuka. Gunakan pengidentifikasi perangkat yang valid atau HMIXEROBJ apa pun (lihat fungsi mixerGetID untuk deskripsi handel objek mixer). "Pemeta" untuk perangkat mixer audio saat ini tidak ada, sehingga pengidentifikasi perangkat mixer -1 tidak valid.

dwCallback

Tangani ke jendela yang dipanggil saat status baris audio dan/atau kontrol yang terkait dengan perangkat yang sedang dibuka diubah. Tentukan NULL untuk parameter ini jika tidak ada mekanisme panggilan balik yang akan digunakan.

dwInstance

Dicadangkan. Harus nol.

fdwOpen

Bendera untuk membuka perangkat. Nilai berikut ditentukan.

Nilai Makna
CALLBACK_WINDOW Parameter dwCallback diasumsikan sebagai handel jendela (HWND).
MIXER_OBJECTF_AUX Parameter uMxId adalah pengidentifikasi perangkat tambahan dalam rentang nol hingga satu kurang dari jumlah perangkat yang dikembalikan oleh fungsi auxGetNumDevs .
MIXER_OBJECTF_HMIDIIN Parameter uMxId adalah handel dari perangkat input MIDI. Handel ini harus dikembalikan oleh fungsi midiInOpen .
MIXER_OBJECTF_HMIDIOUT Parameter uMxId adalah handel dari perangkat output MIDI. Handel ini harus dikembalikan oleh fungsi midiOutOpen .
MIXER_OBJECTF_HMIXER Parameter uMxId adalah handel perangkat mixer yang dikembalikan oleh fungsi mixerOpen . Bendera ini bersifat opsional.
MIXER_OBJECTF_HWAVEIN Parameter uMxId adalah handel input waveform-audio yang dikembalikan oleh fungsi waveInOpen .
MIXER_OBJECTF_HWAVEOUT Parameter uMxId adalah handel output waveform-audio yang dikembalikan oleh fungsi waveOutOpen .
MIXER_OBJECTF_MIDIIN Parameter uMxId adalah pengidentifikasi perangkat input MIDI. Pengidentifikasi ini harus berada dalam rentang nol hingga satu kurang dari jumlah perangkat yang dikembalikan oleh fungsi midiInGetNumDevs .
MIXER_OBJECTF_MIDIOUT Parameter uMxId adalah pengidentifikasi perangkat output MIDI. Pengidentifikasi ini harus berada dalam rentang nol hingga satu kurang dari jumlah perangkat yang dikembalikan oleh fungsi midiOutGetNumDevs .
MIXER_OBJECTF_MIXER Parameter uMxId adalah pengidentifikasi perangkat mixer dalam rentang nol hingga satu kurang dari jumlah perangkat yang dikembalikan oleh fungsi mixerGetNumDevs . Bendera ini bersifat opsional.
MIXER_OBJECTF_WAVEIN Parameter uMxId adalah pengidentifikasi perangkat input waveform-audio dalam rentang nol hingga satu kurang dari jumlah perangkat yang dikembalikan oleh fungsi waveInGetNumDevs .
MIXER_OBJECTF_WAVEOUT Parameter uMxId adalah pengidentifikasi perangkat output waveform-audio dalam rentang nol hingga satu kurang dari jumlah perangkat yang dikembalikan oleh fungsi waveOutGetNumDevs .

Mengembalikan nilai

Mengembalikan MMSYSERR_NOERROR jika berhasil atau kesalahan sebaliknya. Nilai kesalahan yang mungkin termasuk yang berikut ini.

Menampilkan kode Deskripsi
MMSYSERR_ALLOCATED
Sumber daya yang ditentukan sudah dialokasikan oleh jumlah maksimum klien yang mungkin.
MMSYSERR_BADDEVICEID
Parameter uMxId menentukan pengidentifikasi perangkat yang tidak valid.
MMSYSERR_INVALFLAG
Satu atau beberapa bendera tidak valid.
MMSYSERR_INVALHANDLE
Parameter uMxId menentukan handel yang tidak valid.
MMSYSERR_INVALPARAM
Satu atau beberapa parameter tidak valid.
MMSYSERR_NODRIVER
Tidak ada perangkat mixer yang tersedia untuk objek yang ditentukan oleh uMxId. Perhatikan bahwa lokasi yang dirujuk oleh uMxId juga akan berisi nilai –1.
MMSYSERR_NOMEM
Tidak dapat mengalokasikan sumber daya.

Keterangan

Gunakan fungsi mixerGetNumDevs untuk menentukan jumlah perangkat mixer audio yang ada dalam sistem. Pengidentifikasi perangkat yang ditentukan oleh uMxId bervariasi dari nol hingga satu kurang dari jumlah perangkat yang ada.

Jika jendela dipilih untuk menerima informasi panggilan balik, pesan MM_MIXM_LINE_CHANGE dan MM_MIXM_CONTROL_CHANGE dikirim ke fungsi prosedur jendela untuk menunjukkan kapan garis audio atau status kontrol berubah. Untuk kedua pesan, parameter wParam adalah handel perangkat mixer. Parameter lParam adalah pengidentifikasi baris untuk MM_MIXM_LINE_CHANGE atau pengidentifikasi kontrol untuk MM_MIXM_CONTROL_CHANGE status yang berubah.

Untuk mengkueri dukungan mixer audio atau perangkat media, gunakan fungsi mixerGetID .

Pada sistem 64-bit, fungsi ini mungkin tidak berfungsi seperti yang diharapkan dalam situasi di mana Anda melewati pointer LPHWAVEOUT 64-bit dalam parameter uMxId , karena parameter uMxId dipotong menjadi 32 bit.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header mmeapi.h (termasuk Windows.h)
Pustaka Winmm.lib
DLL Winmm.dll

Lihat juga

Fungsi Mixer Audio

Mixer Audio