fungsi waveInOpen (mmeapi.h)
Fungsi waveInOpen membuka perangkat input waveform-audio yang diberikan untuk perekaman.
Sintaks
MMRESULT waveInOpen(
LPHWAVEIN phwi,
UINT uDeviceID,
LPCWAVEFORMATEX pwfx,
DWORD_PTR dwCallback,
DWORD_PTR dwInstance,
DWORD fdwOpen
);
Parameter
phwi
Penunjuk ke buffer yang menerima handel yang mengidentifikasi perangkat input waveform-audio terbuka. Gunakan handel ini untuk mengidentifikasi perangkat saat memanggil fungsi input waveform-audio lainnya. Parameter ini dapat berupa NULL jika WAVE_FORMAT_QUERY ditentukan untuk fdwOpen.
uDeviceID
Pengidentifikasi perangkat input waveform-audio untuk dibuka. Ini bisa berupa pengidentifikasi perangkat atau handel perangkat input waveform-audio terbuka. Anda dapat menggunakan bendera berikut alih-alih pengidentifikasi perangkat.
Nilai | Makna |
---|---|
WAVE_MAPPER | Fungsi ini memilih perangkat input waveform-audio yang mampu merekam dalam format yang ditentukan. |
pwfx
Penunjuk ke struktur WAVEFORMATEX yang mengidentifikasi format yang diinginkan untuk merekam data waveform-audio. Anda dapat membebaskan struktur ini segera setelah waveInOpen kembali.
dwCallback
Penunjuk ke fungsi panggilan balik tetap, handel peristiwa, handel ke jendela, atau pengidentifikasi utas yang akan dipanggil selama perekaman waveform-audio untuk memproses pesan yang terkait dengan kemajuan perekaman. Jika tidak ada fungsi panggilan balik yang diperlukan, nilai ini bisa nol. Untuk informasi selengkapnya tentang fungsi panggilan balik, lihat waveInProc.
dwInstance
Data instans pengguna diteruskan ke mekanisme panggilan balik. Parameter ini tidak digunakan dengan mekanisme panggilan balik jendela.
fdwOpen
Bendera untuk membuka perangkat. Nilai berikut didefinisikan.
Nilai | Makna |
---|---|
CALLBACK_EVENT | Parameter dwCallback adalah handel peristiwa. |
CALLBACK_FUNCTION | Parameter dwCallback adalah alamat prosedur panggilan balik. |
CALLBACK_NULL | Tidak ada mekanisme panggilan balik. Ini adalah pengaturan default. |
CALLBACK_THREAD | Parameter dwCallback adalah pengidentifikasi utas. |
CALLBACK_WINDOW | Parameter dwCallback adalah handel jendela. |
WAVE_MAPPED_DEFAULT_COMMUNICATION_DEVICE |
Jika bendera ini ditentukan dan parameter uDeviceIDWAVE_MAPPER, fungsi akan membuka perangkat komunikasi default.
Bendera ini hanya berlaku ketika uDeviceID sama dengan WAVE_MAPPER.
Catatan Membutuhkan Windows 7
|
WAVE_FORMAT_DIRECT | Jika bendera ini ditentukan, driver ACM tidak melakukan konversi pada data audio. |
WAVE_FORMAT_QUERY | Fungsi ini meminta perangkat untuk menentukan apakah mendukung format yang diberikan, tetapi tidak membuka perangkat. |
WAVE_MAPPED | Parameter uDeviceID menentukan perangkat waveform-audio yang akan dipetakan oleh pemeta gelombang. |
Menampilkan nilai
Mengembalikan MMSYSERR_NOERROR jika berhasil atau kesalahan sebaliknya. Kemungkinan nilai kesalahan termasuk yang berikut ini.
Menampilkan kode | Deskripsi |
---|---|
|
Sumber daya yang ditentukan sudah dialokasikan. |
|
Pengidentifikasi perangkat yang ditentukan berada di luar rentang. |
|
Tidak ada driver perangkat. |
|
Tidak dapat mengalokasikan atau mengunci memori. |
|
Mencoba membuka dengan format waveform-audio yang tidak didukung. |
Keterangan
Gunakan fungsi waveInGetNumDevs untuk menentukan jumlah perangkat input waveform-audio yang ada di sistem. Pengidentifikasi perangkat yang ditentukan oleh uDeviceID bervariasi dari nol hingga satu kurang dari jumlah perangkat yang ada. Konstanta WAVE_MAPPER juga dapat digunakan sebagai pengidentifikasi perangkat.
Jika Anda memilih agar jendela atau utas menerima informasi panggilan balik, pesan berikut dikirim ke prosedur jendela atau utas untuk menunjukkan kemajuan input waveform-audio: MM_WIM_OPEN, MM_WIM_CLOSE, dan MM_WIM_DATA.
Jika Anda memilih agar fungsi menerima informasi panggilan balik, pesan berikut dikirim ke fungsi untuk menunjukkan kemajuan input waveform-audio: WIM_OPEN, WIM_CLOSE, dan WIM_DATA.
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 |