Мне интересно, возможно ли что-то подобное (и относительно легко сделать), и если да, то как я могу это сделать?
Я хотел бы выполнить полосовую фильтрацию волнового файла, который я воспроизводлю. Что-то похожее на «Эквалайзер», который вы видите в большинстве Winamp-подобных приложений.
Моя идея, однако, состоит не в том, чтобы выровнять звук, а в том, чтобы использовать очень высокие отрицательные значения в дБ, чтобы почти убить полосу, которую я фильтрую.
Первый вопрос: дает ли DirectSound что-то, что позволяет мне это делать?
Если нет: как бы вы это реализовали?
Я знаю (хотя и не совсем понимаю), что вы можете преобразовать дискретизированный сигнал в распределение частот с помощью быстрого преобразования Фурье. Теперь я, очевидно, не могу вернуться от этого распределения к исходной форме волны после изменения значений амплитуды определенных частот :-)
Как я мог сделать что-то подобное?
Кроме того, насколько точным я могу сделать эти фильтры? (Если бы я хотел отфильтровать все частоты от 2250 Гц до 2275 Гц, какую бы ошибку имел фильтр? От чего зависела бы максимальная точность, которую я могу получить?)
Спасибо!