Freigeben über


ISpatialAudioObjectRenderStreamForMetadata::ActivateSpatialAudioObjectForMetadataItems-Methode (spatialaudiometadata.h)

Aktivieren Sie ein ISpatialAudioObjectForMetadataItems zum Rendern .

Syntax

HRESULT ActivateSpatialAudioObjectForMetadataItems(
  [in]  AudioObjectType                     type,
  [out] ISpatialAudioObjectForMetadataItems **audioObject
);

Parameter

[in] type

Der Typ des zu aktivierenden Audioobjekts. Für dynamische Audioobjekte muss dieser Wert AudioObjectType_Dynamic sein. Geben Sie für statische Audioobjekte einen der statischen Audiokanalwerte aus der Enumeration an. Wenn Sie AudioObjectType_None angeben, wird ein Audioobjekt erzeugt, das nicht raumräumt ist.

[out] audioObject

Empfängt einen Zeiger auf die aktivierte Schnittstelle.

Rückgabewert

Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Wenn ein Fehler auftritt, können mögliche Rückgabecodes die in der folgenden Tabelle gezeigten Werte umfassen, sind jedoch nicht darauf beschränkt.

Rückgabecode Beschreibung
SPTLAUDCLNT_E_NO_MORE_OBJECTS
Die maximale Anzahl gleichzeitiger räumlicher Audioobjekte wurde überschritten. Rufen Sie die Freigabe für nicht verwendete Audioobjekte auf, bevor Sie versuchen, zusätzliche Objekte zu aktivieren.
SPTLAUDCLNT_E_STATIC_OBJECT_NOT_AVAILABLE
Der im type-Parameter angegebene statische Kanal war nicht im Feld StaticObjectTypeMask des SpatialAudioObjectRenderStreamForMetadataActivationParams enthalten, das an ISpatialAudioClient::ActivateSpatialAudioStream übergeben wurde.
SPTLAUDCLNT_E_OBJECT_ALREADY_ACTIVE
Für den statischen Kanal, der im type-Parameter angegeben ist, wurde bereits ein räumliches Audioobjekt aktiviert.
E_POINTER
Der angegebene Zeiger ist ungültig.
E_INVALIDARG
Der im type-Parameter angegebene Wert gehört nicht zu den werten, die von der AudioObjectType-Enumeration definiert werden.
SPTLAUDCLNT_E_DESTROYED
Der dem räumlichen Audiostream zugeordnete ISpatialAudioClient wurde zerstört.
AUDCLNT_E_DEVICE_INVALIDATED
Das Audioendpunktgerät wurde getrennt, oder die Audiohardware oder die zugehörigen Hardwareressourcen wurden neu konfiguriert, deaktiviert, entfernt oder anderweitig für die Verwendung nicht verfügbar gemacht.
SPTLAUDCLNT_E_INTERNAL
Ein interner Fehler ist aufgetreten.
AUDCLNT_E_UNSUPPORTED_FORMAT
Die dem räumlichen Audiostream zugeordneten Medien verwenden ein nicht unterstütztes Format.

Hinweise

Ein dynamisches ISpatialAudioObjectForMetadataItems wurde aktiviert, indem der type-Parameter auf die ActivateSpatialAudioObjectForMetadataItems-Methode auf AudioObjectType_Dynamic festgelegt wurde. Der Client hat eine Grenze für die maximale Anzahl von dynamischen räumlichen Audioobjekten, die gleichzeitig aktiviert werden können. Nachdem der Grenzwert erreicht wurde, führt der Versuch, zusätzliche Audioobjekte zu aktivieren, dazu, dass diese Methode einen SPTLAUDCLNT_E_NO_MORE_OBJECTS-Fehler zurückgibt. Um dies zu vermeiden, rufen Sie Release für jede dynamische ISpatialAudioObjectForMetadataItems auf, nachdem sie nicht mehr verwendet wird, um die Ressource freizugeben, sodass sie neu zugeordnet werden kann. Weitere Informationen zur Verwaltung der Lebensdauer räumlicher Audioobjekte finden Sie unter ISpatialAudioObjectBase::IsActive und ISpatialAudioObjectBase::SetEndOfStream .

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile spatialaudiometadata.h

Weitere Informationen

ISpatialAudioObjectForMetadataItems