Я пытаюсь смоделировать демпфирование руки на гитарной струне на уже записанном / сэмплированном открытом гитарном звуке. Я пытался использовать фильтр нижних частот и имел диапазон движущихся частот, но это не делало его похожим на затухающую струну, просто потерю высоких частот.
Может ли кто-нибудь помочь мне найти хороший материал по этому вопросу, который человек мог бы хотя бы немного понять?
Он будет реализован в C ++, и я искал и нашел почти все, что касается алгоритма сильной строки karplus, но это не то, чего я хочу … Я хочу, чтобы демпфирующая часть была реализована на образце уже записанной реальной проигрываемой строки.
Это, вероятно, не так просто, как вы думаете. Это не просто правильный фильтр, но и звук будет затухать быстрее. Это, вероятно, отличается для разных частот.
Если у вас есть гитара, вы можете измерить звуковой спектр с течением времени, когда вы ударите ее нормально, и один раз, пока вы ее демпфируете. Вы можете измерить разницу в исходном спектре, а также разницу в скорости затухания.
Вы можете применить эту информацию к звуку, который хотите изменить, но сначала вам нужно будет преобразовать сигнал в частотно-временное.
Но это может быть слишком сложно для того, что вы имели в виду. Более простой подход может состоять в том, чтобы сначала увеличить затухание, умножив сигнал на е ^ (w * t), с w в качестве скорости затухания. Вы можете разделить сигнал на сигналы нижних и верхних частот и применить разные скорости затухания, причем компонент с высокой частотой получает более быстрое затухание.
Других решений пока нет …