Автор Тема: Цифровое аудио своими руками (интерфейсы, эффекты, процы и подобное).  (Прочитано 15919 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tube-freak

  • Эксперт
  • *****
  • Сообщений: 1060
  • Репутация: +365/-2
  • yo yoda
Re: Аудио-интерфейс своими руками
« Ответ #15 : Марта 11, 2021, 15:04:21 »
По мне - проблема подключить кодек к микроконтроллеру - это не проблема. Покопаться по примерам, подсоединить 2 канала I2S (туда сюда звук) через dma, чтоб не грузить проц.
И канал I2C для управления. Что кстати в минимальном проекте не обязательно, можно найти кодек с HW-управлением, одна частота, один битрейт.

И развести плату кодека с нормальными Аудио входами/выходами будет проще, чем колхозить на мелкую готовую


Главное - иметь асинхронный туда-сюда ЮСБ с минимумом задержки.  На это обычные люди (не музыканты) обычно забивают. Поэтому это оч. редко где сделано в комьюнити-проектах.  Это - главная проблема. И как с этим в тинзи - не известно!

ХMOS  это может, спокойно. Просто обычно эти платки продаются для ЦАПодельцев, и им АDC не нужны. Если найти XMOS project, но програмируемый -> будет решение проблемы.



« Последнее редактирование: Марта 11, 2021, 15:08:01 от tube-freak »

Оффлайн Tander Автор темы

  • Ветеран форума
  • ******
  • Сообщений: 3731
  • Репутация: +475/-0
    • Efremoff
Re: Аудио-интерфейс своими руками
« Ответ #16 : Марта 11, 2021, 15:04:54 »
Tander, Странным путем пошел. Тут надо именно проверенное решение от чипа. Всякие шилды это самопальство с неизвестным результатом.

Не понимаю - чем плохо шилд? проект изначально разделен на 2 части - контроллер "транспорта" и кодек. В случае с STM32 или Teensy - транспорт обеспечивает МК. Проц у обоих платформ - одинаковый - ARM Cortex M7 (в случае STM32F7) либо у STM даже попроще будет (М4 и тп).
Ну а шилд - это просто плата с кодеком. Может быть разный -  очень простой типа  SGTL5000, или разные AK4558, упомянутый тобой же - CS4272, или вообще TDM-кодек мультиканальный CS42448 - у которого 6 балансных входов и 8 балансных выходов.

Просто он идет отдельной платой. Мне никто не мешает взять опен-сорс проект и плату "шилда" поправить под свои задачи - поставить туда нормальные разъемы XLR и прочее. И будет тоже самое с любой другой готовой платой транспорта - к ней нужно будет разработать шилд, на котором будет все, что мне нужно (или взять готовый и изменить его, если таковой найдется).

... и добавил:

По мне - проблема подключить кодек к микроконтроллеру - это не проблема. Покопаться по примерам, подсоединить 2 канала I2S (туда сюда звук) через dma, чтоб не грузить проц.
И канал I2C для управления. Что кстати в минимальном проекте не обязательно, можно найти кодек с HW-управлением, одна частота, один битрейт.

Главное - иметь асинхронный туда-сюда ЮСБ с минимумом задержки.  На это обычные люди (не музыканты) обычно забивают. Поэтому это оч. редко где сделано в комьюнити-проектах.  Это - главная проблема. И как с этим в тинзи - не известно!

ХMOS  это может, спокойно. Просто обычно эти платки продаются для ЦАПодельцев, и им АDC не нужны. Если найти XMOS project, но програмируемый -> будет решение проблемы.

Я не нашел ни готовой платы транспорта на XMOS с поддержкой ADC, ни проектов готовых. Три дня уже копаю интернет.
да, c Teensy - не известно как обстоят дела. Но цена платы с МК и базового кодека - настолько низкая - что можно просто взять и попробовать. (35 баксов в сумме). Если не проканает - ну мелкий арм-контроллер всегда в хозяйстве пригодится. )))

... и добавил:

Просто программирование ARM мне куда более понятно, чем писать прошивку под XMOS свою или еще хуже под чипы C-Media - Т.к. там с документацией плоховато, да и сообщества несравнимо меньше, чем ARM-овые.
« Последнее редактирование: Марта 11, 2021, 15:20:05 от Tander »

Оффлайн AZG

  • Живу на форуме
  • *******
  • Сообщений: 89933
  • Репутация: +9881/-1413
  • Санкт-Петербург
    • AZG CUSTOM
