Эквалайзер в реальном времени для всего звука на компьютере
-
26-09-2019 - |
Вопрос
Можно ли запечатлеть весь звук с компьютера и пройти через эквалайзер перед достижением динамиков?
Как вы можете запрограммировать диапазон Band Pass Filter на нем?
Редактировать: Я пытаюсь получить это в Windows (с Python? Heh), но если есть общий, кроссплатформенный подход, который был бы отличным.
Решение
Вы можете реализовать эквалайзер либо с использованием дискретных полосовых фильтров, либо вы можете сделать это в частотной области (FFT -> CRUSELIZE -> IFFT). Для полосных фильтров вы можете объединить нижний проход и фильтр Highpass, либо можно использовать один из различных общих конструкций, таких как затухающий резонатор.
Как вы на самом деле реализуете вышеизложенное, будут зависеть от какой ОС, языка программирования и т. Д., Вы используете.
Другие советы
На платформе GNU / Linux с ядром с поддержкой предварительного выпуска в реальном времени у вас есть комплект Audio подключения JACK. Проще говоря, Jack позволяет подключать Audio программы Audio Connected Audio Audio, что вы можете захватить весь звук с вашего компьютера.
Затем вы бы передали этот захваченный звук в другую аудиопрограмму Jack Audio, которая проводит плагин вашего эквалайзера. Плагин эквалайзера, по меньшей мере, в Linux, будет либо плагином Ladspa, либо плагин преемника Ladspa стандарт LV2.
Вы можете запрограммировать диалоговый фильтр Band Pass, если у вас очень очень очень хорошая охвата от математики очень высокого уровня (ИМХО) и отличные знания о обработке цифровой сигнализации в целом. Если у вас нет этих навыков, я бы сильно не отговаривал вас от кодирования диалогового фильтра Band Pass, и просто использовать одно из множества свободно доступных реализаций.
смотрите также: