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.
Masing-masing dari empat faktor tingkat volume dalam daftar sebelumnya adalah nilai dalam rentang 0,0 hingga 1,0, di mana 0,0 menunjukkan keheningan dan 1,0 menunjukkan volume penuh (tanpa redaman). Tingkat volume yang efektif juga merupakan nilai dalam rentang 0,0 hingga 1,0.

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

Lihat juga

Antarmuka Audio Inti

IAudioClient::GetService

IAudioClient::Initialize

Antarmuka IAudioStreamVolume

Antarmuka ISimpleAudioVolume

WASAPI