07.12.2017, 02:36 | #641 |
Старший Пользователь
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
|
Уже всё "пирог" можно сказать откушен) Больше половины сделано. %70 примерно. Софт можно улучшать бесконечно, самое главное чтоб не было проблем с железом.
Такой подход с конвертациями чтоб максимально разгрузить STM32, на него и так возложены большие задачи по обмену и обработке данных. Я здесь почитал ветку форума с самого начала, а ведь всё начиналось с какогото PT2323 селектора звука) и вот в итоге во что выливается вся идея. Записал демонстрационное видео |
07.12.2017, 13:23 | #642 |
Гуру
Регистрация: 19.09.2009
Возраст: 46
Город: Мелитополь
Регион: Украина
Сообщений: 2,022
|
Зачем тогда было ставить СТМ, если его использовать только для ногодрыга? И что там за такие задачи по обмену и обработке? Поставил бы на все АВР и не парился. Тот же абдурина...народ был бы счастлив )))
|
07.12.2017, 14:27 | #643 |
Старший Пользователь
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
|
Уже писал что на AVR мне не хватало для этого проекта периферии и памяти. с STM32 всё идеально, даже с запасом) Если нужно Arduino ни что не мешает воткнуть его в один из USB портов которых на плате 4шт (Но смысла в этом не большой, я для обмена данными между другими модулями типа arduino сделал на Wifi ESP8266 тотже arduino с wifi на борту)
Сделал замеры синусов на выходе цапа на разных частотах. 80Гц, 5кГц 10кГц 15кГц 20кГц 21кГц и 22кГц результат на фотках. Выше 20тыс начинаются искажения, скорее всего USB звуковуха PCM2706 в I2S не может послать больше 20 тыс. |
07.12.2017, 15:21 | #644 |
Старший Пользователь
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
|
Сделал замеры АЧХ на 6м канале, результат на форках. АЧХ очень ровное.
|
09.12.2017, 04:10 | #645 |
Старший Пользователь
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
|
Всем привет! Удалось заставить работать параметрический эквалайзер на Android. И не только работать а ещё и рисовать АЧХ на графике которое пойдёт на выход ЦАП. Месяц разбирались как рисовать график) даже была мысль бросить эту затею, но всёже упорство приносит плоды.
Количество точек эквализации добавляется кнопкой добавить фильтр (на данный момент максимум 15 точек), причем фильтры бывают разные, фото приложил. PS внешний вид тестовый. Данные эквалайзера на DSP проц оказалось нельзя слать напрямую!!! Нужно использовать специальный буфер SafeLoad, безопасная загрузка. Если слать данные эквалайзера напрямую (они будут работать) но можно оглохнуть или обосратся от исходящих из колонок искожений во время переходных процессов. Я чуть ноутбук не затопил крушкой чая когда это произошло первый раз, стон колонок на полной громкости во время переходного процесса . |
09.12.2017, 13:41 | #646 | |
Гуру
Регистрация: 19.09.2009
Возраст: 46
Город: Мелитополь
Регион: Украина
Сообщений: 2,022
|
Цитата:
А как рисуешь график АЧХ? Тоже интересно. |
|
10.12.2017, 18:18 | #647 | |
Старший Пользователь
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
|
Цитата:
График АЧХ вывожу при помощи библиотеки MPAndroidChart координаты точек рассчитываются исходя от коэффициентов типа фильтра |
|
13.12.2017, 01:18 | #648 |
Старший Пользователь
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
|
Ребята всем привет! Я здесь пока разбирался с кросоверами понял вообще как работает эта dsp. Оказывается все фильтры будь то эквалайзер или кросовер и т.п. все состоят из виртуальной токи (допустим EQ 1-я полоса) которая реально состоит из точек a0 a1 b0 b1 и b2 и у каждой этой реальной точки есть уникальный адрес. Самый прикол в том что, всё зависит от того какие данные лежат в реальных точках. Допустим если посчитать данные по формуле PEAK то эта точка будет эквалайзером, если посчитать по формуле HIPASS то будет кросовером режущим сверху, если по LOWPAS то кросовером режущим снизу. Если необходимо увеличить крутизеу среза то необходимо вставить подряд 2 витруальные точки и крутизна среза увеличится в двое (тем самым крутизна среза из 2 порядка превратиться в 4й порядок) если необходим 3й порядок то необходимо посчитать по формуле у которой тока 3 коэфициента a1 b0 и b1 тип формул 1st-order.
SigmaStudia меня ввела в заблуждение тем что там всё разбито отдельно на эквалайзеры кросоверы и т.п, вот я и думал что всё это разные вещи. Как же я ошибался. В общем мега крутая новость которая позволяет творить со звуком всё что угоднт, меняя лиш формулу не прошивая DSP. |
13.12.2017, 21:22 | #649 |
Старший Пользователь
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
|
Вот такой выходной блок получился.
На каждый из 12 каналов: 1) 10 полосный параметрический эквалайзер. 2) Кроссовер с возможность выбора типа фильтра (HIPASS, LOWPASS) и порядка среза до 9-го (6дб, 12дб, 18дб, 24дб, 30дб, 36дб, 42дб, 48дб и 54дб). 3) Буферы задержки до 30мс, или ~10 метров. В общем всё как у нормальных аудиопроцессоров. До выходных эквалйзеров ещё стоит 15 полосный центральный эквалайзер и по 15 полосному эквалайзеру по каждому входу (aux, spdif, bluetooth и usb sound). |
14.12.2017, 10:22 | #650 |
Старший Пользователь
Регистрация: 11.10.2015
Возраст: 45
Город: Йошкар-Ола
Регион: 12
Машина: Kia Sorento 2011
Сообщений: 182
|
Это все понятно (почти), а когда изделие можно будет пощупать? Уже давно руки чешуца )
|
Здесь присутствуют: 8 (пользователей: 0 , гостей: 8) | |
|
|