Neues bei Core-Audio-APIs in Windows 7
Die Core Audio-APIs wurden in Windows Vista eingeführt, die einen neuen Satz von Audiokomponenten im Benutzermodus bereitgestellt haben, die eine Clientanwendung verwenden kann, um Audiostreams mit verbesserten Audiofunktionen zu rendern oder zu erfassen. Eine allgemeine Übersicht über diesen API-Satz finden Sie unter Informationen zu Windows Core-Audio-APIs.
Die Core Audio-APIs wurden in Windows 7 verbessert. In der folgenden Tabelle sind die neuen Features und die Verbesserungen der Core Audio-APIs zusammengefasst:
| Funktion | BESCHREIBUNG |
|---|---|
| Allgemeine Verbesserungen | Die folgenden Features wurden in Windows 7 verbessert:
|
| Kommunikationsgerät (neu) | In diesem Release wurde der Sound-Systemsteuerung ein neuer Gerätetyp hinzugefügt: Kommunikationsgerät. Dieses Gerät wird in erster Linie für die Kommunikation verwendet, d. b. zum Tätigen oder Empfangen von Telefonanrufen auf dem Computer. Eine Kommunikationsanwendung kann Core Audio-Komponenten verwenden, um einen Verweis auf den Endpunkt des Standardkommunikationsgeräts zu erhalten und Audiostreams zu Kommunikationszwecken zu rendern. Das Betriebssystem betrachtet den auf einem Kommunikationsgerät geöffneten Stream als Kommunikationsstream. Die WASAPI-Vorgänge in einem Kommunikationsstream ähneln allen anderen Audiostreams. Weitere Informationen finden Sie unter Arbeiten mit Geräterollen. |
| Streamdämpfung oder Audio-Streaming (Neu) | Automatisches Wischen oder Stream attenuation 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 Kommunikationsstream, z. B. ein Telefonanruf, über den Computer auf dem Kommunikationsgerät empfangen wird. Die Volumeoptionen werden vom Benutzer in der Systemsteuerung Sound festgelegt. Neue APIs wurden im Windows SDK hinzugefügt, die es Anwendungen ermöglichen, das standardverfeinerte Verhalten zu ersetzen. Weitere Informationen zum Implementieren eines benutzerdefinierten Features für das Einlesen finden Sie unter Bereitstellen eines benutzerdefinierten Verhaltens für die Beschningung. |
| Streamrouting (Neu) | In Windows 7 wurden die Core Audio-APIs verbessert, um einen Audiostream nahtlos von einem vorhandenen Gerät an einen neuen Standardaudioendpunkt zu übertragen. High-Level-Audio-API-Sätze, die Core Audio-APIs wie Media Foundation-, DirectSound- und WAVE-APIs verwenden, implementieren das Streamroutingfeature. Medienanwendungen, die diese API-Sätze zum Wiedereinspielen oder Erfassen eines Streams verwenden, verwenden die Standardimplementierung und müssen die Anwendung nicht ändern. Wenn Ihre Medienanwendung jedoch Core Audio-APIs direkt verwendet, muss die Anwendung die Implementierung des Streamroutings bereitstellen. Dazu muss die Anwendung neue Ereignisse behandeln, die hinzugefügt wurden, die einen WASAPI-Client benachrichtigen, wenn das Standardgerät verbunden oder entfernt wird. Weitere Informationen zu diesem Feature finden Sie unter Streamrouting. |
| Audio im geschützten Benutzermodus (PROTECTED User Mode Audio,GUIDE) (verbessert) | FÜR VERSION Windows 7 wurde DIE VERSION 7 aktualisiert, um die folgenden Features zu bieten:
|
| Die WAVEFORMATEXTENSIBLE-Struktur wurde auf die WAVEFORMATEXTENSIBLE_IEC61937 (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 Audiostreammerkmalen zu speichern: das codierte Audioformat vor der Übertragung und die Merkmale des Audiostreams nach der Decodierung. 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-Streams nach dem Dekomprimieren und Abspielen abgeleitet. 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 anzugeben, die beim Öffnen eines Audiostreams 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ückgibt, der angibt, dass der Endpunktpuffer im exklusiven Modus nicht abgerufen wurde. Weitere Informationen finden Sie unter Hinweise in IAudioCaptureClient::GetBuffer und IAudioRenderClient::GetBuffer. |
| Jackenerkennungsfunktion (verbessert) | Eine neue Schnittstelle in Windows 7, IKsJackDescription2,erweitert IKsJackDescription. Mithilfe der neuen Schnittstelle können der Audiostapel oder eine Anwendung zusätzliche Jackeninformationen erhalten. Dies schließt die Erkennungsfunktion der Buchse ein und gibt an, 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 Core Audio-APIs verwenden. |
Wichtige neue Schnittstellen
Die folgenden Schnittstellen sind neu für Windows 7:
- IAudioClock2
- IAudioClockAdjustment
- IAudioEndpointVolumeEx
- IAudioSessionManager2
- IAudioSessionControl2
- IAudioSessionEnumerator
- IAudioSessionNotification
- IAudioVolumeDuckNotification
- IKsJackDescription2
- IKsJackSinkInformation