Re: Аудио-интерфейс своими руками
« Ответ #17 : Марта 11, 2021, 16:57:58 »
Tander, Я пишу про вариант с SA9123L. Это тоже по сути свисток. Но более продвинутый и АСИО есть.

Самопальство - там мало кто доходит до полноценного асинхронного USB и АСИО. В этом и проблема. Полуподелки я не люблю. Или нормально или никак. Это не Ардуина какая, будут глюки проклянешь тот день когда решился.

А готовый XMOS с туда-сюда я выше показал. Но тебе дорого...

Под С-Медиа есть готовые прошивки. Я особо не копал, но натыкался. Платы с нини готовые у китайцев есть за денежку палую. Остается только входной i2S реализовать.

Оффлайн Tander Автор темы

  • Ветеран форума
  • ******
  • Сообщений: 3731
  • Репутация: +475/-0
    • Efremoff
Re: Аудио-интерфейс своими руками
« Ответ #18 : Марта 11, 2021, 18:01:32 »
Tander, Я пишу про вариант с SA9123L. Это тоже по сути свисток. Но более продвинутый и АСИО есть.

Самопальство - там мало кто доходит до полноценного асинхронного USB и АСИО. В этом и проблема. Полуподелки я не люблю. Или нормально или никак. Это не Ардуина какая, будут глюки проклянешь тот день когда решился.

А готовый XMOS с туда-сюда я выше показал. Но тебе дорого...

Под С-Медиа есть готовые прошивки. Я особо не копал, но натыкался. Платы с нини готовые у китайцев есть за денежку палую. Остается только входной i2S реализовать.


Ну смотри - этот "свисток" на SA9123L стоит больше 60 баксов с доставкой. Готовый продукт представляет собой 2 платы, соединенные голд-пинами. (базовая плата + шилд). В качестве ADC вроде стоит отличный CS5341 (на фото не видно) в качестве DAC - ES9023 (на фото видно). В целом - очень неплохо, но - так по факту продает это один-единственный продавец, и мне не очень хочется отдавать 60 баксов за китайскую поделку, где нет ни отзывов, ни покупок, ни повторяемых продуктов. А делать самому - я не нашел в европе SA9123 в продаже.

Самопальство - так весь раздел крафта это самопальство.  :) Чем Teensy отличается от STM32? тем что чуть проще, при аналогичных возможностях в общем-то (проц то один и тот же). Почему будут глюки? ??? Даже если и будут - как я написал выше - арм-микроконтроллер всегда пригодится в хозяйстве, тем более за 20 баксов за готовую мелкую платку. Придумаю что с ней сделать. А вот насчет кодека к ней - в сообществах есть куча проектов разной степени готовости, с разными кодеками - от совсем бюджетных до вполне продвинутых. С документацией, платами, описаловом и тп. Выглядит привлекательно. Готовый проект в общем-то может вполне уместиться в бюджете в 50 баксов.

Готовый XMOS туда-сюда, без кодека и прочего в штатах стоит 95+доставка+налоги, а самое дешевое что я нашел в европе - стоит 139 евро + доставка (как раз разница в налоге при доставки со штатов) а это уже дороже, чем FocusRite Scarlett solo или Steinber UR12.  и совсем чуть-чуть не дотягивает до Scarlett 2i2. а дойдут кодек и прочее (30 баксов условно) - и будет как полноценная, новая в магазине - 2i2 и даже дороже чем Steinberg UR22, который у меня есть, и который предлагает 24/192. И вот смысла нет никакого, от слова совсем.

С-Media - да, возможно есть готовые прошивки. Я пока не натыкался. Платы готовые я видел тоже пока только на DAC. Eсть вариант купить просто сам проц - и сделать совсем все самому. По деньгам может и влезет бюджет, но вот потраченное время - будет скорее всего совсем не фонтан, потому как помощи просить будет неоткуда, и все пилить самому. А в итоге - я получу продукт на труднодоступном чипе, с звуком - по сравнению с проектом на ARM-Cortex M7 примерно таком же. И вот может стоит тогда время это потратить не на программирование C-Media, а на попытку написать запустить ASIO на Cortex? (как вспоминал Tube-Freak - в принципе это возможно на ARM)

