|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Evgenij Masherov 2:5020/175.2 05 Nov 2001 11:20:02 To : Aleksey V Vaneev Subject : FFT -------------------------------------------------------------------------------- Fri Nov 02 2001 23:06, Aleksey V Vaneev wrote to All: AVV> Кто-нибудь занимался обработкой звуковых потоков? Вот я попробовал AVV> сделать простенький эквалайзер, но наткнулся на непонятки... В общем, AVV> есть процедуры прямого и обратного FFT. Если значения окна не изменять, AVV> то прогон дает исходный файл. Использую линейную интерполяцию окон с AVV> наложением 60-80%. Это еще один момент непонятный - такое ощущение, что AVV> такая интерполяция порождает какие-то дефектные гармоники. В общем, AVV> после FFT у меня имеется набор вещественных и мнимых компонент. Основной AVV> вопрос - как изменить оные, чтобы все было правильно? Hапример, мощность AVV> 1-й гармоники мне хочется уменьшить на 6 дб. Что нужно менять? Честно AVV> говоря, не очень четко я понимаю как это делается. Элементарный AVV> эксперимент с обнулением обеих компонент 1-й гармоники дает какой-то AVV> "металлический" призвук, тон которого меняется от процента наложения AVV> окон. Hе претендуя на единственное решение, скажу: Лично я добился хорошего результата следующим образом: Исходный сигнал разбивается на окна длины половинной, в сравнении с окном процедуры БПФ. Дополняется нулями. (Мнимая часть положена равной нулю, что неэкономно... Hо сильной экономии не требовалось) Делается БПФ, умножаются как действительные, так и мнимые компоненты на к-т усиления для данной частоты. Обратное БПФ. Первая половина сигнала складывается со вспомогательным вектором от прошлого шага (на первом=0) и дает выходной сигнал, вторая запоминается в этот вспомогательный вектор для следующего шага. Переходим к следующему окну. (Теория - Фурье позволяет эффективно считать свертку, но круговую, а для фильтрации нужна линейная - выражаем линейную через круговую модифицированной последовательности) С уважением AVV> Еще интересно как вычислять фазы гармоник после прямого FFT. AVV> e-mail: picoder@sbis.komi.ru Евгений Машеров АКА СанитарЖеня --- ifmail v.2.15 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3300f98f6886.html, оценка из 5, голосов 10
|