VST2.4 SDK Звук щелчка инструмента, когда нота заканчивается и начинается другая

Я уже некоторое время работаю над своим инструментом VST в C ++, и у меня возникает проблема с громким щелчком, когда нота заканчивается, когда начинается другая.

На самом деле проблема в том, что и примечание заканчивается, но я добавил алгоритм «исчезновения», исключающий эту часть. Но как только другая нота начинается там, где заканчивается другая, нет места для моего алгоритма затухания.

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

Здесь загружен файл с изображением из секвенсора, чтобы вы могли услышать щелчок в коротком mp3-файле на Soundcloud. звук звука на облаке звука

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

0

Решение

Диагностировать подобные проблемы действительно сложно, не видя источника, и даже тогда нет «серебряной пули» для решения проблем с качеством с помощью VST. Тем не менее, я могу предложить вам несколько советов:

  • Используйте волновой редактор для просмотра отскочившего выходного файла реальный близко. Я имею в виду, вплоть до уровня образца. Ocenaudio является одним из таких бесплатных редакторов, которые могут отображать форму волны до одного образца. Использование этого вместе с некоторыми регистрациями должно быть в состоянии точно сказать вам, где генерируется клик. В сочетании с таким инструментом, как MrsWatson (Отказ от ответственности: я написал MrsWatson), вы можете получить очень точные данные о том, что плагин делает во время любого конкретного process() Перезвоните.
  • Вы не сможете «отфильтровывать» клики, так как это только уменьшит их присутствие, но все равно приведет к дрянному звуку. Я бы порекомендовал попытаться выяснить причину проблемы.
  • Проверка работоспособности: убедитесь, что вы инициализируете все переменные для нормальных значений по умолчанию. Часто неинициализированные значения могут привести к тому, что отдельная выборка будет иметь неправильное значение, что приведет к временному всплеску (таким образом, будет слышен как щелчок).
  • В худшем случае вы можете применить некоторую линейную интерполяцию для «сглаживания» областей, где у вас очень большие различия между выборками. Однако это только уменьшит неприятные щелчки, но может привести к снижению общего качества звучания вашего инструмента.
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]