Neuerungen bei Core-Audio-APIs in Windows 7
Die Core Audio-APIs wurden in Windows Vista eingeführt, das eine neue Gruppe von Audiokomponenten für den Benutzermodus bereitstellte, die eine Clientanwendung zum Rendern oder Aufzeichnen von Audiodatenströmen mit verbesserten Audiofunktionen verwenden kann. Eine allgemeine Übersicht über diesen API-Satz finden Sie unter Informationen zu den Windows Core-Audio-APIs.
Die Core Audio-APIs wurden in Windows 7 verbessert. In der folgenden Tabelle sind die neuen Features und Verbesserungen der Core Audio-APIs zusammengefasst:
Funktion | BESCHREIBUNG |
---|---|
Generische Verbesserungen | Die folgenden Features wurden in Windows 7 verbessert:
|
Kommunikationsgerät (neu) | In dieser Version wurde der Sound-Systemsteuerung ein neuer Gerätetyp hinzugefügt: Kommunikationsgerät . Dieses Gerät wird hauptsächlich für die Kommunikation verwendet, d. h. um Telefonanrufe auf dem Computer zu tätigen oder zu empfangen. Eine Kommunikationsanwendung kann Core Audio-Komponenten verwenden, um einen Verweis auf den Endpunkt des Standardkommunikationsgeräts abzurufen und Audiodatenströme zu Kommunikationszwecken zu rendern. Das Betriebssystem betrachtet den auf einem Kommunikationsgerät geöffneten Datenstrom als Kommunikationsdatenstrom. Die WASAPI-Vorgänge für einen Kommunikationsdatenstrom ähneln jedem anderen Audiodatenstrom. Weitere Informationen finden Sie unter Arbeiten mit Geräterollen. |
Streamdämpfung oder Audio-Ducking (neu) | Automatisches Enten oder Stream-Dämpfung ist ein neues Feature in Windows 7, das für VoIP- und Unified Communication-Anwendungen vorgesehen ist. Standardmäßig reduziert das Betriebssystem die Intensität eines Audiodatenstroms, wenn ein Kommunikationsdatenstrom, z. B. ein Telefonanruf, auf dem Kommunikationsgerät über den Computer empfangen wird. Die Lautstärkeoptionen werden vom Benutzer in der Sound-Systemsteuerung festgelegt. Im Windows SDK wurden neue APIs hinzugefügt, mit denen Anwendungen das Standard-Duckingverhalten ersetzen können. Weitere Informationen zum Implementieren eines benutzerdefinierten Duckingfeatures finden Sie unter Bereitstellen eines benutzerdefinierten Duckingverhaltens. |
Streamrouting (neu) | In Windows 7 wurden die Core-Audio-APIs verbessert, um einen Audiodatenstrom nahtlos von einem vorhandenen Gerät auf einen neuen Standardendpunkt für Audio zu übertragen. Allgemeine Audio-API-Sets, die Core Audio-APIs wie Media Foundation, DirectSound und WAVE-APIs verwenden, implementieren das Streamroutingfeature. Medienanwendungen, die diese API-Sätze zum Wiedergeben oder Erfassen eines Datenstroms verwenden, verwenden die Standardimplementierung und müssen die Anwendung nicht ändern. Wenn Ihre Medienanwendung jedoch direkt Core-Audio-APIs verwendet, muss die Anwendung die Implementierung des Streamroutings bereitstellen. Dazu muss die Anwendung neue hinzugefügte Ereignisse behandeln, die einen WASAPI-Client benachrichtigen, wenn das Standardgerät verbunden oder entfernt wird. Weitere Informationen zu diesem Feature finden Sie unter Streamrouting. |
Geschütztes Benutzermodusaudio (PUMA) (verbessert) | PUMA wurde für Windows 7 aktualisiert, um die folgenden Features bereitzustellen:
|
Die WAVEFORMATEXTENSIBLE-Struktur wurde auf die WAVEFORMATEXTENSIBLE_IEC61937-Struktur (Neu) erweitert. | In Windows 7 wurde eine neue Struktur hinzugefügt, um IEC 61937-Übertragungen zu unterstützen.
WAVEFORMATEXTENSIBLE_IEC61937 erweitert die WAVEFORMATEXTENSIBLE-Struktur , um zwei Sätze von Audiodatenstrommerkmalen zu speichern: das codierte Audioformat vor der Übertragung und die Merkmale des Audiodatenstroms, nachdem er decodiert wurde. Die neue -Struktur gibt explizit die effektive Anzahl von Kanälen, die Stichprobengröße und die Datenrate eines Nicht-PCM-Formats an. Mit diesen Informationen kann eine Anwendung die Qualitätsstufe des Nicht-PCM-Datenstroms ableiten, nachdem er dekomprimiert und wiedergegeben wurde. Weitere Informationen finden Sie unter Darstellen von Formaten für IEC 61937-Übertragungen. |
IAudioClient::Initialize (verbessert) | Die IAudioClient::Initialize-Methode wurde verbessert, um bestimmte Fehler anzuzeigen, die beim Öffnen eines Audiodatenstroms auftreten können. Die neuen Fehlercodes sind:
|
IAudioCaptureClient::GetBuffer und IAudioRenderClient::GetBuffer (verbessert) | Die Methoden IAudioCaptureClient::GetBuffer und IAudioRenderClient::GetBuffer wurden verbessert, um den AUDCLNT_E_BUFFER_ERROR Fehlercode zurückzugeben, der angibt, dass der Endpunktpuffer im exklusiven Modus nicht abgerufen wurde. Weitere Informationen finden Sie unter Hinweise in IAudioCaptureClient::GetBuffer und IAudioRenderClient::GetBuffer. |
Jack-Erkennungsfunktion (verbessert) | Eine neue Schnittstelle in Windows 7, IKsJackDescription2, erweitert IKsJackDescription. Mithilfe der neuen Schnittstelle kann der Audiostapel oder eine Anwendung zusätzliche Klinkeninformationen abrufen. Dies umfasst die Erkennungsfunktion der Buchse und ob sich das Format des Geräts dynamisch geändert hat. |
Windows-Beispiele (neu) | Dem Windows SDK wurden neue Beispiele hinzugefügt, die die Verwendung der Core-Audio-APIs veranschaulichen. Weitere Informationen finden Sie unter SDK-Beispiele, die die Kernaudio-APIs verwenden. |
Wichtige neue Schnittstellen
Die folgenden Schnittstellen sind für Windows 7 neu:
- IAudioClock2
- IAudioClockAdjustment
- IAudioEndpointVolumeEx
- IAudioSessionManager2
- IAudioSessionControl2
- IAudioSessionEnumerator
- IAudioSessionNotification
- IAudioVolumeDuckNotification
- IKsJackDescription2
- IKsJacksinkInformation
Zugehörige Themen