аналоговый фильтр

Все что касается фильтрации
Даянова
Сообщения: 3
Зарегистрирован: 23 ноя 2010, 18:34

аналоговый фильтр

Сообщение Даянова »

Помогите пожалуйста! Пишу теперь Вам здесь)
Необходимо обработать цифровой звук аналоговым фильтром. Выдается ошибка: Cannot propagate frame data from output port 1 of 'untit/From Multimedia File' to input port 1 of 'untit/Analog Filter Design' because this input port expects non-frame data; consider inserting an Unbuffer.
Изображение

Ivan Karamazov
Сообщения: 89
Зарегистрирован: 28 окт 2010, 22:31
Откуда: Москва

Re: аналоговый фильтр

Сообщение Ivan Karamazov »

Здравствуйте.
Я, конечно, не в курсах, что у Вас за прога такая, но -- из области общих знаний :) -- не нужно для эксперементов с сигналом вообще и со звуком в частности использовать MP3/WMA/OGG/Sony ATRAC с его RA-производными. И даже FLAC, хотя он и без потерь -- лишние прибамбасы, влекущие за собой фреймовую структуру == лишние трудности. Вообще, форматы с потерями полностью обесценят Ваш эксперимент!! (Если, конечно, Ваш "Analog Filter Design" -- не очередная попытка облагородить звучание MP3.) А в данном случае, кажется, еще наложилась проблема декодирования, судя по приведенному Вами сообщению.
В общем, что бы чего-то догадаться, нужно знать, что за прога. И, для начала, если она понимает Windows PCM WAV, RAW или что-то в этом роде -- подсунуть ей именно это, т.е. честный разжатый сигнал. (Ну да, если разжимаете из MP3 -- там... там *страшно*, в смысле спектра, но на любом *разжатом* сигнале никакая работоспособная (хоть как-то :) ) прога рушиться не имеет никакого права.)
Т.е. не факт, что я смогу дать более содержательный коммент, но, по-любому, нужна доп. информация. И, конечно, сообщение "consider inserting an Unbuffer" -- вероятно, краткая форма моего поста.
Добавлено: еще обратите внимание на стерео/моно и частоту дискретизации.
Последний раз редактировалось Ivan Karamazov 24 ноя 2010, 11:36, всего редактировалось 2 раза.
Если ваши решения вам нравятся -- это хорошие решения. И наоборот.

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 1116
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: аналоговый фильтр

Сообщение Бахурин Сергей »

1. с предыдущим постом согласен. Для начала ваш волшебный mp3 надо переконвертить в wav. И открывать вав, поскольку в нем уже лежат отсчеты.
2. Объясните зачем вам нужен аналоговый фильтр, какую задачу вы решаете. Поскольку еще раз повторю: в цифровой эвм нет аналоговых фильтров, все что рассчитывается - рассчитывается в цифре. И аналоговые фильтры в матлабе и т.д. так или иначе представляются в виде цифровых фильтров. Поэтому хочу понять почему вы настаиваете на аналоговом фильтре (заказчик хочет, или препод так сказал, или вы сами так решили?).
3. выложите ваш mp3 чтобы можно было с ним поработать.
4. Моделировать нужно именно в симулинке или можно скрипт написать в виде m-файла?

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

Даянова
Сообщения: 3
Зарегистрирован: 23 ноя 2010, 18:34

Re: аналоговый фильтр

Сообщение Даянова »

Вкратце мне дано такое задание:
Дано два звуковых файла.

Ссылка на первый -> Звуковой фаил в формате wav http://ifolder.ru/20455186

Ссылка на второй -> в формате au: http://ifolder.ru/20455264
в формате mp3: http://ifolder.ru/20455297

Необходимо их отфильтровать, чтобы убрать лишние шумы, и чтоб видеть, чем именно они отличаются.

Аналоговый фильтр выбран вот почему: планируется создание устройства и этот фильтр будет отдельной деталью. По крайней мере так планируется. Но что именно получится (и получится ли что-нибудь вообще :)) я не знаю.

Буду бесконечно признательна, если Вы мне поможете!

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 1116
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: аналоговый фильтр

Сообщение Бахурин Сергей »

Файлы не качаются у меня. Прикрепите их прямо к сообщению форума плиз.

Я так понял у вас будет некое устройство, которое будет фильтровать звук именно в аналоговом виде на выходе звуковой карты? Поэтому вам надо понять какие характеристики фильтра нужны? Если я правильно все понял, то надо сделать следующее:
1. Добиться правильного функционирования вашей обработки в цифре с использованием цифровых фильтров
2. Пересчитать потом эти цифровые фильтры в аналоговые и собственно реализовать уже аналоговые фильтры. Пересчет сделать совсем несложно, надо лишь правильно пересчитать частоты фильтра.

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

Ivan Karamazov
Сообщения: 89
Зарегистрирован: 28 окт 2010, 22:31
Откуда: Москва

Re: аналоговый фильтр

Сообщение Ivan Karamazov »

