Udostępnij przez


Przykład MFT_AudioDelay

Pokazuje, jak zaimplementować efekt dźwiękowy jako transformację programu Media Foundation (MFT). MFT dla opóźnienia dźwięku przyjmuje dźwięk PCM jako dane wejściowe, stosuje efekt echa, i wyprowadza zmodyfikowane dane audio.

Pokazano interfejsy API

W tym przykładzie przedstawiono następujące interfejsy programu Microsoft Media Foundation:

Użycie

Przykład MFT_AudioDelay tworzy bibliotekę DLL, która jest serwerem COM dla MFT. Przed rozpoczęciem korzystania z MFT należy zarejestrować bibliotekę DLL. Za pomocą narzędzia TopoEdit można utworzyć topologię obejmującą opóźnienie dźwięku MFT. Aby uzyskać więcej informacji na temat obiektu TopoEdit, zobacz TopoEdit. Możesz również zmodyfikować przykład PlaybackFX do korzystania z MFT. Należy zmodyfikować funkcję AddBranchToPartialTopology w Player.cpp. Zmień następujący wiersz z:

else if (majorType == MFMediaType_Audio)
{
    hr = CreateAudioBranch(pTopology, pSourceNode, GUID_NULL);
}

Do:

else if (majorType == MFMediaType_Audio)
{
    hr = CreateAudioBranch(pTopology, pSourceNode, CLSID_DelayMFT);
}

Wartość CLSID_DelayMFT jest zadeklarowana w pliku nagłówkowym AudioDelayUuids.h w folderze przykładowym MFT_AudioDelay.

Wymagania

Produkt Wersja
Windows SDK Windows 7

 

Pobieranie przykładu

Ten próbka jest dostępna w repozytorium GitHub klasycznych przykładów systemu Windows .

przykłady zestawu SDK Media Foundation

Media Foundation transformuje

Przykład MFT_Grayscale

pisanie niestandardowej funkcji MFT