NEWS
Мультирум
-
И кстати, была бы отличная статься для гиктаймса)) (чур моя идея 8-) ) `
Прям мысли читаешь.Я ближайшее время навряд ли созрею, так что жду от тебя
-
Из дешевых можно использовать http://www.aliexpress.com/item/Orange-Pi-One-ubuntu-linux-and-android-mini-PC-Beyond-and-Compatible-with-Raspberry-Pi-2/32603308880.html?spm=2114.13010208.99999999.285.WGgEqg, ИМХО дешевле при той же мощности и функциональности не бывает)
Ошибочка вышла, на плате Orange Pi One нет аудио-выхода.
Но как оказалось аудио выход и видеовыход можно припаять http://forum.armbian.com/index.php/topi … -receiver/Вот такой хак под микроскопом.
Заказал себе парочку Orange Pi One помучаю...
PS: а сильно смелые могут и память увеличить
https://www.youtube.com/watch?v=ux2U4yv ... e=youtu.be
PS2: В качестве сервера IOB на даче поставил Orange Pi One добавил к нему DAC ES9023 Sabre I2S 24bit/192 КГЦ и усилок TDA7492D, активировал в ядре I2S и установил squeezelite и shairport-sync с выводом на этот АЦП. Аудио с iobroker оставил на джек 3.5. Итого ценник 28,5 USD.
squeezelite управляется через Logitech Squeezebox Adapter. Как придут Orange Pi One , то поставлю их как самостоятельные плееры. Стабильность радует (неделю точно отработали дез сбоев). На ES9023 - нашел сигнал ZD (Zero Detect) - выдает "1" когда нв входе DAC-а подряд идет 8192 нуля. Этакий сигнал MUTE или PowerOff для усилка, теперь никакие шумы усилителя не страшны.
Осталось если возможно победить микшер для DAC... чтобы и squeezelite и shairport-sync могли вещать одновременно.
UPD: Отвечу про микширование сам, помогли мне на одном из форумов, может и кому тут пригодится...
Вот так теперь работает одновременное воспроизведение и squeezelite и shairport-sync:
asound.conf
! ````
pcm.!default {
type hw
card audiocodec
}
! ctl.!default {
type hw
card audiocodec
}
! ######################################################https://www.opennet.ru/base/X/dmix_setup.txt.html
######################################################
! pcm.i2c-mix {
type dmix
ipc_key 1024 # must be unique!
ipc_key_add_uid false # let multiple users share
ipc_perm 0666 # IPC permissions for multi-user sharing (octal, default 0600)
! slave {
pcm "hw:1,0" # you cannot use a "plug" device here, darn.
period_time 0
period_size 2048 # must be power of 2
buffer_size 32768 # dito. It
rate 192000
format "S32_LE"
#periods 128 # dito.
#rate 8000 # with rate 8000 you will hear,
# if ossmix is used
}
! # bindings are cool. This says, that only the first
# two channels are to be used by dmix, which is
# enough for (most) oss apps and also lets
# multichannel chios work much faster:
bindings {
0 0 # from 0 => to 0
1 1 # from 1 => to 1
}
}
pcm.es9023 {
type plug
slave.pcm "i2c-mix" # use our new PCM here
}
! # mixer0 like above
ctl.mixer0 {
type hw
card 0
}shairport-sync.conf >! ```` alsa = { output_device = "es9023"; mixer_device = "dmix"; };
squeezelite
! ````
SL_SOUNDCARD="es9023" -
Заканчиваю озвучку квартиры, выбор пал на LMS.
Сначала проверял на Raspberry Pi2 (piCorePlayer) + PCM5122 + TDA7492, затем все удешивил до минимума.
В итоге получилось:
Гостиная 40Вт: Orange Pi PC + DAC Sabre SE9023 + TDA7492 + Управление питанием TDA7492 от DAC - 2200 руб.
Детская 10Вт: Orange Pi one + DAC Sabre SE9023 + PAM8610 + Управление питанием PAM8610 от DAC - 1500 руб.
Столовая 3Вт: Orange Pi one + PAM8403 (аудио встроеное в Orange pi, подпаивался к площадкам) - 900 руб.
Орерационка armbian, из софта - squeezelite и shairport-sync.
Настроено микширование (одновременное воспроизведение и squeezelite и shairport-sync)
На мое удивление PAM8403 звучит практически так-же (по громкости) как и PAM8610, на одной и то-же акустике.
еще есть идея сделать Ванная (моно) + Уборная (моно), (конфигурация как в столовой). Это будут отдельные устройства для LMS
Ванная например левай канал, Уборная Правый, запущено будет 2 копии squeezelite, каждая на своем канале.
В дальнейшем, может на GPIO повешаю кнопки для изменение громкости и прочее.
Заказал еще USB-WiFi (RTL8188EU) - для добавления беспроводного интерфейса и СинийЗуб.
Если есть интерес, то поделюсь конфигами для настройки микширования DAC-а.
-
А Logitech Squeezebox работает с sayit? Если да, то хорошо?
-
А Logitech Squeezebox работает с sayit? Если да, то хорошо? `
Ну вот… наступили на больную мозоль...Помнится в ОпенХабе было как-то реализовано, но очень ка-то заумно... (сохнанение текущего плейлиста > генерация файла > создание нового плейлиста с фразой > воспроизведение нового плейлиста > восстановление старого плейлиста).
Вот очень-бы хотелось, чтобы sayit работал с Squeezebox .
Буду надеятся... http://forum.iobroker.net/viewtopic.php … =522#p3532
PS: как вариант можно поставить еще и pulsaudio, если будет поддержка MPD. Вы только скажите… буду тестировать.
-
(сохнанение текущего плейлиста > генерация файла > создание нового плейлиста с фразой > воспроизведение нового плейлиста > восстановление старого плейлиста) `
Именно так реализовано в sonos. -
(сохнанение текущего плейлиста > генерация файла > создание нового плейлиста с фразой > воспроизведение нового плейлиста > восстановление старого плейлиста)
Именно так реализовано в sonos.
Эх… был бы я программистом.А то открыл ссылки https://www.npmjs.com/package/squeezenode, и …. ну какбудто марсианина встретил...
А вот с этим - http://tutoriels.domotique-store.fr/con … -http.html
немного попонятнее, понял, что кнопки GPIO на самом устройстве буду через HTTP-шками разруливать.
-
еще есть идея сделать Ванная (моно) + Уборная (моно), (конфигурация как в столовой). Это будут отдельные устройства для LMS
Ванная например левай канал, Уборная Правый, запущено будет 2 копии squeezelite, каждая на своем канале. `
Было время занялся изучением ALSA…Получилось создать 2 независимых плеера с mono сигналом на OrangePi one.
Привожу конфиги для alsa и запуск двух squeezelite как сервисов.
! asound.conf
pcm.mix_left { type plug slave.pcm { type dshare ipc_key 123456 slave.pcm "hw:0" slave.channels 2 bindings.0 1 } } >! pcm.mix_right { type plug slave.pcm { type dshare ipc_key 123456 slave.pcm "hw:0" slave.channels 2 bindings.0 0 } }
Создаем service-файл squeezelite_left.service в директории /lib/systemd/system/ (МАС адрес "-m" и название "-n" задаем "по вкусу")
[Unit] Description=Squeezelite_left (squeezebox emulator for linux) After=multi-user.target >! [Service] Type=simple ExecStart= /usr/bin/squeezelite -D -v -o mix_left -n Orange_left -m 00:00:00:00:00:05 >! [Install] WantedBy=multi-user.target
Создаем service-файл squeezelite_right.service по аналогии
[Unit] Description=Squeezelite_right (squeezebox emulator for linux) After=multi-user.target >! [Service] Type=simple ExecStart= /usr/bin/squeezelite -D -v -o mix_right -n Orange_right -m 00:00:00:00:00:06 >! [Install] WantedBy=multi-user.target
Включить только что созданный файл сервиса в автозагрузку (это создаст symlink-и в папке \etc\systemd\system\multi-user.target.wants )
systemctl enable squeezelite_left.service systemctl enable squeezelite_right.service >! ```` Если не хотите перезагружаться, то запустить сервисы
systemctl start squeezelite_left.service
systemctl start squeezelite_right.service! ````
-
Заканчиваю озвучку квартиры, выбор пал на LMS.
Сначала проверял на Raspberry Pi2 (piCorePlayer) + PCM5122 + TDA7492, затем все удешивил до минимума.
В итоге получилось:
Гостиная 40Вт: Orange Pi PC + DAC Sabre SE9023 + TDA7492 + Управление питанием TDA7492 от DAC - 2200 руб.
Детская 10Вт: Orange Pi one + DAC Sabre SE9023 + PAM8610 + Управление питанием PAM8610 от DAC - 1500 руб.
Столовая 3Вт: Orange Pi one + PAM8403 (аудио встроеное в Orange pi, подпаивался к площадкам) - 900 руб. `
а откуда железки берут треки для проигрывания? лежат на SD карте?
-
а откуда железки берут треки для проигрывания? лежат на SD карте? `
LMS по сети на железки стримит.А он уже из разных источников может получать контент.
-
а откуда железки берут треки для проигрывания? лежат на SD карте? `
LMS по сети на железки стримит.А он уже из разных источников может получать контент. `
более-менее понятно. а вообще смысл мультирум и его использования с IOB? Какие совместные сценарии?
Управление? Но любой современный медиацентр имеет прекрасные web-интерфейсы…
Не могу уловить
-
а вообще смысл мультирум `
В приставке мульти?В каждом помещении своя аудиосистема которая по команде с центрального сервера может или что-то своё играть или в нескольких помещениях воспроизводить одно и то же (но ОЧЕНЬ синхронно).
-
а вообще смысл мультирум `
В приставке мульти?В каждом помещении своя аудиосистема которая по команде с центрального сервера может или что-то своё играть или в нескольких помещениях воспроизводить одно и то же (но ОЧЕНЬ синхронно). `
про мульти все понятно. непонятно роль в этом именно умного дома, так как думаю что LMS может обойтись и без него для проигрывании чего-то своего или разного в каждой комнате.
Непонятны сценарии именно в случае работы в связке с умным домом
-
Что реализовано на LMS у меня сейчас…
Вся музыка лежит на сервере под Win2012 там-же установлен сервер LMS. Но как правило дети ставят свои плей листы, а взрослые по радио прикалываются :-).
Клиенты находятся в разных комнатах и помещениях...
Потихоньку добавляю локальное управление кнопками через GPIO и отображение текущей композиции и громкости.
Как правило через IoB (через драйвер) идет управление ВКЛ/ВЫКЛ и громкость. Можно оправлять громкостью от времени суток... Да мого чего можно сделать.
Объединение плееров по зонам (для синхнонного звучания) выбрано на сервере. Но можно поменять свободно через WEB интерфейс LMS-а.
Можно так сказать что как SONOS только дешевле.
Так как в драйвере sayit нет поддержки LMS, то планирую на те-же orange поставить MPD (http://forum.iobroker.net/viewtopic.php?f=16&t=4455 и http://forum.iobroker.net/viewtopic.php … 5&start=40 и http://forum.iobroker.net/viewtopic.php?f=31&t=4663), и тогда можно и озвучку системных сообщений сделать. Перед выводом сообщения нужно будет через драйвер "Logitech Squeezebox Adapter" выключить (или убавить громкость) необходимый или необходимые плееры, а потом их включить обратно (или восстановить громкость). Благо в ALSA настроено микширование.
Понимаю, что это не совсем правильно (как это реализовано в драйвере SONOS), но такое решение тоже может жить.
-
Так как в драйвере sayit нет поддержки LMS, то планирую на те-же orange поставить MPD `
Как только не извратятся. Лишь бы драйвер не писать. :lol: :lol: :lol: -
Так как в драйвере sayit нет поддержки LMS, то планирую на те-же orange поставить MPD
Как только не извратятся. Лишь бы драйвер не писать. :lol: :lol: :lol:
Это да… Если я не знаю как реализовать задачу, то буду искать 100 и 1 известный мне способ как реализовать задуманное.Пока меня хватило только на изучения API от LMS, чтобы по telnet управлять громкостью и питанием через GPIO от Raspberry Pi или Orange One.
-
MSapogov, ты бы создал тему и описал как и что надо сделать с lms что-бы это заработало .
С примерами скриптов и на пальцах, очень бы пригодилось.
А то собирать по крупицам инфу размазанную по трём форумам не есть удобно.
-
А какую железку посоветуете (типа Orange PI, малину или еще чего) для максимально безпроблемного "взять и попробовать". В качестве девайса для проирывания музыки.
Люблю конечно "поплясать с бубном", но в последнее время как то со временем не очень.
и еще вопрос - есть у меня сервер http://plex.tv, на котором десятки терабайт всякой медиа. не хотелось бы городить еще один сервер типа LWS или MPD. Зато в IOB есть поддержка KODI. А у KODI интеграция с Plex.
Что-то наверное можно сколхозить, но вот что?
Пока мысли в разные стороны разбегаются, не могу собрать
Может кто посоветует?
-
Может кто посоветует? `
Вроде у плекс есть поддержка upnp , и у lms она тоже естьможно попробовать связать.
Хотя проще lms параллельно поднять
-
Хорошо… так и сделаю.
Только вот здоровье свое поправлю. Думаю, что в последней неделе января будет новая тема.