Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Создание параметрического эквалайзера
Форум разработчиков электроники ELECTRONIX.ru > Дополнительные разделы - Additional sections > Предлагаю работу
fpganoob
Всем привет! Нужно сделать параметрический эквалайзер (8 каналов) где для каждого канала можно указать :
1. тип (lp, hp, shelf, bell)
2. частота
3. коэффициент усиления
4. ширина полосы для bell типа, и резонанс для lp, hp, shelf типов
на экран типа LT24 выводим сигнал до и сигнал после и положение точек наших параметров
пользователь нажимает на одну из 8 кнопок, выбранная кнопка подсвечивается, и +/- кнопками меняет настройки для выбранного канала, значения этих настроек выводим на экран тоже.
Получится девайс подобный такому - https://bassgorilla.com/wp-content/uploads/...EQ-settings.png

Работа с аудио сигналом должна быть на hi-end уровне, без шумов и тп. Задержка входа выхода должна быть экстремально маленькой, разница в 1-2 мс уже заметна на слух.
Сразу закладывать что потребуется карта для хранения присетов и возможность сохранять загружать присет
Требуется:
1. решить возможно ли это сделать
2. определится с железом
3. написать VHDL под всё это добро

Интересуют сроки и примерная стоимость работы
Благодарю!
bzx
Цитата(fpganoob @ Apr 12 2018, 10:18) *
Интересуют сроки и примерная стоимость работы
Благодарю!

Готовы войти в задачу и решить от 600kруб, сроки от 3мес.
Если для Вас это супер-супер дорого и долго, то даю бесплатный совет - не беритесь, потратите и время и деньги.
smart_pic
Соглашусь с bzx по срокам и стоимости.
Есть несколько вариантов решения задачи.
Но хотелось бы понять назначение устройства и взаимодействие пользователя с ним.
Если это встраиваемое решение (или внешнее устройство к микшерному пульту) расширяющее возможности обработки сигнала существующего оборудования - это одно. В этом случае экран и настройки должны быть у оператора перед глазами и важна скорость реакции. Интерфейс управления должен быть простой и иметь возможность почти в слепую , только используя чувствительность пальцев, менять настройки. В таком решении экран и он же орган управления привязан к разрабатываемому устройству.

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

Можно посмотреть в сторону ДСП процессоров ADAU с конфигурируемым трактом обработки при помощи их программы SigmaStudio в связке с микроконтроллером . Но в данном случае качество обработки сигнала ограничено возможностями имеющихся ДСП.

В приведенной ссылке, только вид экрана, можно сказать дизайн управления. А где само устройство? Вы его реально использовали? Что внутри этого девайса, что там стоит , какие микросхемы?


AlexandrY
Цитата(smart_pic @ Apr 13 2018, 07:20) *
Можно посмотреть в сторону ДСП процессоров ADAU с конфигурируемым трактом обработки при помощи их программы SigmaStudio в связке с микроконтроллером . Но в данном случае качество обработки сигнала ограничено возможностями имеющихся ДСП.

Интересная мысль.
Но не ADAU, а ADSP-2157x
Там есть все что нужно чтобы проект сделать месяца за два.
Аппаратные многоканальные FIR и IIR с 1024 float-point коэффициентами и одна из лучших RTOS в комплекте.
Можно сказать проект там уже готов, надо только сконфигурировать.
Никакого VHDL не понадобится, если конечно вся цель проекта не состоит в получении этого VHDL-а.
blackfin
Цитата(AlexandrY @ Apr 13 2018, 07:51) *
Аппаратные многоканальные FIR и IIR с 1024 float-point коэффициентами и одна из лучших RTOS в комплекте.

Не совсем понятно, откуда брать коэффициенты для этих FIR и IIR.
ТС, НЯМС, хочет задавать в реальном времени АЧХ эквалайзера.
Но для вычисления импульсной характеристики фильтра нужна ещё и ФЧХ эквалайзера.
Можно, конечно, считать эту фазу линейной в ПП фильтра, но тогда не понятно из каких соображений выбирать угол наклона этой ФЧХ.
Кроме того, импульсная характеристика фильтра зависит не только от АЧХ фильтра в полосе пропускания, но и от АЧХ фильтра в полосе заграждения, а про это ТС не сказал ни слова..
Сгенерить в MATLAB'е набор готовых фильтров тоже, КМК, не вариант, поскольку при слишком большом диапазоне параметров эквалайзера количество готовых пресетов будет огромным.

PS. В принципе, можно вычислить ФЧХ фильтра, если считать, что комплексный коэффициент передачи фильтра является аналитической функцией частоты. Но решать краевую задачу Гильберта в реальном времени несколько затруднительно, КМК..

wink.gif
AlexandrY
Цитата(blackfin @ Apr 13 2018, 08:09) *
"решать краевую задачу Гильберта в реальном времени несколько затруднительно"

