如何处理旧版过滤器“Wav Dest”的 NIL 响应?在Delphi 6 DSPACK程序中?

发布于 2024-12-02 03:03:01 字数 432 浏览 2 评论 0原文

我正在尝试使用 DSPACK 创建一个 Delphi 6 程序,该程序记录来自 PC 输入设备(Windows XP)的音频,然后将捕获的音频写入 MS 格式的 WAV 文件。我遇到的问题是,当我尝试获取名为“WAV Dest”的遗留过滤器时,我得到了 NIL:

CapEnum.SelectGUIDCategory(CLSID_LegacyAmFilterCategory); 
filWaveDest.BaseFilter.Moniker := CapEnum.GetMoniker(CapEnum.FilterIndexOfFriendlyName('WAV Dest')); 

filWaveDest.BaseFilter.Moniker 在这些调用之后包含 NIL。由于尝试写入使用 filWaveDest 捕获的 WAV 数据的后续代码明显失败,我该如何纠正这个问题?

I am trying to create a Delphi 6 program with DSPACK that records audio from the PC input devices (Windows XP) and then writes the captured audio to a MS format WAV file. The problem I am having is that I am getting NIL back when I try to get the legacy filter named 'WAV Dest':

CapEnum.SelectGUIDCategory(CLSID_LegacyAmFilterCategory); 
filWaveDest.BaseFilter.Moniker := CapEnum.GetMoniker(CapEnum.FilterIndexOfFriendlyName('WAV Dest')); 

filWaveDest.BaseFilter.Moniker contains NIL after these calls. How can I correct this since obviously subsequent code that attempts to write the WAV data captured using filWaveDest fails?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦里人 2024-12-09 03:03:01

Wav Dest 不是标准的 DirectShow 过滤器。它是 SDK 中的一个示例过滤器。构建该对象或下载其他人构建的 DLL 的副本。

Wav Dest is not a standard DirectShow filter. It is an example filter in the SDK. Either build the object or download a copy of the DLL someone else has built.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文