И вот что выбрать?
- продукт без дальнейшего возможно развития или повторения (SA9123 и C-Media)?
- XMOS, который по цене будет в итоге сопоставим с хорошим аудио-интерфейсом, доступным в любом магазине местном?
- Или может Cortex-M7, у которого вроде нету нативного ASIO готового, но в общем-то люди делают разные аудио-поделки вполне успешно, с применением разнообразных кодеков?
- Или вобоще не парить никому мозг и купить готовый продукт типа M-audio Fast Track (50-60 баксов, есть ASIO) или похожий на нее  - Behringer UM2 (48 баксов, Asio4All), или M-audio m-track solo (50 баксов, не понятно есть ли ASIO) , или немного добавить и взять Steinberg UR12(б.у. от 80 баксов, а новые - $110-115) или любой другой из почти сотни интерфейсов готовых в цене до 100 евро? Разобрать и запихнуть целиком плату в корпус напольника.

« Последнее редактирование: Марта 11, 2021, 18:32:43 от Tander »

Оффлайн DGray

  • Эксперт
  • *****
  • Сообщений: 1576
  • Репутация: +306/-29
  • Зарегистрированный
    • http://
Re: Аудио-интерфейс своими руками
« Ответ #19 : Марта 11, 2021, 18:14:58 »
проблема всех usb-интерфейсов это задержка самой шины, нужен оптимизированный код и сам usb-чипсет под аудиозадачи. проще купить полноценный аудио интерфейс, только проверенное. сейчас из недорогих вроде как motu m2/m4 лидирует по задержкам

Оффлайн Tander Автор темы

  • Ветеран форума
  • ******
  • Сообщений: 3731
  • Репутация: +475/-0
    • Efremoff
Re: Аудио-интерфейс своими руками
« Ответ #20 : Марта 11, 2021, 18:17:44 »
motu m2 - это хорошая карта, но - 200 евров дорого для меня щас. )

... и добавил:

А задержки на UR22 - легко ставятся на уровне 3-4мс, что более чем достаточно. (~3мс летит звук от кабинета, если твое ухо находится на расстоянии 1м от него).

... и добавил:

Кинул клич по знакомым - принесут кучку разных USB-Audio свистков. Попробую по-подключать и посмотреть, какой будет меньше всех шуметь и лучше всех играть. Потом сравню с UR22 и посмотрим куда двигатся дальше.

... и добавил:

И смотрите, какую я классную штуку нашел на томмане - https://www.thomann.de/pl/swissonic_ua_2x2.htm
Тут тебе и ASIO 2.0, и 2х2 (правда выходы не балансные...но в такой цене грех жаловаться) и 24 бита/96кгц, и 102/108дБ динамические диапазоны, и вполне сносный выход под наушники... И цена - 69 баксов.
« Последнее редактирование: Марта 11, 2021, 18:44:11 от Tander »

Оффлайн DGray

  • Эксперт
  • *****
  • Сообщений: 1576
  • Репутация: +306/-29
  • Зарегистрированный
    • http://
Re: Аудио-интерфейс своими руками
« Ответ #21 : Марта 11, 2021, 18:55:10 »
а задержки, задержки какие? ))

Оффлайн Tander Автор темы

  • Ветеран форума
  • ******
  • Сообщений: 3731
  • Репутация: +475/-0
    • Efremoff
Re: Аудио-интерфейс своими руками
« Ответ #22 : Марта 11, 2021, 19:11:38 »
Дык ктож его знает? ))
Тут зависит и от компа и от карты. Как я писал выше - на 24/48 мой UR22 спокойно работает с буфером в 64-96 сэмпла, что дает 1,3-2мс задержки на входе и столько же на выходе. Так что тут вопрос - какую величину буфера можно минимально выставить для карты, без артефактов в звуке.
Ну и с увеличением частоты работы карты, например до 96кгц - задержка уменьшается вдвое по сравнению с 48кгц, т.е. можно выставить больший буфер.

Оффлайн DGray

  • Эксперт
  • *****
  • Сообщений: 1576
  • Репутация: +306/-29
  • Зарегистрированный
    • http://
Re: Аудио-интерфейс своими руками
« Ответ #23 : Марта 11, 2021, 19:31:28 »
нее, ты здесь пишешь про задержки кодеков, а я про задержку usb-интерфейса – прошивка+чипсет
я категорически не советую. накопи, возьми моту и будешь работать. все равно окупится

Оффлайн AZG

  • Живу на форуме
  • *******
  • Сообщений: 89933
  • Репутация: +9881/-1413
  • Санкт-Петербург
    • AZG CUSTOM
