Aracılığıyla paylaş


Birim Denetimleri

Paylaşılan mod akışlarını yöneten istemciler genellikle ISimpleAudioVolume ve IAudioSessionEvents arabirimlerini WASAPI kullanarak akış birimi düzeylerini denetler ve izler. ISimpleAudioVolume arabirimindeki yöntemler aracılığıyla istemci, paylaşılan mod akışlarının ait olduğu ses oturumlarının ses düzeylerini alabilir ve ayarlayabilir. Sndvol veya başka bir uygulama oturum hacmi düzeyini değiştirirse, istemci IAudioSessionEvents arabirimi aracılığıyla değişiklik bildirimi alabilir.

Özel mod akışlarını yöneten istemciler genellikle IAudioEndpointVolume ve IAudioEndpointVolumeCallback arabirimlerini EndpointVolume API kullanarak akış birimi düzeylerini denetler ve izler. IAudioEndpointVolume arabirimindeki yöntemler aracılığıyla istemci, birses uç noktası cihazının ses düzeyini alabilir ve ayarlayabilir. Sndvol veya başka bir uygulama uç nokta cihazının birim düzeyini değiştirirse, istemci IAudioEndpointVolumeCallback arabirimi aracılığıyla değişiklik bildirimi alabilir.

Ses Oturumlarında açıklandığı gibi, Sndvol sistem ses denetimi programıdır. Sistemdeki ses işleme uç noktası cihazları için birim denetimlerini görüntüler. (Şu anda ses yakalama uç noktası cihazları için ses denetimlerini görüntülemez.) Belirli bir cihazın ses düzeyi denetimlerini görüntülemek için menü çubuğunda cihaz tıklayın ve kullanılabilir cihazlar listesinden bir cihaz adı seçin.

Sndvol penceresi, bir cihazın birim denetimlerini iki gruba ayırır. Pencerenin sol tarafındaki grup kutusu Cihaz etiketlenmiştir. Cihaz kutusu, IAudioEndpointVolume arabirimi tarafından denetlenen tek bir birim denetimi içerir. Kullanıcının bu birim denetiminde yaptığı değişiklikler IAudioEndpointVolumeCallback arabirimi aracılığıyla izlenebilir.

Sndvol penceresinin sağ tarafındaki grup kutusu Uygulamalar etiketlenmiştir. Uygulamaları kutusu, o anda cihazı paylaşan uygulamaların birim denetimlerini içerir. Cihazı paylaşılan modda kullanan uygulamalar için birim denetimleri, ISimpleAudioVolume arabirimi tarafından denetlenen birim düzeylerini temsil eder. Kullanıcının bu birim denetimlerinde yaptığı değişiklikler IAudioSessionEvents arabirimi üzerinden izlenebilir.

Paylaşılan modlu bir uygulama, kullanıcının Sndvol penceresindeki Uygulamalar kutusunda uygulamanın birim denetiminde yaptığı değişiklikleri izlemek için IAudioSessionEvents arabirimini kullansa da, uygulama diğer, ilgisiz uygulamaların birim denetimlerinde yapılan değişiklikleri izleyemez. Benzer şekilde, bir uygulama ISimpleAudioVolume arabirimi aracılığıyla ses oturumlarının ses düzeylerini değiştirebilir, ancak diğer, ilgisiz uygulamalara ait oturumların ses düzeylerini değiştiremez.

Ancak, iki veya daha fazla ilgili uygulama (veya aynı uygulamanın örnekleri), ses akışlarını aynı işlemler arası oturuma atayarak veya ilgili oturumlarını aynı gruplandırma parametresiyle ilişkilendirerek Sndvol penceresindeki Uygulamalar kutusunda aynı birim denetimini paylaşabilir. Daha fazla bilgi için bkz. Ses Oturumları ve Gruplandırma Parametreleri.

WASAPI, paylaşılan mod akışlarının birim düzeylerini denetlemek için IChannelAudioVolumeve IAudioStreamVolumeiki ek arabirim sağlar. Bu arabirimler çoğunlukla bir oturumdaki tek tek kanalların veya bir oturumdaki tek tek akışların ses düzeyi üzerinde denetim gerektiren özel istemciler tarafından kullanılır.

DeviceTopology API, istemcilerin ses bağdaştırıcılarının topolojilerindeki birim denetimlerine erişmesini sağlar. Ancak, özel mod akışlarını yöneten istemciler genellikle akış birimi düzeylerini denetlemek için DeviceTopology API'sinin yerine EndpointVolume API'sini kullanır. EndpointVolume API'si bir uç nokta cihazının hacminin denetimini iki şekilde basitleştirir. İlk olarak, bir uç nokta cihazı bir donanım birim denetimi uygularsa, DeviceTopology API'sinde istemcinin donanım denetimi araması için cihaz topolojisinde dolaşması gerekir. Buna karşılık, EndpointVolume API'si istemci için donanım birimi denetimini otomatik olarak bulur. İkinci olarak, uç nokta cihazı bir donanım birim denetimi uygulamazsa, DeviceTopology istemcisinin yazılımda bir birim denetimi uygulaması gerekir. Buna karşılık EndpointVolume API'sinde eksik donanım denetimi için otomatik olarak bir yazılım birim denetimi kullanılır.

Aşağıdaki bölümlerde ses oturumları ve ses uç noktası cihazları için birim denetimleri açıklanmaktadır:

  • Oturum Ses Denetimlerini
  • Uç Nokta Birim Denetimlerini
  • EndpointVolume API
  • birim denetimlerini Audio-Tapered
  • Tepe Metre

Programlama Kılavuzu