Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Разложение звука на частоты


Автор: Vano-K 20.10.2008, 17:33
Может кто-то встречал, или у кого-то есть что-то типа, разложения входящего звука(с Line-IN) на частоты, как это в винампе или медиаплеере, только не синусоиды, а именно разложение на частоты.

Знаю, что это делается через БПФ, только БПФ тоже бывет разное(БПФ комплексной, вещественной функции).


Буду всем признателен.

Автор: DRUID3 24.10.2008, 13:18
В "винампе" или "медиаПлеере" как раз на синусоиды и раскладывается. А вот частоты разные бывают. Есть частота прямоугольной функции, например...

 Далее по-теме. Вам нужно:

RealFFT(входит 1024 отсчета, например)
              ||
              \/
берем только первую половину спектра(I - 512, Q - 512 отсчетов)
              ||
              \/
спектр мощности - sqrt(I*I+Q*Q) для каждого частотного отсчета, I это Real а Q это  Imag частотная ячейка после FFT, соответственно (512 отсчетов мощности).
 смотрим и радуемся результату...

Но возможны и еще варианты.

2)Если в программе используется DCT то можно сразу из него, не прибегая к FFT.

3)А можно на основе полосовых фильтров - IIR или FIR каждый на свою частоту.

Автор: JusTalionis 2.11.2008, 17:23
Чел имел ввиду разложение в спектр гармоник, как я понял. Этим занимался http://forum.vingrad.ru/forum/topic-225969/unread-1.html. Vano-K, спишись с ним, кроме него едва ли кто тебе дело подскажет.

Автор: suvorr 2.11.2008, 21:13
Vano-K  Не очень понял что ты есть хочешь, но возьми у меня пргу посмотри   - www.suwor.narod.ru/AuMon.exe
Принимает звуки с микрофона и делает спектр анализ на полсотне резонаторов (ну естнно все можно варьировать -зависит от целей)
Ну конечно это не ПФ, а просто распознавание звуков на коленке. Однак работает. То есть смотря что тебе надо на сам деле?

Автор: DRUID3 2.11.2008, 22:09
Цитата(JusTalionis @  2.11.2008,  16:23 Найти цитируемый пост)
Чел имел ввиду разложение в спектр гармоник, как я понял

 smile , не просветите меня что это?

Автор: bars80080 3.11.2008, 12:35
Цитата(DRUID3 @  2.11.2008,  21:09 Найти цитируемый пост)
Чел имел ввиду разложение в спектр гармоник, как я понял


  , не просветите меня что это? 

а что месье, нет образования в сфере обработки электронных сигналов  smile 

блин, это так давно было, наверно даже и не вспомню...
фишка в том, что при обработке сигнала его можно разложить на состоявляющие по определённому принципу. в частности на гармоники - то есть ряд тональных сигналов различающихся кратными частотами и величиной амплитуды:
Imn*e^(w*t/m), ..., Im3*e^(w*t/3), Im2*e^(w*t/2), I1*e^(w*t), I2*e^(w*t*2), I3*e^(w*t*3), ..., In*e^(w*t*n)
после чего он довольно просто загоняется в фильтры и дальше поэтапу

наиболее удобно при генерации сигналов, имею смутное подозрение, что вся полифония на этом построена

Автор: DRUID3 6.11.2008, 16:40
Цитата(bars80080 @  3.11.2008,  11:35 Найти цитируемый пост)
а что месье, нет образования в сфере обработки электронных сигналов  smile 

месье ею зарабатывают  smile , и потому поиздеваЦЦо решили - потому как врАжденный пАдонаГ...

Цитата(bars80080 @  3.11.2008,  11:35 Найти цитируемый пост)

блин, это так давно было, наверно даже и не вспомню...

А Вы точно уверены, что вспоминаетеsmile  smile  smile 

Цитата(bars80080 @  3.11.2008,  11:35 Найти цитируемый пост)

