У меня есть программа генерации звука, которая в настоящее время имеет нумерованный тип, заполненный смолами, начиная с A0, шаг 27,5 Гц. Каждый раз, когда я петлю, бросаю хроматическую шкалу всех включенных смол, до G # 5, звук щелкает между сдвигами, независимо от того, в какое время длится шаг. Код, который я использую в качестве модели, - https://stackoverflow.com/a/2065693/1777648, и массив байтов звуковой волны генерируется аналогичным образом, но я не знаю, как исправить щелчок. Я чувствую, что это может быть потому, что конец одной волны шага не соединяется с началом следующего.Щелчок кликов на звуковых генераторах при изменении высоты тона
1
A
ответ
3
Ваше предположение верно. если вы не хотите кликов, вы должны убедиться, что синусоидальная волна была сгенерирована так, что в массив байтов записываются только полные периоды. иначе вы разрежете волну, которая приведет к щелчкам.
для реализации: у вас может быть переменная «nextPitch», которая станет текущим шагом, как только будет записан полный период.