将已经采样的吉他弦更改为听起来有点被手阻尼的算法
Algorithm to change an already sampled guitarstring to sound like it was a bit damped by the hand
我正在尝试在已经录制/采样的开放式吉他弦声音上模拟手在吉他弦上的阻尼。我一直在尝试使用低通滤波器,并且有一个移动的频率范围,但这并没有让它听起来像一个阻尼弦,只是失去了更高的频率。
有人能帮我找到关于这个的好材料,人类至少可以掌握一点吗?它将在C++中实现,我一直在寻找并找到了有关 karplus 强字符串算法的所有内容,但这不是我想要的。我确实希望在已经录制的真实演奏弦的样本上实现阻尼部分。
这可能没有你想象的那么简单。它不仅是正确的过滤器,而且声音会衰减得更快。对于不同的频率,这可能有所不同。
如果您有吉他可供使用,则可以在正常敲击时测量随时间推移的声观,并在阻尼时测量一次。您可以测量初始光谱的差异以及衰减率的差异。
您可以将此信息应用于要更改的声音,但需要先将信号转换为频率与时间。
但对于您的想法来说,这可能太复杂了。更简单的方法是首先增加衰减,方法是将信号乘以 e^(w*t),其中 w 作为衰减率。您可以将信号拆分为低通信号和高通信号,并应用不同的衰减率,高频分量衰减更快。
相关文章:
- 为什么这个运算符<重载函数对 STL 算法不可见?
- 基于ELO的团队匹配算法
- C++选择排序算法中的逻辑错误
- std::vector的包装器,使数组的结构看起来像结构的数组
- 有没有办法将谓词中的元素偏移量传递给 std 算法?
- C++A*算法并不总是在路径中具有目标节点
- 排序算法c++
- 我可以将一个用clang c++11编译的对象与另一个用c++17编译的对象链接起来吗
- 构建可组合有向图(扫描仪生成器的汤普森构造算法)
- 算法问题:查找从堆栈中弹出的所有序列
- 下面是排序算法O(n)吗
- 看起来is_nothrow_constructible_v()在MSVC中被破坏了,我错了吗
- KMP算法和LPS表构造的运行时间
- 计算数组重复次数的组合的有效算法,加起来达到给定的总和
- 为什么MP3解码的输出听起来如此延迟?(使用FFMPEG mp3lame lib)
- 将已经采样的吉他弦更改为听起来有点被手阻尼的算法
- 使用FFTW进行实时脉冲响应卷积 - 结果听起来像IR是对称的
- 听起来没有在我的代码上播放
- 如何将基于泛型迭代器的算法与基于实现的算法结合起来?
- "vector" C++听起来很奇怪,因为我的母语不是英语吗?