gpt4 book ai didi

delphi - 如果 DirectShow 渲染器的输入引脚不支持 IAMBufferNegotiation,如何更改其缓冲区大小?

转载 作者:行者123 更新时间:2023-12-02 10:52:32 25 4
gpt4 key购买 nike

我有一个用 Delphi 6 编写的 DirectShow 应用程序。我想将渲染器的缓冲区大小从当前的 500 毫秒值减小到更小的值。问题是,它的输入引脚不支持 IAMBufferNegotiation,这很奇怪,因为渲染器是我的 VOIP 电话上的耳机,显然需要较小的缓冲区大小以避免通话期间出现令人不快的延迟。

我在图形编辑中尝试了环回测试,将 VOIP 电话的捕获过滤器(麦克风)连接到渲染器(耳机)。我知道缓冲区大小为 500 毫秒,因为这就是图形编辑显示的渲染器属性。然而,当我在 Skype 通话中使用 VOIP 电话时,延迟要短得多,如我预期的那样,约为 50-100 毫秒。

因此 Skype 知道如何更改渲染器的默认缓冲区大小。我怎样才能做到同样的技巧?

最佳答案

输出引脚通常负责设置分配器,并且IAMBufferNegotiation通常在输出引脚上可用。您只想减少捕获过滤器输出引脚处的缓冲区大小,并且它将生成小缓冲区,这些缓冲区将通过图形仍然是小缓冲区和小数据 block ,因此没有必要减少中间过滤器的缓冲区大小。

关于delphi - 如果 DirectShow 渲染器的输入引脚不支持 IAMBufferNegotiation,如何更改其缓冲区大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8365239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com