Bagikan melalui


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
MMSYSERR_ALLOCATED
Sumber daya yang ditentukan sudah dialokasikan.
MMSYSERR_BADDEVICEID
Pengidentifikasi perangkat yang ditentukan berada di luar rentang.
MMSYSERR_NODRIVER
Tidak ada driver perangkat.
MMSYSERR_NOMEM
Tidak dapat mengalokasikan atau mengunci memori.
WAVERR_BADFORMAT
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

Lihat juga

Audio Bentuk Gelombang

Fungsi Bentuk Gelombang