Транспорт на основі BeagleBone Black

Для тих, хто не лише слухає, а й робить апаратуру для прослуховування музики
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Транспорт на основі BeagleBone Black

#1

Непрочитане повідомлення wired »

на вегалаб мабуть не всі навідуються, продублюю тему тут, може буде комусь цікаво.
Вашій увазі пропонуєтсья плата-перехідник для підключення до одноплатного мінікомпьютера BeagleBone Black ЦАПів як по шині i2s так і по SPDIF.
на BeagleBone Black встановлюється дистрибутив звідси - http://bbb.ieero.com/ і в результаті отримаємо повноцінний мережевий медіаплейер заточений під відтворення аудіо контенту будь якого формату, в тому числі модного зараз DSD.
Доступ і керування відтворенням відбувається за допомогою WEB інтерфейсу YMPD - http://www.ympd.org/
Медіатека може бути розташована або на носії підключеному до самого BeagleBone Black, або можна підключити мережевий NAS.
плата BeagleBone Black з встановленим перехідником
BBB_i2s_SPDIF_2.jpg
короткий опис перехідника, російською, нижче.
Показати текст
В случае использования i2s шиньі кроме самого интерфейса вьіведеньі 3 сервисньіх сигнала:

SCALE J2, используется для переключения генераторов на ЦАП под разньіе сетки 44,7х или 48х
DSD J3, вьіводит сигнал наличия DSD потока даньіх
MUTE J4, сигнализирует о том, что BBB включен и готов к работе.


В связи с тем, что полярности сигналов с целью нормальной работьі внутренней логики переходника должньі жестко задаваться в конфигурации драйвера, введен переключатель S1 которьім можно инвертировать каждьій из єтих сигналов, которьій идет на внешние устройства, в зависимости от того как они могут использоваться в ЦАП. Например: в ЦАП сигнал '1' включает генератор сетки 44,1х, а '0' включает 48х, а с BBB єтот сигнал идет как '1' для 48х и '0' для 44,1х, в таком случае можно его инвертировать переключив движок S1.3
Сами сервисньіе сигнальі являют собой оптопарьі с открьітьім коллектором на вьіходе, и для нормальной работьі им требуется подтяжка резистором 5-10ком на шину питания ЦАП.
Сама шина i2s имеет 4 изолированньіх линии:

DATA, данньіе PCM на ЦАП, или 1-й канал DSD
LRck, или 2-й канал DSD
BCLK вьіход битклок
MCLK, вход мастерклок с ЦАП


Переключение LRCK или 2-й канал DSD производится ключем от сигнала с BBB на время воспроизведения DSD контента.
Мастерклок всегда вводится на переходник извне и от него тактируется аудиоподсистема BBB и соответсвенно должен бьіть настроен и драйвер.
Имеющиется генераторьі на борту переходника используются в служебньіх целях при воспроизведении на SPDIF. И включаются при отсутсвии питания внешней части изолятор развязки i2s шиньі.
В случае использования SPDIF ЦАП можно подключить или к RCA разьему или TOSLINK. Поскольку BBB в силу апаратньіх ограничений не может одновременно вьіводить и SPDIF и i2s, необходимо менять настройку драйвера. Єтот режим удобен при использовании уже имеющихся ЦАП со SPDIF входом, или при построении вьісококачественньіх ЦАП с буферизированньіми SPDIF приемниками как например JKill, Foxtrot или Carleston. На мой взгляд использование SPDIF самьій оптимальньій вариант, позволяет вьінести потенциальньій источник помех куда подальше, без потери качества звука.

Настройки в uEnv.txt для работьі переходника с i2s
Код:

##Disable usage of external Botic clocks
optargs=coherent_pool=1M snd_soc_botic.ext_masterclk=7 snd_soc_botic.dsd_format_switch=3 snd_soc_botic.serconfig=--MM snd_soc_botic.pinconfig=compat

для SPDIF
Код:

##Disable usage of external Botic clocks
optargs=coherent_pool=1M snd_soc_botic.ext_masterclk=7 snd_soc_botic.dsd_format_switch=3 snd_soc_botic.serconfig=-S-- snd_soc_botic.pinconfig=compat

различия вьіделил жирньім.
Править uEnv.txt можно прямо из виндьі, он виден как обьікновенньій файл в корневой директории флешки.
що як і куди підключать:
bbb_dsd_sif.gif
"was fällt, das soll man auch noch stossen!"
Аватар користувача
Saburov S.A.M.
ветеран
Пости в темі: 7
Повідомлень: 9581
З нами з: 24 листопада 2011, 15:33
Звідки: UA
Подякував: 9793 разів
Подякували: 8498 разів
Вік: 45
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#2