Re: Аудио-интерфейс своими руками
« Ответ #24 : Марта 11, 2021, 22:40:23 »
Tander, У Свиссоника что внутри за такте деньги то? СТРАННО!

буфер это не вся задержка. В сумме там еще пара миллисекунд от кодеков.

ну и я веду к тому, что да, проще купить готовое решение и не парить мозг. Я пока что тоже не нашул ничего подходящего кроме одного варианта, но там надо изготовителя уговаривать продать. надо интерфейс I2S 2х2 + СПДИФ 2х2 на асинхронный USB, поддержка более 24/192 не нужна. И стабильные АСИО-дрова. Плюс надо чтобы транспорт работал в Слейве. ну и ценник в пределах 100-ки. Вариант от МИДИДСП не катит из-за отсутствия Слейва, все остальное норм. Ну и есть наш доморощенный Лиск. Но там свои проблемы.

Чисто ЦАП-овых интерфейсов навалом, тут проблем нет. На любой вкус и кошелек.

Оффлайн tube-freak

  • Эксперт
  • *****
  • Сообщений: 1060
  • Репутация: +365/-2
  • yo yoda
Re: Аудио-интерфейс своими руками
« Ответ #25 : Марта 12, 2021, 00:10:57 »
Вот можно посмотреть:
https://www.amb.org/audio/zeta1/

Открытый код и схема, и даже есть асио драйвера.

Оффлайн AZG

  • Живу на форуме
  • *******
  • Сообщений: 89933
  • Репутация: +9881/-1413
  • Санкт-Петербург
    • AZG CUSTOM
Re: Аудио-интерфейс своими руками
« Ответ #26 : Марта 12, 2021, 00:15:18 »
tube-freak, опять односторонний ???

Оффлайн Tander Автор темы

  • Ветеран форума
  • ******
  • Сообщений: 3731
  • Репутация: +475/-0
    • Efremoff
Re: Аудио-интерфейс своими руками
« Ответ #27 : Марта 12, 2021, 11:28:50 »
Да, увы на плате и в прошивке снова все в одну сторону реализовано. Но вроде все открыто, есть достаточно живой форум и дискуссии. Может достаточно будет просто "дописать" необходимые компоненты к МК, без переделки обвязки МК. Поищу, сталкивался ли кто на форуме с такой задачей.

... и добавил:

DGray, не, покупать на моту совсем не вариант, при том что разница будет ну сколько? пару мс? не, имея лишних 200 евро я лучше какой-то прибор в студию куплю, который уж точно окупится за несколько месяцев, а не аудио-интерфейс, который с нынешним кол-вом концертов - окупится через год блин... в лучшем случае.
« Последнее редактирование: Марта 12, 2021, 11:30:48 от Tander »

Оффлайн DGray

  • Эксперт
  • *****
  • Сообщений: 1576
  • Репутация: +306/-29
  • Зарегистрированный
    • http://
Re: Аудио-интерфейс своими руками
« Ответ #28 : Марта 12, 2021, 11:35:27 »
там будет не пару мс. моту тянет нормально 4-5 мс общая задержка. в свиссонике хуже чем в фокусрайтах (читал отзыв чела), вот и считай, думаю общая задержка будет от 10мс

Оффлайн Tander Автор темы

  • Ветеран форума
  • ******
  • Сообщений: 3731
  • Репутация: +475/-0
    • Efremoff
Re: Аудио-интерфейс своими руками
« Ответ #29 : Марта 12, 2021, 11:35:50 »
Tander, У Свиссоника что внутри за такте деньги то? СТРАННО!

Воот. Можно купить и разобрать. )) По бюджету они вполне вписываются в транспорт на МК (STM32 или что-то подобное) + кодеки. )

... и добавил:

У меня 4,7мс общая задержка на UR22 (вчера попробовал в студии записать в другую карту, напрямую и через карту, чтобы проверить - 48кгц, 64 сэмпла) Так что гнаться за меньшим - не вижу никакого смысла. на UR22 можно поднимать частоту до 192кгц (но не пробовал, так что хз, нужно ли будет там увеличивать буфер или нет). Честно - даже если бы 10мс - это сколько? как играть в 3,5 метрах от кабинета? как-то переживу. ) Конечно - это не повод покупать свиссоник этот, в этом бюджете можно б.у. прибор вполне нормальный найти.
« Последнее редактирование: Марта 12, 2021, 11:42:57 от Tander »