Co nowego w przypadku podstawowych interfejsów API audio w systemie Windows 7
Podstawowe interfejsy API audio zostały wprowadzone w systemie Windows Vista, który zapewnia nowy zestaw składników audio trybu użytkownika, których aplikacja kliencka może używać do renderowania lub przechwytywania strumieni audio z ulepszonymi możliwościami audio. Aby zapoznać się z ogólnym omówieniem tego zestawu interfejsów API, zobacz About the Windows Core Audio APIs.
Podstawowe interfejsy API audio zostały ulepszone w systemie Windows 7. Poniższa tabela zawiera podsumowanie nowych funkcji i ulepszeń podstawowych interfejsów API audio:
Cecha | Opis |
---|---|
Ulepszenia ogólne | Ulepszono następujące funkcje w systemie Windows 7:
|
Urządzenie komunikacyjne (nowe) | W tej wersji dodano nowy typ urządzenia do panelu sterowania Sounds: Communications. To urządzenie jest używane głównie do komunikacji, czyli do umieszczenia lub odbierania połączeń telefonicznych na komputerze. Aplikacja komunikacji może używać składników Core Audio, aby uzyskać odwołanie do punktu końcowego domyślnego urządzenia komunikacyjnego i renderować strumienie audio na potrzeby komunikacji. System operacyjny uznaje strumień otwarty na urządzeniu komunikacyjnym za strumień komunikacji. Operacje WASAPI na strumieniu komunikacyjnym są podobne do dowolnego innego strumienia audio. Aby uzyskać więcej informacji, zobacz Praca z rolami urządzeń. |
Tłumienie strumienia lub przyciszanie audio (Nowe) | Automatyczne ducking lub Stream Attenuation to nowa funkcja w systemie Windows 7 przeznaczona dla aplikacji VoIP i Unified Communication. Domyślnie system operacyjny zmniejsza intensywność strumienia audio, gdy strumień komunikacji, taki jak połączenie telefoniczne, jest odbierany na urządzeniu komunikacyjnym za pośrednictwem komputera. Opcje głośności są ustawiane przez użytkownika w panelu sterowania Sound. Nowe API zostały dodane do Windows SDK, które to umożliwiają aplikacjom zastąpienie domyślnego zachowania przyciszania. Aby uzyskać więcej informacji na temat implementowania niestandardowej funkcji ducking, zobacz Tworzenie niestandardowego zachowania ducking. |
Nowy routing strumienia | W systemie Windows 7 interfejsy API podstawowego dźwięku zostały ulepszone w celu bezproblemowego przesyłania strumienia audio z istniejącego urządzenia do nowego domyślnego punktu końcowego audio. Zestawy interfejsów API audio wysokiego poziomu korzystające z podstawowych interfejsów API audio, takich jak Media Foundation, DirectSound i WAVE API, implementują funkcję routingu strumienia. Aplikacje multimedialne korzystające z tych zestawów interfejsów API do odtwarzania lub przechwytywania strumienia używają domyślnej implementacji i nie muszą modyfikować aplikacji. Jeśli jednak aplikacja multimediów korzysta bezpośrednio z podstawowych interfejsów API audio, aplikacja musi zapewnić implementację routingu strumienia. Aby to zrobić, aplikacja musi obsługiwać nowe zdarzenia, które zostały dodane, które powiadamiają klienta WASAPI po nawiązaniu połączenia lub usunięciu urządzenia domyślnego. Aby uzyskać więcej informacji na temat tej funkcji, zobacz Stream Routing. |
Chroniony dźwięk w trybie użytkownika (PUMA) (ulepszony) | Funkcja PUMA została zaktualizowana dla systemu Windows 7 w celu zapewnienia następujących funkcji:
|
Struktura WAVEFORMATEXTENSIBLE została rozszerzona do nowej struktury WAVEFORMATEXTENSIBLE_IEC61937. | W systemie Windows 7 dodano nową strukturę do obsługi transmisji IEC 61937.
WAVEFORMATEXTENSIBLE_IEC61937 rozszerza strukturę WAVEFORMATEXTENSIBLE, aby przechowywać dwa zestawy cech strumienia audio: zakodowany format audio przed transmisją i charakterystyką strumienia audio po jego dekodowaniu. Nowa struktura jawnie określa efektywną liczbę kanałów, rozmiar próbki i szybkość danych formatu innego niż PCM. Dzięki tym informacjom aplikacja może wywnioskować poziom jakości strumienia innego niż PCM po jego dekompresowaniu i odtwarzaniu. Aby uzyskać więcej informacji, zobacz Przedstawianie formatów transmisji IEC 61937. |
IAudioClient::Initialize (ulepszona) | Ulepszono metodę IAudioClient::Initialize, aby wskazać określone błędy, które mogą wystąpić podczas otwierania strumienia audio. Nowe kody błędów to:
|
IAudioCaptureClient::GetBuffer i IAudioRenderClient::GetBuffer (Ulepszono). | metody IAudioCaptureClient::GetBuffer i IAudioRenderClient::GetBuffer metody zostały ulepszone, aby zwrócić kod błędu AUDCLNT_E_BUFFER_ERROR wskazujący, że bufor punktu końcowego w trybie wyłączności nie został pobrany. Aby uzyskać więcej informacji, zobacz Uwagi w IAudioCaptureClient::GetBuffer i IAudioRenderClient::GetBuffer. |
Zdolność wykrywania złącza jack (ulepszona) | Nowy interfejs w systemie Windows 7, IKsJackDescription2, rozszerza IKsJackDescription. Za pomocą nowego interfejsu stos audio lub aplikacja może uzyskać dodatkowe informacje o jacku. Obejmuje to możliwość wykrywania gniazda i sprawdzanie, czy format urządzenia zmienił się dynamicznie. |
Przykłady systemu Windows (nowe) | Dodano nowe przykłady do pakietu Windows SDK, które demonstrują użycie interfejsów API Core Audio. Aby uzyskać więcej informacji, zapoznaj się z przykładami SDK używającymi podstawowych API audio . |
Główne nowe interfejsy
Następujące interfejsy są nowe dla systemu Windows 7:
- IAudioClock2
- IAudioClockAdjustment
- IAudioEndpointVolumeEx
- IAudioSessionManager2
- IAudioSessionControl2
- IAudioSessionEnumerator
- IAudioSessionNotification
- IAudioVolumeDuckNotification
- IKsJackDescription2
- IKsJackSinkInformation
Tematy pokrewne