Скачал, посмотрел, ужаснулся.
Вот спектры фрагментов Ваших сигналов, где предположительно присутствует что-то полезное,т.е. сигнал+шум:
(spokoin_1.mp3 -- моно, 44,1 КГц, дек. в 32 бита, ср.кв. знач. -45,9 дБ - ЗЕЛЕНЫЙ;
e000d07.au моно, 32 бита float, без сжатия, 44,1 КГц, ср. кв. значение -15 дб - КРАСНЫЙ;
queenpiping.wav -- моно, 8 бит, 11,025 КГц, ср.кв. -34 дБ - СИНИЙ)
signals.png
signals.png (22.37 КБ) 7848 просмотров
Вот спектры участков, где, очевидно, ТОЛЬКО ШУМ:
noise.png
noise.png (21.8 КБ) 7848 просмотров
Очевидно (мне :) ):
1. Спектральные характеоистики как сигнала, так и шума похожи для mp3 и au, спектр сигнала wav слегка, а спектр шума -- *радикально* отличен от 2-х предыдущих.
2. Спектр сигнала лежит а полосе примерно 200-2500 Гц. Я состроил полосовой фильтр Баттерворда с такой полосой и принудительным заданием порядка 10, что есть скорее теоритически, чет практически реализуемый предел для аналогового фильтра. Субъективно звук не слишком улучшился.
3. Используя ДПФ-шумоподавитель, работающий по образцу усредненного спектра шума для всех случаев удалось *радикально* таковой подавить, но. Это онтнюдь не аналоговый фильтр! Более того, для каждого сигнала пришлось строить свой шумовой образец, т.е. несмотря на внешнюю схожесть шумовых спектров mp3 и au, для эффективного ДПФ-подавления каждому нужен свой образец. (Замечу, что выбор участка сигнала в качестве образца шума -- чисто "ручная" и даже "ушная" операция, и автоматизации не подлежит.)
Мой вывод -- ни аналоговым фильтром, ни комбинацией таковых "разборчивость" представленных сигналов улучшить нельзя, во всяком случае без точной априорной информации о спектре полезного сигнала, каковой, кажется, быть не может -- см. рисунки.
Если интересны образцы сигналов с подавленным шумом, могу выложить сюда, но только с разрешения Администратора и в указанном им формате.
Если ваши решения вам нравятся -- это хорошие решения. И наоборот.

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 1116
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: аналоговый фильтр

Сообщение Бахурин Сергей »

не возражаю. выкладывайте в любом формате.

Ivan Karamazov
Сообщения: 89
Зарегистрирован: 28 окт 2010, 22:31
Откуда: Москва

Re: аналоговый фильтр

Сообщение Ivan Karamazov »

"расширение .wav запрещено администратором"
"расширение .flac запрещено администратором"
"расширение .mp3 запрещено администратором"
"расширение .ogg запрещено администратором"
.....
"слиишком большой объем вложения.."
Так что, извините :D
Если ваши решения вам нравятся -- это хорошие решения. И наоборот.

Ivan Karamazov
Сообщения: 89
Зарегистрирован: 28 окт 2010, 22:31
Откуда: Москва

Re: аналоговый фильтр

Сообщение Ivan Karamazov »

оригинальный и "подавленный" MP3, сделано из e000d07.au, как наиболее зашумленного. (Я очень не хотел MP3, но в данном случае для качественной оценки сойдет.)
Вообще говоря, работая со звуком 13+ лет должен сказать, что ДПФ-алгоритм подавления шума по образцу -- в общем случае -- зло большое (я им не пользовался более 10 лет до сего дня). Но тут больно специальный сигнал, т.е. не музыка и не речь -- т.е. можно попробовать, вдруг понравится :) . Хотя, конечно, подвергся "артефактам" сигнал весьма.
"Скелет" алгоритма можно найти в инете, в каждой конкретной реализации он сильно сдобрен всякими мистическими приблудами, что есть knowhow, и найти нельзя, разумеется. Для моих задач (реставрация звука) он безусловно вреден (я рад, что достаточно быстро это понял), посему, никогда особенно не интересовался деталями реализации. Кстати, именно из-за FFT-noise-reduction я в свое время исключил ДПФ из своего репертуара.
Т.е. еще раз (мое мнение) -- коль скоро с/ш соизмерим с 1 -- надо либо искась "решения под сигнал", либо... эээ... уточнить задачу. И, конечно (мое мнение) -- никакими линейными фильтрами делу не поможешь.
Вложения
org-fftnr.tar.bz2
оригинальный и "подавленный" MP3, сделано из e000d07.au, как наиболее зашумленного.
(169.76 КБ) 635 скачиваний
Если ваши решения вам нравятся -- это хорошие решения. И наоборот.

Даянова
Сообщения: 3
Зарегистрирован: 23 ноя 2010, 18:34

Re: аналоговый фильтр

Сообщение Даянова »

Ivan Karamazov а как Вы сделали "подавленный" MP3 из e000d07.au?
Мне как раз это и нужно было сделать - отделить от шумов. Затем вычислить наивысшие частоты этого звука.
Хотелось бы посмотреть как именно это реализованно в Matlab. В simulink?
Кстати решили использовать не аналоговый фильтр, а цифровой :)
Вложения
queenpiping_urezan.rar
Единственное что получилось выложить на форум
(6.4 КБ) 588 скачиваний

Ответить