Bagikan melalui


fungsi waveOutSetVolume (mmeapi.h)

Fungsi waveOutSetVolume mengatur tingkat volume perangkat output waveform-audio yang ditentukan.

Sintaks

MMRESULT waveOutSetVolume(
  HWAVEOUT hwo,
  DWORD    dwVolume
);

Parameter

hwo

Menangani ke perangkat output waveform-audio terbuka. Parameter ini juga dapat menjadi pengidentifikasi perangkat.

dwVolume

Pengaturan volume baru. Kata berurutan rendah berisi pengaturan volume saluran kiri, dan kata urutan tinggi berisi pengaturan saluran kanan. Nilai 0xFFFF mewakili volume penuh, dan nilai 0x0000 diam.

Jika perangkat tidak mendukung kontrol volume kiri dan kanan, kata dwVolume berurutan rendah menentukan tingkat volume, dan kata urutan tinggi diabaikan.

Menampilkan nilai

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

Menampilkan kode Deskripsi
MMSYSERR_INVALHANDLE
Handel perangkat yang ditentukan tidak valid.
MMSYSERR_NODRIVER
Tidak ada driver perangkat.
MMSYSERR_NOMEM
Tidak dapat mengalokasikan atau mengunci memori.
MMSYSERR_NOTSUPPORTED
Fungsi tidak didukung.

Keterangan

Jika pengidentifikasi perangkat digunakan, maka hasil panggilan waveOutSetVolume berlaku untuk semua instans perangkat. Jika handel perangkat digunakan, hasilnya hanya berlaku untuk instans perangkat yang dirujuk oleh handel perangkat.

Tidak semua perangkat mendukung perubahan volume. Untuk menentukan apakah perangkat mendukung kontrol volume, gunakan bendera WAVECAPS_VOLUME untuk menguji anggota dwSupport dari struktur WAVEOUTCAPS (diisi oleh fungsi waveOutGetDevCaps ). Untuk menentukan apakah perangkat mendukung kontrol volume di saluran kiri dan kanan, gunakan bendera WAVECAPS_LRVOLUME.

Sebagian besar perangkat tidak mendukung 16 bit penuh kontrol tingkat volume dan tidak akan menggunakan bit yang paling tidak signifikan dari pengaturan volume yang diminta. Misalnya, jika perangkat mendukung kontrol volume 4 bit, nilai 0x4000, 0x4FFF, dan 0x43BE semuanya akan dipotong menjadi 0x4000. Fungsi waveOutGetVolume mengembalikan pengaturan 16-bit penuh yang diatur dengan waveOutSetVolume.

Pengaturan volume ditafsirkan secara logaritma. Ini berarti peningkatan volume yang dirasakan sama ketika meningkatkan tingkat volume dari 0x5000 ke 0x6000 seperti halnya dari 0x4000 ke 0x5000.

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

Waveform Audio

Fungsi Bentuk Gelombang