Непрочитане повідомлення Saburov S.A.M. »

а які формати і резолюшн підтримуються?
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#3

Непрочитане повідомлення wired »

Saburov S.A.M. писав:а які формати і резолюшн підтримуються?
тестив вавчики мрз флак, ну власне всі формати які підтримує MPD в тому числі натівно виводить DSD64, DSD128
PCM до 192/24
"was fällt, das soll man auch noch stossen!"
Аватар користувача
Макс Штирлиц
Admin
Пости в темі: 1
Повідомлень: 21947
З нами з: 26 листопада 2010, 14:36
Звідки: Днепр
Подякував: 23444 разів
Подякували: 13907 разів
Вік: 56

Re: Транспорт на основі BeagleBone Black

#4

Непрочитане повідомлення Макс Штирлиц »

А как выглядит законченный проект?
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#5

Непрочитане повідомлення wired »

Макс Штирлиц писав:А как выглядит законченный проект?
он не закончен пока.
а так в планах черная коробочка с 4-мя разьемами: 2RCA, сеть и ...сеть :)
собсно к тому, что есть надо только добавить корпус, БП и ЦАП.
Востаннє редагувалось 11 березня 2015, 16:12 користувачем wired, всього редагувалось 1 раз.
"was fällt, das soll man auch noch stossen!"
Аватар користувача
Saburov S.A.M.
ветеран
Пости в темі: 7
Повідомлень: 9581
З нами з: 24 листопада 2011, 15:33
Звідки: UA
Подякував: 9793 разів
Подякували: 8498 разів
Вік: 45
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#6

Непрочитане повідомлення Saburov S.A.M. »

тут більше кого потенц. зацікавить готове рішення, ніж дий-блокі.
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#7

Непрочитане повідомлення wired »

Saburov S.A.M. писав:тут більше кого потенц. зацікавить готове рішення, ніж дий-блокі.
та то понятно, но малолі...
мо кому цікаво буде.
розміщую ж розділі "своими руками".
"was fällt, das soll man auch noch stossen!"
Аватар користувача
Saburov S.A.M.
ветеран
Пости в темі: 7
Повідомлень: 9581
З нами з: 24 листопада 2011, 15:33
Звідки: UA
Подякував: 9793 разів
Подякували: 8498 разів
Вік: 45
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#8

Непрочитане повідомлення Saburov S.A.M. »

мені цікаво все цифрове, що потенціно приведе мене до кроссів/ділеїв у софті.
Але поки що на дууже дальню перспективу..
shtoz
Пости в темі: 2
Повідомлень: 35
З нами з: 16 березня 2015, 23:50
Звідки: Lemberg
Подякував: 37 разів
Подякували: 13 разів

Re: Транспорт на основі BeagleBone Black

#9

Непрочитане повідомлення shtoz »

Удачі вам в цьому проекті, медіаплеер що бере дані з НАС дуже зручна штука, на прикладі Ліна знаю
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#10

Непрочитане повідомлення wired »

shtoz писав:Удачі вам в цьому проекті, медіаплеер що бере дані з НАС дуже зручна штука, на прикладі Ліна знаю
дякую :)
"was fällt, das soll man auch noch stossen!"
shtoz
Пости в темі: 2
Повідомлень: 35
З нами з: 16 березня 2015, 23:50
Звідки: Lemberg
Подякував: 37 разів
Подякували: 13 разів

Re: Транспорт на основі BeagleBone Black

#11

Непрочитане повідомлення shtoz »

зверніть увагу ще на http://www.runeaudio.com/ , скоро появиться підтримка цього драйвера
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#12

Непрочитане повідомлення wired »

в курсі
"was fällt, das soll man auch noch stossen!"
Аватар користувача
moose
ветеран
Пости в темі: 2
Повідомлень: 10221
З нами з: 15 грудня 2010, 14:32
Подякував: 10026 разів
Подякували: 9932 разів
Вік: 53

Re: Транспорт на основі BeagleBone Black

#13

Непрочитане повідомлення moose »

Ото ше би якби WiMP якось прикрутити, можна було би пластінок викидати....
My friends are toys. I make them. It's a hobby.
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#14

Непрочитане повідомлення wired »

а шо це?
"was fällt, das soll man auch noch stossen!"
Аватар користувача
moose
ветеран
Пости в темі: 2
Повідомлень: 10221
З нами з: 15 грудня 2010, 14:32
Подякував: 10026 разів
Подякували: 9932 разів
Вік: 53

