Udostępnij za pośrednictwem


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:
  • W strumieniach trybu udostępniania systemu Windows 7 działają w trybie małych opóźnień. Silnik audio działa w trybie pobierania ze znacznym zmniejszeniem opóźnienia. Jest to bardzo przydatne w przypadku aplikacji komunikacyjnych, które wymagają małego opóźnienia strumienia audio w celu szybszego przesyłania strumieniowego.
  • System Windows 7 zapewnia lepsze wykrywanie roli urządzenia po dodaniu nowego urządzenia do systemu. Aby uzyskać więcej informacji, zobacz Praca z rolami urządzeń.
  • W systemie Windows 7 możesz słuchać muzyki z przenośnego odtwarzacza multimedialnego za pośrednictwem głośników komputerowych. Tę funkcję Monitora Przechwytywania można użyć, podłączając przenośny odtwarzacz multimedialny do komputera za pomocą analogowego kabla audio. W przeszłości niektórzy producenci OEM udostępniali tę funkcję w sterowniku audio przy użyciu pętli sprzętowej. W systemie Windows 7 ta funkcja została dodana do systemu operacyjnego. Ponieważ jest to w systemie, a nie sterownik, można go użyć dla dowolnego innego urządzenia podłączonego do systemu, takiego jak zestaw słuchawkowy USB.
  • Dźwięk HDMI został rozszerzony w systemie Windows 7, który zapewnia obsługę formatu o wysokiej szybkości bitów. Dzięki temu ulepszeniu można obsługiwać wielokanałowe formaty audio i skompresowane audio przez złącze HDMI do odbiornika audio.
  • W systemie Windows Vista program Windows Media Player odtwarza muzykę tylko za pośrednictwem domyślnego urządzenia audio, którego nie można zmienić przez użytkownika. Aby program Windows Media Player renderować dźwięk na określonym urządzeniu, należy zmienić domyślne urządzenie w panelu sterowania Sounds. W systemie Windows 7 program Windows Media Player udostępnia interfejsy API, które umożliwiają aplikacji renderowanie na dowolnym urządzeniu wybranym przez użytkownika, a nie tylko na urządzeniu domyślnym.
  • W systemie Windows Vista, jeśli komputer odtwarzający dźwięk przełącza się do trybu zapisywania zasilania, komputer jest zablokowany, a jeśli użytkownik chce przerwać odtwarzanie, użytkownik musi zalogować się i nacisnąć stop, aby zatrzymać odtwarzanie. W systemie Windows 7, jeśli komputer jest zablokowany, nadal można kontrolować odtwarzanie przy użyciu kontrolki HID na klawiaturze.
  • System Windows 7 zmniejsza zużycie energii w przypadku każdej aplikacji korzystającej z funkcji DirectSound i DirectShow do renderowania multimediów. Ponadto usługa Harmonogramu klas multimedialnych umożliwia odporne na błędy generowanie dźwięku i zużywa mniej energii podczas generowania próbek audio.
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:
  • Ustawianie bitów systemu zarządzania kopiowaniem szeregowym (SCMS) w punktach końcowych S/PDIF oraz bitów ochrony zawartości cyfrowej o wysokiej przepustowości (HDCP) na punktach końcowych interfejsu multimedialnego HDMI High-Definition.
  • Włączanie kontroli ochrony SCMS i HDMI poza środowiskiem chronionym (PE).
Aby uzyskać więcej informacji na temat ulepszeń, zobacz audio chronionego trybu użytkownika (PUMA).
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:
  • AUDCLNT_E_BUFFER_SIZE_NOT_ALIGNED
  • Błąd AUDCLNT_E_BUFFER_SIZE_ERROR (problem z rozmiarem bufora)
  • AUDCLNT_E_INVALID_DEVICE_PERIOD
Aby uzyskać więcej informacji na temat tych błędów, zobacz sekcję Wartość zwracana w IAudioClient::Initialize.
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:

Informacje o interfejsach API Windows Core Audio