Во первых не в реальном времени, а через GUI, во вторых не из соображений, а на слух.
По моему в теме все ясно. Экран только слишком маленький выбран.
bzx
Цитата(smart_pic @ Apr 13 2018, 07:20) *
Есть несколько вариантов решения задачи.


Все правильно. Только не надо забывать и упускать основной критерий в задании: задержка в тракте не более 1-2 мс.
blackfin
Цитата(bzx @ Apr 13 2018, 08:57) *
Все правильно. Только не надо забывать и упускать основной критерий в задании: задержка в тракте не более 1-2 мс.

Ну, это же сводится к тривиальному ограничению на длину ИХ КИХ фильтра эквалайзера.

Для частоты дискретизации fs = 192 кГц получаем, что кол-во tap'ов КИХ фильтра должно быть меньше чем: 2*fs*2мс = 2*192*2 = 768.
fpganoob
Мы тут с bzx пообсуждали и требования уточнились

1. это девайс который будет использоваться на отдельных дорожках, к примеру на каждой гитаре или микрофоне и тд. Похоже на вот это - https://www.thomann.de/gb/mxr_10_band_equal...+M108_408014_17

2. на картинке эквалайзер из Аблетона(программа)

3. задержки не должны быть, смещение на 1-2 мс будет критичным, то есть сам эквалайзре должен быть аналоговым а вот его управление цифровым

4. основаня фича это то что юзер меняет частоты/усиление. К примеру к нас есть 10 полос. Я кликаю на 4 полосу и указываю что она должна действовать на частоте 400Гц, с шириной такой-то с усилением таким-то. И так чтобы можно было настроить 10 полос.

В итоге решили что такой девайс будет огромным, а нужна коробочка))
blackfin
Цитата(fpganoob @ Apr 13 2018, 13:09) *
3. задержки не должны быть, смещение на 1-2 мс будет критичным, то есть сам эквалайзер должен быть аналоговым..

А как связана задержка в эквалайзере с тем, что "сам эквалайзер должен быть аналоговым" ?
fpganoob
Цитата(blackfin @ Apr 13 2018, 11:21) *
А как связана задержка в эквалайзере с тем, что "сам эквалайзер должен быть аналоговым" ?


аналог -> цифра -> аналог всегда будет задержка, или я не прав?
blackfin
Цитата(fpganoob @ Apr 13 2018, 13:29) *
аналог -> цифра -> аналог всегда будет задержка, или я не прав?

Задержка в цифре ничем не отличается от задержки в аналоге. Суммарная дополнительная задержка в преобразователях АЦП и ЦАП при частоте дискретизации 192 кГц не превышает 11 микросекунд.
fpganoob
То есть задержка между входящим и выходящим звуком в конкретно нашем гипотетическом девайсе будет ~11 микросекунд?
blackfin
Цитата(fpganoob @ Apr 13 2018, 13:41) *
То есть задержка между входящим и выходящим звуком в конкретно нашем гипотетическом девайсе будет ~11 микросекунд?

Если цифровой фильтр выкинуть, то да, так и будет. Но задержка в цифровом и, аналогично, в аналоговом фильтре с теми же АЧХ/ФЧХ, что и у цифрового, на два порядка превосходит суммарную задержку в АЦП и ЦАП.
fpganoob
Вот как выглядит девайс в софте - https://youtu.be/tRbRbXktxrc?t=24
Выбираем канал и настраиваем его: тип, частота, усиление, ширина

blackfin, и всё же, если взять девай описанный мной, с фильтрами, мы получим значимые задержки (>1мс) или нет?
blackfin
Цитата(fpganoob @ Apr 13 2018, 13:49) *
blackfin, и всё же, если взять девайс описанный мной, с фильтрами, мы получим значимые задержки (>1мс) или нет?

Нет особых сложностей спроектировать цифровой фильтр с групповой задержкой менее 2 мс. Проблема в том, что фильтр небольшого порядка имеет низкую добротность, плохое подавление вне полосы пропускания и широкую переходную полосу АЧХ. Но все, ессно, зависит от конкретных числовых значений амлитудно-частотной и фазо-частотной характеристик фильтра и точности, с которой нужно аппроксимировать эти функции.
_pv
Цитата(blackfin @ Apr 13 2018, 17:02) *
Проблема в том, что фильтр небольшого порядка имеет низкую добротность, плохое подавление вне полосы пропускания и широкую переходную полосу АЧХ.


если просто посмотреть на картинку как-то не видно там особо злых требований к фильтрам.
пример реализации: http://www.collinsaudio.com/Prosound_Works...0decramping.pdf
=L.A.=
Цитата(fpganoob @ Apr 12 2018, 10:18) *
Работа с аудио сигналом должна быть на hi-end уровне, без шумов и тп.

