SpatialAudioHrtfActivationParams2-Struktur (spatialaudiohrtf.h)
Stellt Aktivierungsparameter für einen räumlichen Audiorenderingstream dar und erweitert SpatialAudioHrtfActivationParams (spatialaudiohrtf.h) mit der Möglichkeit, Streamoptionen anzugeben.
Syntax
typedef struct SpatialAudioHrtfActivationParams2 {
const WAVEFORMATEX *ObjectFormat;
AudioObjectType StaticObjectTypeMask;
UINT32 MinDynamicObjectCount;
UINT32 MaxDynamicObjectCount;
AUDIO_STREAM_CATEGORY Category;
HANDLE EventHandle;
ISpatialAudioObjectRenderStreamNotify *NotifyObject;
SpatialAudioHrtfDistanceDecay *DistanceDecay;
SpatialAudioHrtfDirectivityUnion *Directivity;
SpatialAudioHrtfEnvironmentType *Environment;
SpatialAudioHrtfOrientation *Orientation;
SPATIAL_AUDIO_STREAM_OPTIONS Options;
} SpatialAudioHrtfActivationParams2;
Member
ObjectFormat
Formatdeskriptor für räumliche Audioobjekte, die dem Stream zugeordnet sind. Alle Objekte müssen das gleiche Format haben und vom Typ WAVEFORMATEX oder WAVEFORMATEXTENSIBLE sein.
StaticObjectTypeMask
Eine bitweise Kombination von AudioObjectType-Werten , die den Satz von statischen räumlichen Audiokanälen angibt, die vom aktivierten Stream zugelassen werden.
MinDynamicObjectCount
Die Mindestanzahl gleichzeitiger dynamischer Objekte. Wenn diese Anzahl dynamischer Audioobjekte nicht gleichzeitig aktiviert werden kann, werden keine dynamischen Audioobjekte aktiviert.
MaxDynamicObjectCount
Die maximale Anzahl gleichzeitiger dynamischer Objekte, die mit ISpatialAudioRenderStreamForHrtf aktiviert werden können.
Category
Die Kategorie des Audiostreams und seiner räumlichen Audioobjekte.
EventHandle
Das Ereignis, das dem Client signalisiert, weitere Audiodaten bereitzustellen. Dieses Handle wird intern dupliziert, bevor es verwendet wird.
NotifyObject
Das -Objekt, das Benachrichtigungen für räumliche Audioclients bereitstellt, um auf Änderungen im Zustand eines ISpatialAudioRenderStreamForHrtf zu reagieren. Dieses Objekt wird verwendet, um Clients zu benachrichtigen, dass sich die Anzahl dynamischer räumlicher Audioobjekte, die gleichzeitig aktiviert werden können, ändern wird.
DistanceDecay
Optionaler Standardwert für das Verfallsmodell, das für ISpatialAudioObjectForHrtf-Objekte verwendet wird, die dem Stream zugeordnet sind. nullptr , wenn nicht verwendet.
Directivity
Optionaler Standardwert für das räumliche Audiodirektivitätsmodell, das für ISpatialAudioObjectForHrtf-Objekte verwendet wird, die dem Stream zugeordnet sind. nullptr , wenn nicht verwendet.
Environment
Optionaler Standardwert für den Typ der Umgebung, der bei der Verarbeitung von Audiodaten für dem Stream zugeordnete ISpatialAudioObjectForHrtf-Objekte simuliert wird. nullptr , wenn nicht verwendet.
Orientation
Optionaler Standardwert für die Ausrichtung von ISpatialAudioObjectForHrtf-Objekten , die dem Stream zugeordnet sind. nullptr , wenn nicht verwendet.
Options
Ein Mitglied der SPATIAL_AUDIO_STREAM_OPTIONS Emumeration, wobei Optionen für den aktivierten Audiostream angegeben werden.
Hinweise
Im folgenden Beispiel wird die Aktivierung eines räumlichen Audiorenderingstreams für HRTF mit Streamoptionen veranschaulicht.
void CreateSpatialAudioObjectRenderStreamForHrtf(
_In_ ISpatialAudioClient2* spatialAudioClient,
_In_ WAVEFORMATEX const* objectFormat,
AudioObjectType staticObjectTypeMask,
UINT32 minDynamicObjectCount,
UINT32 maxDynamicObjectCount,
AUDIO_STREAM_CATEGORY streamCategory,
_In_ HANDLE eventHandle,
_In_opt_ ISpatialAudioObjectRenderStreamNotify* notifyObject,
_In_opt_ SpatialAudioHrtfDistanceDecay* distanceDecay,
_In_opt_ SpatialAudioHrtfDirectivityUnion* directivity,
_In_opt_ SpatialAudioHrtfEnvironmentType* environment,
_In_opt_ SpatialAudioHrtfOrientation* orientation,
bool enableOffload,
_COM_Outptr_ ISpatialAudioObjectRenderStreamForHrtf** stream)
{
SpatialAudioHrtfActivationParams2 streamActivationParams =
{
objectFormat,
staticObjectTypeMask,
minDynamicObjectCount,
maxDynamicObjectCount,
streamCategory,
eventHandle,
notifyObject,
distanceDecay,
directivity,
environment,
orientation,
enableOffload ? SPATIAL_AUDIO_STREAM_OPTIONS_OFFLOAD : SPATIAL_AUDIO_STREAM_OPTIONS_NONE
};
PROPVARIANT activateParamsPropVariant = {};
activateParamsPropVariant.vt = VT_BLOB;
activateParamsPropVariant.blob.cbSize = sizeof(streamActivationParams);
activateParamsPropVariant.blob.pBlobData = reinterpret_cast<BYTE*>(&streamActivationParams);
*stream = nullptr;
THROW_IF_FAILED(spatialAudioClient->ActivateSpatialAudioStream(&activateParamsPropVariant, IID_PPV_ARGS(stream)));
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Build 22000 |
Kopfzeile | spatialaudiohrtf.h |