Compartilhar via


Exemplo de MFT_AudioDelay

Mostra como implementar um efeito de áudio como uma MFT (Media Foundation Transform). O MFT de atraso de áudio aceita áudio PCM como entrada, aplica um efeito de atraso (eco) e gera os dados de áudio modificados.

APIs demonstradas

Este exemplo demonstra as seguintes interfaces do Microsoft Media Foundation:

Uso

O exemplo de MFT_AudioDelay cria uma DLL que é um servidor COM para o MFT. Antes de usar o MFT, você deve registrar a DLL. Você pode usar a ferramenta TopoEdit para criar uma topologia que inclui o MFT de atraso de áudio. Para obter mais informações sobre TopoEdit, consulte TopoEdit. Você também pode modificar o Exemplo de PlaybackFX para usar o MFT. Você precisará modificar a função AddBranchToPartialTopology em Player.cpp. Altere a seguinte linha de:

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

Para:

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

O valor CLSID_DelayMFT é declarado no arquivo de cabeçalho AudioDelayUuids.h na pasta de exemplo MFT_AudioDelay.

Requisitos

Produto Versão
SDK do Windows Windows 7

 

Baixando o exemplo

Este exemplo está disponível no repositório github de exemplos clássicos do Windows.

Exemplos de SDK do Media Foundation

Transformações do Media Foundation

Exemplo de MFT_Grayscale

Escrevendo um MFT personalizado