gpt4 book ai didi

c++ - VST2.4 SDK Instrument 一个音符结束另一个音符开始时的咔嗒声

转载 作者:行者123 更新时间:2023-11-28 07:23:50 24 4
gpt4 key购买 nike

我已经使用 C++ 开发我的 VST 乐器一段时间了,当一个音符在另一个音符开始的地方结束时,我遇到了一个响亮的咔哒声的问题。

实际上当音符结束时问题就在那里,但我添加了一个“淡出”算法来消除该部分。但是一旦另一个音符从另一个音符开始,我的淡出算法就没有空间了。

我一直在尝试扫描输出缓冲区以找到会在短时间内发生的陡峭响亮值,以通过使该部分静音来消除点击,如果它几乎在那里工作了一段时间但击中了端区。

带有音序器图像的文件已上传到此处,您可以在 Soundcloud 上的一个简短的 mp3 文件中听到咔嗒声 click sound on sound cloud

对这些事情了解更多的人可以分享一些关于这个主题的信息,我知道点击过滤器是如何工作的,但我不知道如何在像这样的 VST 乐器中实现它,显然不是。解决这个问题的好方法是什么?

最佳答案

如果不查看源头就很难诊断这些类型的问题,即使这样也没有解决 VST 质量问题的“ Elixir ”。不过,我可以给你一些建议:

  • 使用 wave 编辑器真实关闭查看退回的输出文件。我的意思是,下降到样本水平。 Ocenaudio就是这样一种免费软件编辑器,可以将波形显示为单个样本。将其与一些日志记录一起使用应该能够准确地告诉您点击是在何处生成的。结合 MrsWatson 等工具(免责声明:我写了 MrsWatson),您可以获得有关插件在任何特定 process() 回调期间正在执行的操作的非常准确的数据。
  • 您将无法“过滤”掉点击次数,这样做只会减少他们的出现,但仍然会导致总体上糟糕的声音。我建议尝试找出问题的核心原因。
  • 健全性检查:确保将所有 变量初始化为健全的默认值。很多时候,未初始化的值会导致单个样本具有错误的值,从而导致临时尖峰(因此可以听到咔哒声)。
  • 在最坏的情况下,您可以应用一些线性插值来“平滑”样本之间差异非常大的区域。但是,这只会减少令人讨厌的咔嗒声,但可能会以您乐器的整体音质较差为代价。

关于c++ - VST2.4 SDK Instrument 一个音符结束另一个音符开始时的咔嗒声,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19058094/

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