MFT_AudioDelay示例

演示如何将音频效果实现为媒体基础转换 (MFT) 。 音频延迟 MFT 接受 PCM 音频作为输入,应用延迟 (回声) 效果,并输出修改后的音频数据。

演示的 API

此示例演示以下 Microsoft Media Foundation 接口:

使用情况

MFT_AudioDelay示例生成一个 DLL,该 DLL 是 MFT 的 COM 服务器。 在使用 MFT 之前,必须注册 DLL。 可以使用 TopoEdit 工具生成包含音频延迟 MFT 的拓扑。 有关 TopoEdit 的详细信息,请参阅 TopoEdit。 还可以修改 PlaybackFX 示例 以使用 MFT。 需要在 Player.cpp 中修改 AddBranchToPartialTopology 函数。 将以下行从 中更改:

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

到:

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

值CLSID_DelayMFT在MFT_AudioDelay示例文件夹的头文件 AudioDelayUuids.h 中声明。

要求

产品 Version
Windows SDK Windows 7

 

下载示例

此示例在 Windows 经典示例 github 存储库中提供。

Media Foundation SDK 示例

Media Foundation 转换

MFT_Grayscale示例

编写自定义 MFT