фишка в том, что при обработке сигнала его можно разложить на состоявляющие по определённому принципу. в частности на гармоники - то есть ряд тональных сигналов различающихся кратными частотами и величиной амплитуды:
Imn*e^(w*t/m), ..., Im3*e^(w*t/3), Im2*e^(w*t/2), I1*e^(w*t), I2*e^(w*t*2), I3*e^(w*t*3), ..., In*e^(w*t*n)
после чего он довольно просто загоняется в фильтры и дальше поэтапу

Да, я знаю, что можно посторить ортонормированный базис из гамоник - т.е. синусоидальных функций для которых каждая следующая функция имеет частоту в 2-а раза больше предыдущей - и это не будет базис Фурье. Вот только ни в приведенной Вами формуле, ни в Винампе или Медиаплее этого нет и в помине... Не кажется ли Вам странным такое положение вещей?

Цитата(bars80080 @  3.11.2008,  11:35 Найти цитируемый пост)

наиболее удобно при генерации сигналов, имею смутное подозрение, что вся полифония на этом построена

 smile  ужас какой... смею Вас заверить - это не так!

Автор: bars80080 6.11.2008, 18:53
Цитата(DRUID3 @  6.11.2008,  15:40 Найти цитируемый пост)
ни в Винампе или Медиаплее этого нет и в помине... Не кажется ли Вам странным такое положение вещей?

smile
отличные системы для инжиниринга

Цитата(DRUID3 @  6.11.2008,  15:40 Найти цитируемый пост)
смею Вас заверить - это не так!
возможно


Цитата(DRUID3 @  6.11.2008,  15:40 Найти цитируемый пост)
а что месье, нет образования в сфере обработки электронных сигналов  smile 

месье ею зарабатывают  

тогда советую месье найти какую-нибудь книгу по "радиотехническим цепям и сигналам"

потому, как я точно вспоминаю, а не рыскаю где-то

Автор: maxim1000 6.11.2008, 22:23
давайте вернёмся к постам, в которых больше информации по теме, нежели диалога smile

Автор: DRUID3 13.11.2008, 18:07
2maxim1000
Я же ясно изложил свои советы выше...Потому, наверное, имею кой-какое право пофлеймить...

Цитата(bars80080 @  6.11.2008,  17:53 Найти цитируемый пост)
тогда советую месье найти какую-нибудь книгу по "радиотехническим цепям и сигналам"
потому, как я точно вспоминаю, а не рыскаю где-то 

Спасибо. Гоноровский и Сиберт - мои настольные книги. И за последние 2.5 года я "настрадал" материала ничуть не меньше чем на первый томик того же Сиберта. Потому "вспоминать" мне не требуется, я - знаю. Вы же "вспоминаете" не точно - предлагаете разложить в ряд гармонических(иными словами - "круглых" smile ) комплексных экспонент(это обычное FFT кое мной и советовалось выше) и тут же путаете его с ортонормированным базисом кратных частот - вот это и будет разложение по гармоникам, вспоминаете из радиотехники что такое коэффициент гармоник? И что такое гармоники при работе, например того же передатчика?. И вот я думаю к чему этот спор? smile  Набрать количество сообщений? smile 

Автор: maxim1000 14.11.2008, 00:01
Модератор: 
зачастую споры поддерживаются желанием ответить на все воросы/претензии/замечания в свой адрес

желание это стоит как-то ограничивать, иначе оно ведёт систему в разнос, и доля полезной информации среди "ответов" станосится всё меньше

почувствуйте разницу:

1. обсуждение разложения Фурье, альтернативных наборов частот базисных функций, выяснение того, что именно используется в WinAmp

2. советы отвечающим (а не автору темы) почитать книги (без указания названий), односложные ответы, несущие непонятно какую информацию, список прочитанных книг, отличия между "вспоминанием" и "знанием" и пр.

P.S.
на всякий случай уточню, что этот пост обращён к обоим участникам, а не к кому-то одному

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)