Re: Транспорт на основі BeagleBone Black

#15

Непрочитане повідомлення moose »

wired писав:а шо це?
Це як Spotify , тільки HIFi.

http://en.wikipedia.org/wiki/WiMP

http://magazine.wimp.no/2013/09/wimp-hi ... streaming/
My friends are toys. I make them. It's a hobby.
Аватар користувача
Djem
учасник
Пости в темі: 14
Повідомлень: 290
З нами з: 13 вересня 2014, 22:04
Звідки: Харьков
Подякував: 319 разів
Подякували: 456 разів
Вік: 61

Re: Транспорт на основі BeagleBone Black

#16

Непрочитане повідомлення Djem »

Збираю потроху. ПриЇхав корпус, компоную. С трансами затик, потрібен ще один маленький, або інший, на дві напруги по 9в. БЖ та стабілізатор на 5 в для ботика будє під його платою, там мєста завалісь. Погано, що інтерфєйси у БББ на різних сторонах плати, ЮСБ під флєшку я виведу "хвостом" на задню або передню панель, а ось доступ до СД та ХДМІ буде тільки зі знятою кришкою. Алє, вони потрібні тільки для перепрошивки та конфігурування- нє проблема, взагалі.
Ще міркую, як з живлєнням зробити.
DSC_0560.jpg

Планую, як на малюнку- головний рубільнік сзаду, на морді кнопка включєния БББ. Живлення на сам цап підрубаеться релюхою з ключем. Не знаю, чи потрібна затримка (у цапи е своя затримка після подачі живлення- на 10 сек повний мьют та отрубон аналогової частини, тіпа "на прогрев")
та звидкіля брати сігнал- з живлення переходніка або з отого J12?
Вкладення
DSC_0558.jpg
DSC_0559.jpg
не вступаю в суперечки з альтернативно обдарованими
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#17

Непрочитане повідомлення wired »

Djem писав:
та звидкіля брати сігнал- з живлення переходніка або з отого J12?
краще з J12, як я зрозумів той сигнал як раз для того, щоб вмикати периферію після увімкнення ВВВ.
але якщо у ЦАПи своя затримка то можна й живлення перехідника.
"was fällt, das soll man auch noch stossen!"
pascal
новенький
Пости в темі: 5
Повідомлень: 64
З нами з: 30 листопада 2011, 08:15
Звідки: Київ
Подякував: 13 разів
Подякували: 39 разів

Re: Транспорт на основі BeagleBone Black

#18

Непрочитане повідомлення pascal »

Анатолій, поясніть будьласка так відбуваэться зворотня синхронізація BBB від клоку?
яка роздільча здатність в мікросекундах в BBB?
написали ж вже драйвер синхроніхації ОС з зовнішнім джерелом часу.
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#19

Непрочитане повідомлення wired »

в процессорі BBB окрема підсистема аудіо вводу-виводу незалежна від клоків самого CPU відповідно її тактують від окремих генераторів, це її штатний режим.
Драйвер botic написаний вже давно, посилання на сторінку автора в першому повідомленні, все працює стабільно і без нарікань. Побітова точність перевірена мною особисто осцилографом на тестовому сигналі.
"was fällt, das soll man auch noch stossen!"
pascal
новенький
Пости в темі: 5
Повідомлень: 64
З нами з: 30 листопада 2011, 08:15
Звідки: Київ
Подякував: 13 разів
Подякували: 39 разів

Re: Транспорт на основі BeagleBone Black

#20

Непрочитане повідомлення pascal »

MPD як програма працює в операційній системі і тактується від неї.
потім вже відбувається буферизація на рівні підсистеми вводу-віводу на аудіо інтерфейс
тому компілюють MPD для роботи в реальному часі
і сама буферизація відбувається по прериванню ( або преривання частіші і буфери краще синхронізовані або прерівання рідші и буфери гірше сінхронізовані) З якою частотою проходять ці преривання? (скількі семплів в буфері) з яким клоком синхронізуються ці преривання?
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#21

Непрочитане повідомлення wired »

pascal писав: з яким клоком синхронізуються ці преривання?
Якщо за відсутності клоку з ЦАПу MPD висить, і після подачі клоку все їде далі, як думаєш що з чим синхронізується?

А загалом, я трохи не доганяю суті твоїх питань.
"was fällt, das soll man auch noch stossen!"
Аватар користувача
Djem
учасник
Пости в темі: 14
Повідомлень: 290
З нами з: 13 вересня 2014, 22:04
Звідки: Харьков
Подякував: 319 разів
Подякували: 456 разів
Вік: 61

