SpatialAudioObjectRenderStreamForMetadataActivationParams2-Struktur (spatialaudiometadata.h)
Stellt Aktivierungsparameter für einen räumlichen Audiorenderingstream für Metadaten dar und erweitert SpatialAudioObjectRenderStreamForMetadataActivationParams (spatialaudiometadata.h) mit der Möglichkeit, Streamoptionen anzugeben.
Syntax
typedef struct SpatialAudioObjectRenderStreamForMetadataActivationParams2 {
const WAVEFORMATEX *ObjectFormat;
AudioObjectType StaticObjectTypeMask;
UINT32 MinDynamicObjectCount;
UINT32 MaxDynamicObjectCount;
AUDIO_STREAM_CATEGORY Category;
HANDLE EventHandle;
GUID MetadataFormatId;
UINT32 MaxMetadataItemCount;
const PROPVARIANT *MetadataActivationParams;
ISpatialAudioObjectRenderStreamNotify *NotifyObject;
SPATIAL_AUDIO_STREAM_OPTIONS Options;
} SpatialAudioObjectRenderStreamForMetadataActivationParams2;
Member
ObjectFormat
Formatdeskriptor für ein einzelnes räumliches Audioobjekt. Alle vom Stream verwendeten Objekte müssen das gleiche Format aufweisen, und das Format muss 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, schlägt ISpatialAudioClient::ActivateSpatialAudioStream mit diesem Fehler SPTLAUDCLNT_E_NO_MORE_OBJECTS fehl.
MaxDynamicObjectCount
Die maximale Anzahl gleichzeitiger dynamischer Objekte, die mit ISpatialAudioObjectRenderStream 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.
MetadataFormatId
Der Bezeichner des Metadatenformats für die derzeit aktive Räumliche Rendering-Engine.
MaxMetadataItemCount
Die maximale Anzahl von Metadatenelementen pro Frame.
MetadataActivationParams
Zusätzliche Aktivierungsparameter.
NotifyObject
Das Objekt, das Benachrichtigungen für räumliche Audioclients bereitstellt, um auf Änderungen im Zustand eines ISpatialAudioObjectRenderStream 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.
Options
Ein Mitglied der SPATIAL_AUDIO_STREAM_OPTIONS Emumeration, wobei Optionen für den aktivierten Audiostream angegeben werden.
Hinweise
Das folgende Beispiel zeigt, wie Sie einen Metadatenstream mit Streamoptionen aktivieren.
void CreateSpatialAudioObjectRenderStreamForMetadata(
_In_ ISpatialAudioClient2* spatialAudioClient,
_In_ WAVEFORMATEX const* objectFormat,
AudioObjectType staticObjectTypeMask,
UINT32 minDynamicObjectCount,
UINT32 maxDynamicObjectCount,
AUDIO_STREAM_CATEGORY streamCategory,
_In_ HANDLE eventHandle,
REFGUID metadataFormatId,
UINT32 maxMetadataItemCount,
_In_opt_ PROPVARIANT const* metadataActivationParams,
_In_opt_ ISpatialAudioObjectRenderStreamNotify* notifyObject,
bool enableOffload,
_COM_Outptr_ ISpatialAudioObjectRenderStreamForMetadata** stream)
{
SpatialAudioObjectRenderStreamForMetadataActivationParams2 streamActivationParams =
{
objectFormat,
staticObjectTypeMask,
minDynamicObjectCount,
maxDynamicObjectCount,
streamCategory,
eventHandle,
metadataFormatId,
maxMetadataItemCount,
metadataActivationParams,
notifyObject,
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 | spatialaudiometadata.h |