ISpatialAudioClient-Schnittstelle (spatialaudioclient.h)
Die ISpatialAudioClient-Schnittstelle ermöglicht es einem Client, Audiostreams zu erstellen, die Audiodaten von einer Position im 3D-Raum ausgeben. Diese Schnittstelle ist Teil von Windows Sonic, der Audioplattform von Microsoft für immersivere Audiowiedergabe, die integrierte raumbezogene Sound auf Xbox und Windows umfasst.
Vererbung
Die ISpatialAudioClient-Schnittstelle erbt von der IUnknown-Schnittstelle . ISpatialAudioClient verfügt auch über folgende Membertypen:
Methoden
Die ISpatialAudioClient-Schnittstelle verfügt über diese Methoden.
ISpatialAudioClient::ActivateSpatialAudioStream Aktiviert und initialisiert den räumlichen Audiodatenstrom mithilfe einer der Aktivierungsstrukturen für räumliche Audiodatenströme. |
ISpatialAudioClient::GetMaxDynamicObjectCount Ruft die maximale Anzahl dynamischer Audioobjekte für den Räumlichen Audioclient ab. |
ISpatialAudioClient::GetMaxFrameCount Ruft die maximal mögliche Frameanzahl pro Verarbeitungsdurchlauf ab. Diese Methode kann verwendet werden, um die Größe des Quellpuffers zu bestimmen, der zugeordnet werden soll, um Audiodaten für jeden Verarbeitungsdurchlauf zu übermitteln. |
ISpatialAudioClient::GetNativeStaticObjectTypeMask Ruft eine Kanalmaske ab, die die Teilmenge der statischen Sprecherbettkanäle darstellt, die der aktuellen Rendering-Engine nativ sind. |
ISpatialAudioClient::GetStaticObjectPosition Ruft die Position des angegebenen statischen räumlichen Audiokanals im 3D-Bereich ab. |
ISpatialAudioClient::GetSupportedAudioObjectFormatEnumerator Ruft einen IAudioFormatEnumerator ab, der alle unterstützten Audioformate für räumliche Audioobjekte enthält. Das erste Element in der Liste stellt das am besten bevorzugte Format dar. |
ISpatialAudioClient::IsAudioObjectFormatSupported Ruft einen Wert ab, der angibt, ob ISpatialAudioObjectRenderStream ein angegebenes Format unterstützt. |
ISpatialAudioClient::IsSpatialAudioStreamAvailable Ruft bei erfolgreicher Ausführung einen Wert ab, der angibt, ob die derzeit aktive Räumliche Rendering-Engine den angegebenen Renderdatenstrom für räumliche Audiodaten unterstützt. |
Hinweise
Der folgende Beispielcode veranschaulicht, wie diese Schnittstelle mithilfe von IMMDevice initialisiert wird.
HRESULT hr;
Microsoft::WRL::ComPtr<IMMDeviceEnumerator> deviceEnum;
Microsoft::WRL::ComPtr<IMMDevice> defaultDevice;
hr = CoCreateInstance(__uuidof(MMDeviceEnumerator), nullptr, CLSCTX_ALL, __uuidof(IMMDeviceEnumerator), (void**)&deviceEnum);
hr = deviceEnum->GetDefaultAudioEndpoint(EDataFlow::eRender, eMultimedia, &defaultDevice);
Microsoft::WRL::ComPtr<ISpatialAudioClient> spatialAudioClient;
hr = defaultDevice->Activate(__uuidof(ISpatialAudioClient), CLSCTX_INPROC_SERVER, nullptr, (void**)&spatialAudioClient);
Für UWP-Apps, die keinen Zugriff auf IMMDevice haben, sollten Sie eine instance von ISpatialAudioClient erhalten, indem Sie ActivateAudioInterfaceAsync aufrufen. Ein Beispiel finden Sie im WindowsAudioSession-Beispiel.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10, Version 1703 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2016 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | spatialaudioclient.h |