Биение и двухэтапное затухание звука пианино - PullRequest
0 голосов
/ 15 ноября 2011

Я работаю над математически смоделированным фортепианным синтезатором.Прямо сейчас я использую модальный подход, где звук формируется суммой экспоненциально затухающих синусоид (гармоник).

Прямо сейчас я могу вычислить частоты синусоид (конечно, с учетом негармоничности).Для начальных значений амплитуды я использую данные, полученные из реальных сэмплов фортепиано, поскольку сейчас это проще.Мне плевать на фазы, только струи.

Моя главная проблема - скорость распада.Для симуляции биения и двухступенчатого затухания я использую 2 или 3 показателя примерно одинаковой частоты (в зависимости от количества строк для конкретной ноты).

Для случая 3 струн теория предполагает, что один из показателейбудет затухать быстрее, а два будут распадаться примерно с одинаковой скоростью, но из-за небольшой разницы в частотах они будут вызывать биения.

Этот метод описан в литературе, но алгоритм получения фактических значений не приведен.

В настоящее время я использую простые формулы, которые я создал сам, и они не основаны на каких-либофизика вообще, но производит много звука после многих проб и ошибок.

Мой вопрос: есть ли метод для расчета этих скоростей затухания, основанный на более физическом подходе?

Ключевой момент- метод должен производить значения скоростей распада до того, как произойдет сам синтез, поэтому методы, основанные на построении системы с обратной связью, которые воспроизводят это поведение, не будут работать для меня.

1 Ответ

1 голос
/ 07 февраля 2013

Если вы синтезируете свои строковые партиалы в нескольких перекрывающихся режимах (с незначительной отстройкой) и начинаете свои партиалы с одной и той же фазы, вы, естественно, получите двухэтапное затухание - сначала громкое, так как ваши партиалы синхронизированы, а затем быстрое затухание, вызванное тем, что ваши частички вышли из фазы.

...