*
"В отличие от Hi-Fi, в номенклатуре современной радиоэлектроники для понятия «High End» отсутствуют регламентирующие стандарты, ГОСТы или другие характеристики, способные квалифицировать High End тем или иным образом."
fpganoob
Выяснил, что уже есть решение моей задачи (точная эквализация каналов) - это диджитал микшеры типа mackie dl 1608, так что задачу можно снимать sm.gif
Всем спасибо за дискуссию!
smart_pic
Цифровая звуковая платформа BIAMP также позволяет это делать.
Только немного повозиться с настройками тракта в прилагаемом ПО.
И экран не встроенный, а внешний РС.
Rst7
QUOTE (fpganoob @ Apr 14 2018, 13:45) *
Выяснил, что уже есть решение моей задачи (точная эквализация каналов) - это диджитал микшеры типа mackie dl 1608, так что задачу можно снимать sm.gif
Всем спасибо за дискуссию!


Я бы на Вашем месте поинтересовался характерными значениями латенси цифровых консолей wink.gif Но вообще мой Вам совет - не говорите никому, какая у Вас латенси в тракте, и никто из музыкантов ничего не заметит. Работает такой лайфхак где-то до 10-15мс (ну т.е. где-то до эквивалента дистанции 5 метров по воздуху).
fpganoob
Цитата(Rst7 @ Apr 14 2018, 19:04) *
Я бы на Вашем месте поинтересовался характерными значениями латенси цифровых консолей wink.gif Но вообще мой Вам совет - не говорите никому, какая у Вас латенси в тракте, и никто из музыкантов ничего не заметит. Работает такой лайфхак где-то до 10-15мс (ну т.е. где-то до эквивалента дистанции 5 метров по воздуху).


попробуйте в аблетоне создать две дорожки кик с тарелкой на каждой четверти. у партии тарелок сделать 1мс задержку - бит сразу начнет работать заметно иначе.
one_eight_seven
Цитата(fpganoob @ Apr 14 2018, 23:14) *
попробуйте в аблетоне создать две дорожки кик с тарелкой на каждой четверти. у партии тарелок сделать 1мс задержку - бит сразу начнет работать заметно иначе.

Попробуйте найти музыканта, который в метроном попадает с ошибкой менее 1мс. (особенно, учитывая, что на сцене он может отойти от ударной установки на несколько метров).
Rst7
QUOTE (fpganoob @ Apr 14 2018, 22:14) *
попробуйте в аблетоне создать две дорожки кик с тарелкой на каждой четверти. у партии тарелок сделать 1мс задержку - бит сразу начнет работать заметно иначе.


С одновременным ударом в тарелку и бочку? Или все таки тун-ца-тун-ца-тун-ца? Если второе, то готовы два таких трека отличить в двойном слепом тесте?

И что же делать в том случае, если при обычном съеме микрофонами барабанной установки микрофон бочки находится прямо у резонаторного отверстия бочки, а тарелки снимаются оверхэдами на некотором расстоянии? Причем, еще и разное расстояние у каждой тарелки до микрофона. А, напомню, 1 метр - это 3мс.

Нажмите для просмотра прикрепленного файла

Походу пацаны на Abbey Road и не знают, что "бит начинает работать заметно иначе" biggrin.gif biggrin.gif biggrin.gif biggrin.gif
one_eight_seven
Цитата
Причем, еще и разное расстояние у каждой тарелки до микрофона. А, напомню, 1 метр - это 3мс.

Неужели вы верите, что законы физики будут работать, если о них не знать, или хотя бы если просто не обращать на них внимание?
x736C
Цитата(Rst7 @ Apr 15 2018, 00:02) *
А, напомню, 1 метр - это 3мс.

Ах вот, для чего дирижеру палочка. Хотя в оркестре тоже все играют по барабану. Но не уверен.
fpganoob
x736C, в моём случае это электронная музыка. Есть драм машинка, для каждого ударного свой аудио выход, всё это синкается с синтезаторами и тд. Я хотел на каждую дорожку вешать такой девайс, для более точной эквализации. В таком сетапе сдвиг в 1 мс разных дорожек решает. Но вы правы если играет тольок бочка и тарелка то практически невозможно определить, но когда добавляется перкуссия то видно хорошо.
Записал вам два примера:
1. обычный
Нажмите для просмотра прикрепленного файла


2. снейр с задержкой 1мс
Нажмите для просмотра прикрепленного файла



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

В любом случае, цифровой микшер решает мою задачу на все 100%
Rst7
QUOTE
Я хотел на каждую дорожку вешать такой девайс, для более точной эквализации. В таком сетапе сдвиг в 1 мс разных дорожек решает.


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

И конечно Вам пойдет любой вариант - цифровой микшерный пульт либо многоканальная звуковая карта + DAW на компе.

Ну и конечно для тех, кто верит, что из-за небольшого изменения тембра малого в такой ситуации у него не получится хита, черти уже давно разогрели отдельный котел в аду biggrin.gif biggrin.gif biggrin.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.