MF_TRANSFORM_ASYNC-Attribut

Gibt an, ob eine Media Foundation-Transformation (MFT) eine asynchrone Verarbeitung ausführt.

Datentyp

UINT32

Abrufen/Festlegen

Rufen Sie ZUM Abrufen dieses Attributs IMFAttributes::GetUINT32 auf.

Um dieses Attribut festzulegen, rufen Sie IMFAttributes::SetUINT32 auf.

Bemerkungen

Das Attribut ist ein boolescher Wert:

  • Wenn das Attribut ungleich null ist, führt MFT eine asynchrone Verarbeitung durch.
  • Wenn das Attribut 0 oder nicht festgelegt ist, ist das MFT synchron.

Rufen Sie zum Abrufen dieses Attributs zunächst IMFTransform::GetAttributes auf, um den Attributspeicher des MFT abzurufen. Wenn diese Methode erfolgreich ist, rufen Sie IMFAttributes::GetUINT32 auf, um den Attributwert abzurufen. Wenn eine der beiden Methoden fehlschlägt, ist die MFT synchron.

Bei asynchronen MFTs muss dieses Attribut auf einen Wert ungleich null festgelegt werden. Für synchrone MFTs ist dieses Attribut optional, muss jedoch auf 0 festgelegt werden, falls vorhanden.

Asynchrone MFTs sind nicht mit früheren Versionen von Media Foundation kompatibel. Um ein asynchrones MFT zu verwenden, muss der Client das attribut MF_TRANSFORM_ASYNC_UNLOCK für MFT festlegen. (Die Microsoft Media Foundation-Pipeline führt diesen Schritt automatisch aus.)

Beispiele

Der folgende Code testet, ob eine MFT asynchrone Verarbeitung ausführt.

BOOL IsTransformAsync(IMFTransform *pMFT)
{
    BOOL bAsync = FALSE;
    IMFAttributes *pAttributes = NULL;

    HRESULT hr = pMFT->GetAttributes(&pAttributes);
    if (SUCCEEDED(hr))
    {
        bAsync = MFGetAttributeUINT32(pAttributes, MF_TRANSFORM_ASYNC, FALSE);
        pAttributes->Release();
    }

    return (bAsync != FALSE);
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Header
Mftransform.h

Weitere Informationen

Alphabetische Liste der Media Foundation-Attribute

Asynchrone MFTs

Transformieren von Attributen

MF_TRANSFORM_ASYNC_UNLOCK