AudioKit: шумоподавитель

Я пытаюсь реализовать простой шумоподавитель, если амплитуда превышает определенный порог, используя AudioKit.

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

Источник для AKAmplitudeTracker


person barnabus    schedule 01.12.2017    source источник


Ответы (1)


Если я понимаю ваш вопрос, вы не знаете, как установить вывод на ноль. Я продолжу и сначала напишу самый очевидный ответ, отправлю вывод через бустер,

...tracker stuff...
let booster = AKBooster(tracker, gain: 0)
AudioKit.output = booster

а потом везде где опрашиваешь трекер, ставь

if tracker.amplitude > threshold {
   booster.gain = 1
}

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

person Aurelius Prochazka    schedule 02.12.2017
comment
Привет @AureliusProchazka - спасибо за ответ. Вы правы, подумав об этом, я понял, что лаял не по тому дереву, чтобы делать то, что хотел, но спасибо - я думаю, что я не понял, что вам нужно опросить вне трекера, например, с временным интервалом. - person barnabus; 02.12.2017