Antarmuka IChannelAudioVolume (audioclient.h)
Antarmuka IChannelAudioVolume memungkinkan klien mengontrol dan memantau tingkat volume untuk semua saluran dalam sesi audio tempat aliran berada. Ini adalah sesi tempat klien menetapkan aliran selama panggilan ke metode IAudioClient::Initialize . Klien mendapatkan referensi ke antarmuka IChannelAudioVolume pada objek stream dengan memanggil metode IAudioClient::GetService dengan parameter riid diatur ke REFIID IID_IChannelAudioVolume.
Tingkat volume efektif dari saluran apa pun dalam submix sesi, seperti yang didengarkan di speaker, adalah produk dari empat faktor tingkat volume berikut:
- Tingkat volume per saluran aliran dalam sesi, yang dapat dikontrol klien melalui metode di antarmuka IAudioStreamVolume .
- Tingkat volume per saluran sesi, yang dapat dikontrol klien melalui metode di antarmuka IChannelAudioVolume .
- Tingkat volume master sesi, yang dapat dikontrol klien melalui metode di antarmuka ISimpleAudioVolume .
- Tingkat volume berbasis kebijakan sesi, yang ditetapkan sistem secara dinamis ke sesi saat campuran global berubah.
Aplikasi audio umum tidak mengubah tingkat volume sesi. Sebaliknya, mereka mengandalkan pengguna untuk mengatur tingkat volume ini melalui program Sndvol. Sndvol hanya memodifikasi tingkat volume master sesi. Secara default, manajer sesi mengatur tingkat volume per saluran ke 1,0 pada aktivasi awal sesi. Perubahan volume per saluran berikutnya oleh klien terus-menerus di seluruh komputer dimulai ulang.
Saat merilis instans antarmuka IChannelAudioVolume , klien harus memanggil metode Rilis antarmuka dari utas yang sama dengan panggilan ke IAudioClient::GetService yang membuat objek.
Antarmuka IChannelAudioVolume mengontrol volume saluran dalam sesi audio. Sesi audio adalah kumpulan aliran mode bersama. Antarmuka ini tidak berfungsi dengan aliran mode eksklusif. Untuk informasi tentang kontrol volume untuk aliran mode eksklusif, lihat Api EndpointVolume.
Warisan
Antarmuka IChannelAudioVolume mewarisi dari antarmuka IUnknown . IChannelAudioVolume juga memiliki jenis anggota berikut:
Metode
Antarmuka IChannelAudioVolume memiliki metode ini.
IChannelAudioVolume::GetAllVolumes Metode GetAllVolumes mengambil tingkat volume untuk semua saluran dalam sesi audio. |
IChannelAudioVolume::GetChannelCount Metode GetChannelCount mengambil jumlah saluran dalam format aliran untuk sesi audio. |
IChannelAudioVolume::GetChannelVolume Metode GetChannelVolume mengambil tingkat volume untuk saluran yang ditentukan dalam sesi audio. |
IChannelAudioVolume::SetAllVolumes Metode SetAllVolumes mengatur tingkat volume individual untuk semua saluran dalam sesi audio. |
IChannelAudioVolume::SetChannelVolume Metode SetChannelVolume mengatur tingkat volume untuk saluran yang ditentukan dalam sesi audio. |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | audioclient.h |