Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Алгоритмы > Нужны исходники БПФ (FFT) для обработки WAV |
Автор: wiseland 17.3.2006, 13:45 |
Народ, помогите плз!!! Мне нужны исходники FFT для обработки wav файла. Просто алгоритм (и исходники) FFT уменя есть, но я уже 3 дня не могу никак с его помощью обработать wav файл. Необходимо разложить PCM файл на частотные составляющие, потом обработать их и обратно преобразовать в wav файл. Подробная задача: есть файл mp3, есть плейер, который проигрывает этот файл, необходимо сделать изменение тона во время воспроизведения файла. Насколько я понимаю, чтобы сделать изменение тона звучания, необходимо манипулировать частотами (т.е. удалять высокие или низкие частоты в зависимости от понижения/повышения тона). Я думаю, что напрямую такие изменения нельзя сделать с mp3 файлом во время воспроизведения (А МОЖЕТ Я НЕ ПРАВ?!, ПОДСКАЖИТЕ ТОГДА КАК И ЕЩЕ ЛУЧШЕ ПОМОГИТЕ ИСХОДНИКАМИ), поэтому хочу перевести mp3 файл в wav и сделать необходимые преобразования. Повторюсь: надо это все сделать во время воспроизведения... Буду ооочень признателен за помощь. Исходники можно на мыло [email protected] Заранее благодарен! |
Автор: DRUID3 17.3.2006, 15:44 | ||
![]() ![]() ![]() ![]() ![]() P.S.: FFT крайне неэкономный алгоритм, работающий со всеми точками частотного преобразования (и экономичнее он только DFT работающего с таким же количеством точек, причем FFT в силу построения алгоритма не может быть для нескольких точек частотного интервала, и здесь гораздо экономичнее DFT. Мало того, частотное преобразование в фильтрации очевидно, и потому получило распространение во времена расцвета аналоговой обработки. Но почему программисты только дело коснется ЦОС, тянут это преобразование куда надо, и куда не надо? Эквалайзер, как набор фильтров с переменным коэффициентом передачи легко (много легче) реализуется во временной области... |
Автор: Romikgy 17.3.2006, 16:50 | ||
это смотря как смотреть вверх или вправо, я представляю себе шкалу ФФТ преобразования, и у меня справа более высокие частоты Для сдвига тона не подойдет сходите на dsp-book.narod.ru там много чего по преобразованиям |
Автор: DRUID3 17.3.2006, 17:34 | ||||
Да регулярно хожу, я сам занимаюсь ЦОС ![]()
Есть устоявшаяся терминология в физике, математике, музыке и ЦОС. И Право и лево там нет. Тем более, когда работают с комплексным спектром и представляют его на одном графике, уже такое обозначение не катит. Я не упрекаю, просто в шутке поправил... |
Автор: Romikgy 18.3.2006, 00:11 | ||
Это амплитудная модуляция?
почему? если брать от нуля, то вполне подходит, в понедельник можно будет это обсудить поплотнее ![]() |
Автор: DRUID3 18.3.2006, 00:40 | ||
Учиться, учиться и еще раз учиться (В.И. Ленин)... Пока никакого "обсуждения" не выйдет... ![]()
...тот же совет. ![]() |
Автор: Romikgy 18.3.2006, 20:37 |
Чему? |
Автор: DRUID3 18.3.2006, 21:52 |
ЦОСу ![]() |
Автор: Romikgy 18.3.2006, 22:05 |
Дык и так знаю, хоть не все , но коечто ![]() И в некоторых вопросах , могу даже поспорить |
Автор: DRUID3 19.3.2006, 20:29 |
Ах, где же мой максимализм молодости!!!??? Куда улетучился??? ![]() ![]() ![]() |
Автор: Romikgy 20.3.2006, 09:53 |
это к кому? в профилях посмотри ![]() |
Автор: asmworm 23.3.2006, 00:27 | ||
Хм ![]() в качестве хорошего примера могу посоветовать порыться в исходниках этой библиотеки. Она отлично справляется с декодировкой MP3 у меня на КПК и не используя при этом лишние преобразования DFT ![]() http://www.underbit.com/products/mad/ |
Автор: wiseland 23.3.2006, 02:27 | ||||
Я не встречал эквалайзеров, которые работали бы во временной области. Если можно, то поподробнее плз.
В исходниках я обязательно пороюсь, сенкс за ссылку. И еще... может кто встречал готовую реализацию эквалайзеров, которую можно было бы заюзать. Буду учень благодарен. |
Автор: Romikgy 23.3.2006, 09:31 | ||
КИХ и БИХ фильтры, только параметры их считать сложно В какой области частотной или временной |
Автор: DRUID3 23.3.2006, 10:27 |
![]() это к кому? в профилях посмотри ![]() Посмотрел, с прошедшим! Я тоже "рыбы" ![]() ![]() ![]() SSB (Single Side Band) типо одна боковая полоса. По своей сути перенос физического спектра сигналов на более высокочастотный участок, при этом занимаемый частотный интервал (полоса) сохраняется. Формируется такая радость с помощью двух квадратурных генераторов (синус косинус) и преобразователя Гильберта (широкополосного фазовращателя, программно представляющего собой фильтр с хитроподобранными коэффициентами) который формирует широкополосные квадратурные каналы I и Q. Причем именно по этой схеме его можно реализовать аналоговым методом. Во времена грозных броненосцев эта модуляция (такое уж название закрепилось из радиотехники) и вправду формировалась из АМ, а если точнее и БАМ (модулятор, соответственно, балансный), так как прямоугольности АЧХ кварцевых фильтров было недостаточно, для полного подавления несущей (идеальная SSB). } ![]() To: wiseland Поверьте эквалайзеры восновном во временной области и работают. Берете любой учебник по ЦОС, раздел фильтрация и изучаете. Но как видите (коллеги по цеху подсказывают) в MPEG это может и не понадобиться, поэтому может видоизменим вопрос? Есть ли в сети учебники, хорошие статьи по МПЕГу на русском (или украинском ![]() |
Автор: Romikgy 23.3.2006, 11:09 | ||
Гуд ... проехали ![]() Пространная фраза , особенно об атомах так и сокращалась ОБП не всегда были и разностные схемы Имхо мпег здесь не причем, в названии темы сказано об вав! и про исходник БПФ! Что именно интересует реализация или что? |
Автор: DRUID3 23.3.2006, 12:53 |
To: Romikgy 1) хоть что-то ![]() 2) это перефразировка классика диалектического материализма... 3) неужто радиотех? 4) что Вы говорите, и от чего же были разности, поведайте почтенной публике ![]() ![]() ![]() 5) но ведь коллективный разум возобладал над тьмой предрассудкоФФ и автор топика изменил свое мнение ![]() P.S.:Romikgy Вы неисправимы - факт ![]() |
Автор: Romikgy 23.3.2006, 13:20 | ||
в смысле что? эт к чему? в смысле образования???? тогда я связист ![]()
был метод в оборудовании связи формировать ОБП фазоразностным методом где? мейьи йес мейби нот ![]() Под неопровержимыми фактами я даже очень исправим ![]() |
Автор: maxim1000 23.3.2006, 13:52 |
Модератор: а давайте обсуждение друг друга будем проводить где-нибудь еще, а то это как-то с алгоритмами не вяжется ![]() |
Автор: DRUID3 23.3.2006, 19:57 |
To:maxim1000 Полностью согласен, потому оставлю только обсуждение метода формирования SSB (народу прогадиЦЦа ![]() To:Romikgy 1)хоть в чем-то убедил... 2) первоначальная фраза была очень к месту, читайте как мантру много-много раз подряд и в один прекрасный момент к вам снизойдет просветление... 3) инсвязи?...гут 4) Так, Romikgy, Вы поддаете сомнению мои знания в той области что есть продуктом моей деятельности. Причем необоснованно, что-то там слышав на лекциях. Есть всего 4-е аналоговых метода формирования SSB: фильтровый, фазоразностный (это тот что я Вам и описАл!!!), фазофильтровый (типо ПЧ = полоса сигнала/2) и синтетический! Два последних имели крайне редкое применение. И все оно вырождаются в один, фазоразностный(!!!), при программном формировании!!! Все это станет понятно, если над этим покурить, и разобраться что есть комплексный спектр сигнала, и что с ним можно делать. А не заявлять, мол, ЦОС я знаю, т.к. бываю на dsp-book.narod.ru. На данный момент ЦОС уже так велик и многогранен, что его весь не может знать никто, это труд огромного коллектива математиков, связистов, программистов и т.д. Но связист методы формирования SSB знать обязан. 5) а вот где: Дата 23.3.2006, 02:27 ![]() |
Автор: asmworm 23.3.2006, 22:17 | ||
не видел в сети стандартов C++,C,MPEG на русском, а уж тем более на украинском ![]() вот на английском можно чтото нарыть полезное http://www.mpeg.org/MPEG/mp3.html#resources |
Автор: wiseland 24.3.2006, 01:22 | ||
Честно говоря, мне нужен эквалайзер, который изменял бы тон моего mp3 файла. А будет этот фильтр работать в частотной или временной области, мне все равно. Лишь бы работал ![]() |
Автор: Romikgy 24.3.2006, 13:06 |
Дабы не остатся голословным ! Да простят меня модеры, это последний пост в этой теме (мой) . Кого? Да уже и не важно. нет в телекоммуникации (связи телефонной, и др.) ничего я не поддавал ! Об этом не мне судить... Вы описали метод, для обработки сигнала в цифровой текнике!, я же расказал в общем и для цифровой и для аналоговой Сейчас да, но раньше пользовались и весьма удачно первое я ничего не заявлял , и второе , я просто посоветовал хороший (по моему мнению) сайт! дык это относится и к Вам... И связист (по крайней мере Я) это знаю!!!! Если сам декодируешь мр3 то после дешифровки/рассжатия (может с терминами и ошибся) каждого отсчета частоты, умножай на коэф. эквалайзера, если ты уже приобразовал файл а вав, тогда, создай КИХ фильтр на основе положения ползунков/значений эквалайзера, и тогда можно делать в онлайне (ну почти в нем) |
Автор: mrgloom 16.8.2012, 09:50 |
может кто то пояснит картинку![]() 1. почему на левой картинке отклонение в 2 стороны? (можно предположить что симметрично одно и то же на 2 канала) 2. какая характеристика на левой картинке по Y? 3.правую картинку можно трактовать как гистограмму? 4. как поставить в соответствие левую и правую картинки если на правой нет времени? |
Автор: ivan219 16.8.2012, 11:18 | ||
1) Нет это один канал в котором имеются гармонические составляющие а они в свою очередь имеют колебания от -1..0..1 посмотрите как выглядит синус. 2) По Y амплитуда. И является зависимостью амплитуды от времени. 3) Это спектр. По Y амплитуда. Является зависимостью амплитуды от частоты. 4) Ни как левая у вас зависимость амплитуды от времени а правая амплитуда от частоты. Единственно что мы можем сказать так это то что на интервале времени представленном в левой картинке есть соответствующие наборы гармоник которые представлены на правой картинке. Что бы лучше это понять изучайте преобразование Фурье! |
Автор: Фантом 16.8.2012, 12:22 | ||
Не совсем. Там указаны децибелы в качестве единицы, так что это спектр мощности. |
Автор: mrgloom 16.8.2012, 15:31 | ||||||
не понял, вот допустим у нас есть сигнал у него есть какая то амплитуда, как амплитуда может быть отрицательной?(нет ну вообще математически наверное может, но тут интересует больше ближе к физическому миру)
частоты чего? появления определенной амплитуды на левой картинке?
что в данном случае является гармоникой? еще вопросы, только теперь про картинки. что если я возьму картинку вырежу из неё часть помещу эту часть в (0,0) остальное дополню нулями и потом сравню фурье преобразование от изначальной картинки и полученной? вмысле какая в них будет наглядная зависимость? насчет поворота оригинал повернул на 34 градуса ![]() оригинал ![]() повернул на -34 градуса ![]() предполагаю, что угол не равен из-за того, что повернутый прямоугольник смещен относительно центра изображения. http://www.cse.iitd.ac.in/~parag/projects/DIP/asign1/transrotfft.shtml а по теории должен быть равен. |
Автор: Pavia 17.8.2012, 06:30 |
фантом скорее всего ошибся это не спектор мощности, а спектор напряжения. 1. Амплитуда колебания может быть отрицательной. Смотри определение термина "Колебание". По поводу прямоугольника. У тебя он криво повёрнут. |