Re: Транспорт на основі BeagleBone Black

#22

Непрочитане повідомлення Djem »

pascal писав: або преривання частіші і буфери краще синхронізовані або прерівання рідші и буфери гірше сінхронізовані
А с какого перепугу такое умозаключение?
Это я смотрю типа новая фишка пошла (джиттер обсуждать уже неинтересно) - винда хуже звучит потому, что в ней невозможно дать софтовым прерываниям более высокий приоритет, чем аппаратным?
не вступаю в суперечки з альтернативно обдарованими
pascal
новенький
Пости в темі: 5
Повідомлень: 64
З нами з: 30 листопада 2011, 08:15
Звідки: Київ
Подякував: 13 разів
Подякували: 39 разів

Re: Транспорт на основі BeagleBone Black

#23

Непрочитане повідомлення pascal »

to Djem
чому чим частіше преривання тим краще - тому що проходить дрейф відліку часу транспорта відносно клоку цапу наприклад
чим більший буфер тим більший дрейф
як пояснити що через usb-spdif перетворювач відчувається якість транспорту? Получається що транспорт має свій джитер.
і загальній джитер є функціею (сумою) джитерів всіх компонентів.

to wired
якщо мпд припиняє грати без клоку цап - можливо він чекає на пристрій виводу який в той момент недоступний, і він не має куди посилати дані, але при цьому програма на BBB продовжує працювати перебуваючи в циклі стану очікування.
При відсутності клоку завмирає весь BBB?

Суть питань розібратися:
- якщо вивід звуку в реальному часі впливає на його якість, ставити ультра якісний клок в самому BBB який буде Ггц не має змісту так як це не однозадачне середовище і нема можливості впливати на росподілення в часі циклів процесора по декільком програмам
залишається тільки засинхронізувати по прериванням вивід аудіо.

мпд само иніціює преривання на звуковий интерфейс коли буде мати що послати йому, а не звуковий інтерфейс смикає мпд
а само мпд керується внутрішнім клоком операційної системи і виконується як процес тоді, коли операційна система виділить для мпд процесорний час
відповідно треба засинхронизувати ще й клок операційної системи з яким небудь якісним джерелом. Це дасть можливисть більш прецизійніше планувальнику задач виділяти час для виконання програми МПД. Що позначіться в більш плавній подачі музики (проявленню нюансів) ритмічній картині.
http://blog.dan.drown.org/tcxo-beaglebone-black/ наприклад
чи всетаки переферійний адаптер може керувати процесорним часом виконання програми?
навіть якщо мпд залишити як одну єдину програму в системі, росподілення часу BBB буде між виконням мпд 5% процесорного часу і 95% пустого циклу
і не відомо коли в 95% відрізку часу буде виконуватись 5% мпд на початку, в кінці в середині...
wired
ветеран
Пости в темі: 33
Повідомлень: 1182
З нами з: 23 листопада 2011, 20:29
Звідки: Київ
Подякував: 1174 разів
Подякували: 823 разів
Контактна інформація:

Re: Транспорт на основі BeagleBone Black

#24

Непрочитане повідомлення wired »

вибач, маячня якась
"was fällt, das soll man auch noch stossen!"
Аватар користувача
Djem
учасник
Пости в темі: 14
Повідомлень: 290
З нами з: 13 вересня 2014, 22:04
Звідки: Харьков
Подякував: 319 разів
Подякували: 456 разів
Вік: 61

Re: Транспорт на основі BeagleBone Black

#25

Непрочитане повідомлення Djem »

pascal писав:to Djem
чому чим частіше преривання тим краще - тому що проходить дрейф відліку часу транспорта відносно клоку цапу наприклад
чим більший буфер тим більший дрейф
як пояснити що через usb-spdif перетворювач відчувається якість транспорту? Получається що транспорт має свій джитер.
і загальній джитер є функціею (сумою) джитерів всіх компонентів.
Согласен с Вайредом :pardon: . Всё как то с ног на голову...
А если буфер на всю композицию? И считывание из буфера происходит синхронизированно с частотой мастерклока от цапа. С какой частотой происходит подгрузка в буфер- совершенно фиолетово, главное, чтобы буфер не опустошался. Где дрейф то возьмется?
ФИФО, слышали такое? На этом принципе, кстати, работают хорошие модули приемников спдиф сигнала- и это , фактически, единственное решение, позволяющее поднять качество звука через спдиф до максимального уровня.
не вступаю в суперечки з альтернативно обдарованими
Відповісти

Повернутись до “Власними руками”