Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. аппаратные средства
    4. Железо
    5. Аудиоплеер для мультирума

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    Аудиоплеер для мультирума

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      MSapogov last edited by

      Появилась идея создать универсальный HiFi плеер на дешевой элементной базе.

      В итоге были отобраны следующие кандидаты OrangePi One и DAC Sabre ES9023.

      Понимаю, что в сети очень много проектов плееров на одноплатниках, таких как piCorePlayer,

      Volumio и скажу Вам весьма неплохих, но не под наше железо.

      Итак продолжим… В качестве ОС была выбрана Armbian (server) Debian jessie.

      Скачиваем образ ОС с оф сайта Armbian - https://www.armbian.com/orange-pi-one/ и звписываете его на карту.

      Я использовал карту Sandisk Ultra 16Gb UHS-I, каких то проблем со скоростью работы замечено не было.

      Подключаем Ethernet к апельсинке, устанавливаем карту с записаным образом и включаем питание. Ждем 1-2 минуты.

      Выясняем какой IP адрес получила наша апельсинка и подсоединяемся к ней через SSH (root:1234)

      После первого включения нас попросят задать новый пароль, потом создать нового пользователя и.т.д…

      В конце концов нам необходимо будет обновить пакеты

      apt-get upgrade

      после этого смело можно установить mc (мне с ним намного удобнее)

      atp-get install mc

      Затем перезагружаемся reboot.

      1. Настройка WiFi https://forum.armbian.com/index.php/top … s-success/

      Смотрим что за WiFi адаптер у нас lsusb

      1.1. Если Ваш адаптер определяется как

      Bus 002 Device 003: ID 0bda:8179 Realtek Semiconductor Corp.
      

      В этом случае Вам сильно повезло, т.к. в ядре все для него уже есть. Но он и по цене дороже (примерно 240 руб)

      1.2. Если Вам не повезло, как и мне, и вывод lsusb показал

      Bus 002 Device 003: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
      

      Не расстраиваемся (ведь этот модуль самый дешевый 140 руб) и читаем https://github.com/pvaret/rtl8192cu-fixes

      вкратце необходимо выполнить

      cd /usr/src
      apt-get install git build-essential dkms
      git clone https://github.com/pvaret/rtl8192cu-fixes.git
      dkms add ./rtl8192cu-fixes
      dkms install 8192cu/1.10
      depmod -a
      cp ./rtl8192cu-fixes/blacklist-native-rtl8192.conf /etc/modprobe.d/
      cp ./rtl8192cu-fixes/8192cu-disable-power-management.conf /etc/modprobe.d/
      

      Все перезагружаемся.

      1.3 Остается только поправить файлы конфигурации:

      /etc/network/interfaces

      allow-hotplug wlan0
         iface wlan0 inet dhcp
               wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
      
      

      /etc/wpa_supplicant/wpa_supplicant.conf

      ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
      update_config=1
      
      network={
              ssid="<your_ssid>"
              psk="<your_password>"
              key_mgmt=WPA-PSK
              priority=99
      }</your_password></your_ssid>
      

      после перезапуска сети /etc/init.d/networking restart или ifdown wlan0 && ifup wlan0

      на крайний случай можно и reboot.

      2 Настройка источников вывода звука

      2.1 Подключение DAC Sabre ES9023 https://forum.armbian.com/index.php/top … nge-pi-h3/

      Подготавливаем ядро для работы по I2S.

      cd /boot
      bin2fex script.bin script.fex
      

      редактируем script.fex

      [twi1]
      twi_used = 1
      

      меняем на

      [twi1]
      twi_used = 0
      

      и

      [pcm0]
      daudio_used = 0
      

      меняем на

      [pcm0]
      daudio_used = 1
      

      запакуем ядро обратно

      fex2bin script.fex script.bin

      перезагружаемся.

      проверяем доступные аудиоадаптеры aplay -l

      **** List of PLAYBACK Hardware Devices ****
      card 0: audiocodec [audiocodec], device 0: SUNXI-CODEC sndcodec-0 []
        Subdevices: 1/1
        Subdevice #0: subdevice #0
      card 1: snddaudio [snddaudio], device 0: SUNXI-TDM0 snddaudio-0 []
        Subdevices: 1/1
        Subdevice #0: subdevice #0
      card 2: sndhdmi [sndhdmi], device 0: SUNXI-HDMIAUDIO sndhdmi-0 []
        Subdevices: 1/1
        Subdevice #0: subdevice #0
      

      нас интересует

      card 1: snddaudio [snddaudio], device 0: SUNXI-TDM0 snddaudio-0 []
        Subdevices: 1/1
        Subdevice #0: subdevice #0
      

      это и есть наш DAC подключенный по I2S (заметим, что dac даже не подключен физически)

      Настало время подключить физически наш DAC проводками к OrangePi One

      5V > Pin 2
      Gnd > Pin6
      BCK > Pin 27
      LRCK > Pin 28
      Data > Pin37
      Gnd > Pin39
      

      Во многих программах воспроизведения достаточно было в качестве устройство вывода звука указать - "hw:1,0" и все,

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

      2.2 - разделение внутреннего аналогового стерео выхода на два независимых источника моно вывода звука.

      Варианты применения:

      Сделать озвучку Ванная (моно) + Уборная (моно) без DACа. Это будут отдельные устройства для LMS

      Ванная например левай канал, Уборная Правый, запущено будет 2 копии squeezelite, каждая на своем канале.

      Привожу конфиги для alsa и запуск двух squeezelite как сервисов.

      Получилось создать 2 независимых плеера с mono сигналом на OrangePi one без DAC.

      Если Вам этого не нужно, то пропускаем этот раздел.

      /etc/asound.conf - /etc/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
      
      

      3. Микширование сигнала от разных программ https://www.opennet.ru/base/X/dmix_setup.txt.html

      Я мало в этом разобрался, но но этот конфиг работает (может и что-то сделано и коряво)

      /etc/asound.conf - (если конфига нет, то создаем его)

      pcm.!default {
        type hw
        card audiocodec
                   }
      
      ctl.!default {
        type hw
        card audiocodec
                   }
      
      pcm.es9023-dac {
          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-mix {
         type plug
         slave.pcm "es9023-dac" # use our new PCM here
      }
      
      # mixer0 like above
      ctl.mixer0 {
         type hw
         card 0
      }
      

      После этого если сделать aplay -L

      то вверху мы увидим новые звуковые интерфейсы

      es9023-dac
      es9023-mix
      

      Теперь если нам необходимо из разных программ одновременно воспроизводить музыку, то вывода звука выбираем es9023-mix.

      Если микширование использовать нет необходимости, то можно для вывода звука выбирать es9023-dac.

      4. Установка ПО плееров.

      4.1 - squeezelite (одиночное или синхронное воспроизведение музыки)

      Скачиваем отсюда последнюю версию https://sourceforge.net/projects/lmscli … ueezelite/

      cd /usr/src
      wget https://sourceforge.net/projects/lmsclients/files/squeezelite/linux/squeezelite-1.8.6-957-armv6hf.tar.gz/download -O squeezelite-1.8.6-957-armv6hf.tar.gz 
      

      распаковываем архив и помещаем squeezelite и squeezelite-ffmpeg в папку usr/bin/

      Добавляем авто-запуск squeezelite как сервис

      /lib/systemd/system/squeezelite.service

      [Unit]
      Description=Squeezelite (squeezebox emulator for linux)
      After=multi-user.target
      
      [Service]
      Type=simple
      ExecStart= /usr/bin/squeezelite-ffmpeg -D -v -o es9023-mix -n Orange-Test -m 00:00:00:00:00:1f
      
      [Install]
      WantedBy=multi-user.target
      

      Включить только что созданный файл сервиса в автозагрузку (это создаст symlink-и в папке \etc\systemd\system\multi-user.target.wants )

      systemctl enable squeezelite.service
      

      Если не хотите перезагружаться, то запустить сервисы

      systemctl start squeezelite.service
      

      можно установить и из репозитория apt-get install squeezelite

      тогда автозапуск плеера добавится сам, нужно будет только в файле указать имя плеера и устройство вывода звука.

      /etc/default/squeezelite

      SL_SOUNDCARD="es9023-mix"
      

      После перезапуска сервиса или перезагрузки, наш Logitech Media Server c радостью найдет новый плеер.

      4.2 - shairport-sync (для Apple устройств)

      Устанавливаем из репозитория apt-get install shairport-sync

      правим в /etc/shairport-sync

      name = "Orange-Test";
      alsa =
      {
      output_device = "es9023-mix";
      mixer_device = "dmix";
      };
      

      После перезагрузки нашего плеера на яблофонах (подключенных в эту-же сеть) в качестве вывода звука, можно будет наблюдать устройство Orange-Test.

      5. Хардварное управление плеерами.

      (частично реализовано здесь - http://forum.iobroker.net/viewtopic.php?f=33&t=5119)

      Было много вопросов на тему: "А поддерживают ли данные плееры SayIt?" - отвечу что нет. Да несилен я в языках программирования, только железо и только конфиги…

      Вот уже и вывод звука для MPD появился...

      Возникает еще вопрос, почему именно I2S-DAC, а не встроенная звуковая карта. Я вообще не меломан, но оказалось все очень просто у es9023 на 16 ноге присутствует выход ZD

      который я применяю для управления питания усилителя. Когда ничего не играет, то и усилитель выключен. С обычным аналоговым выходом который можно подпаять по инструкции

      https://forum.armbian.com/index.php/top ... -receiver/ , выход управления питанием не получить.

      Усилители использую TDA7492, PAM8610 и PAM8403 - дешево и сердито.

      Анонс следующих выпусков:

      4.3 - Установка MPD.

      1 Reply Last reply Reply Quote 0
      • V
        VictorS last edited by

        Отличная статья, спасибо!

        Лично я жду п.5 . Может его в топ переместить? 🙂

        1 Reply Last reply Reply Quote 0
        • V
          VictorS last edited by

          Выбираю сейчас апельсинку для заказа. Orange PI One не очень нравится что нет Wi-Fi и проц H2

          Есть у них Orange PI Lite, в Wi-Fi only на борту , проц. H3

          Проблем с подключением к I2S не будет в нем?

          S 1 Reply Last reply Reply Quote 0
          • M
            MSapogov last edited by

            Orange PI One - Проц H3 памяти 512.

            Отсутствие WiFi легко решается через USB.

            Если на Orange PI Lite - выведены все 40 GPIO, то проблем не должно быть. По мне лучше Ethernet, чем WiFi.

            PS: хотел сделать кнопки для управления к GPIO, но что-то sunxi (H3) никак не могу правильно прерывания обрабатывать. На малинке все в пол пинка делалось… -:(

            1 Reply Last reply Reply Quote 0
            • S
              SolarW last edited by

              Огромное спасибо за разжеванную инструкцию 🙂

              Попробовал запустить вот такой наборчик

              https://ru.aliexpress.com/item/New-Oran … 29852.html

              За пару часов вдумчивой адаптации типа как взлетело - LMS установленный на ноуте увидел клиента и чудно играет на нем музыку.

              Основная заминка была в том, что пробовал сначала на наушниках (гарнитуре) взлететь но с ними нифига не получалось - шипение, свист и т.д.

              Пришлось мотнуться в ближайший лабаз и нахватить самые простые активные колонки SVEN SPS-607.

              Сижу, слушаю музыку 🙂

              Следующий этап разобраться с микшированием, попробовать запустить еще одну программу работающую со звуком и прикинуть как лучше уменьшать громкость музыки когда вторая программа будет оповещения воспроизводить.

              Ну и стопочка из Orange Pi One, DAC Sabre и усилка ждет своей участи 🙂

              В связи с этим вопрос - можно чуть поподробней осветить вопросы связанные с отключением питания усилка когда DAC ничего не играет?

              Если можно то со схемкой/номиналами деталей 🙂

              1 Reply Last reply Reply Quote 0
              • S
                SolarW last edited by

                @MSapogov:

                PS: хотел сделать кнопки для управления к GPIO, но что-то sunxi (H3) никак не могу правильно прерывания обрабатывать. На малинке все в пол пинка делалось… -:( `
                https://ru.aliexpress.com/item/PCM2704- … 05823.html - USB-DAC с кнопками громкости и mute.

                https://www.youtube.com/watch?v=9PcWuyjEuW0 - типа обзор.

                https://sites.google.com/site/picorepla ... f-USB-DACs - нашел в этом списке.

                1 Reply Last reply Reply Quote 0
                • S
                  SolarW last edited by

                  Кстати греется апельсинка…

                  С наклеенным радиатором и в закрытом корпусе получается 51-54 градуса (по диагностике внутри системы).

                  Это нормально? Или предпринимать дополнительные шаги по охлаждению?

                  1 Reply Last reply Reply Quote 0
                  • I
                    instalator last edited by

                    @SolarW:

                    Кстати греется апельсинка…

                    С наклеенным радиатором и в закрытом корпусе получается 51-54 градуса (по диагностике внутри системы).

                    Это нормально? Или предпринимать дополнительные шаги по охлаждению? `
                    да нормальная температура, на проц посмотри по даташиту рабочую температуру.

                    1 Reply Last reply Reply Quote 0
                    • M
                      MSapogov last edited by

                      @SolarW:

                      @MSapogov:

                      PS: хотел сделать кнопки для управления к GPIO, но что-то sunxi (H3) никак не могу правильно прерывания обрабатывать. На малинке все в пол пинка делалось… -:( `
                      https://ru.aliexpress.com/item/PCM2704- … 05823.html - USB-DAC с кнопками громкости и mute.

                      https://www.youtube.com/watch?v=9PcWuyjEuW0 - типа обзор.

                      https://sites.google.com/site/picorepla ... f-USB-DACs - нашел в этом списке. `
                      поддержка Вашей USB в picoreplayer для нашей опельсинки ничего не значит 😞

                      SSPND сигнал с Вашей PCM2704 кажется тоже можно задействовать для вавода усилка из спячки (стр 26, 28 даташита).

                      Если DAC Sabre , то все зависит чем у Вас управляется питание усилка, есть усилки которые управляются 0, я есть те которым нужна 1, чтобы включится.

                      ES9023 - на 16 ноге выдает "1" когда звука нет.

                      Вариантов несколько:

                      1. у меня используется обычный инвертор на биполярном транзисторе, под рукой был bc817 в корпусе sot23 и 2 резистора на 6,8к. В моем случае когда на 16 ноге "0", то на выходе транзистора будет "1" - это +5В, их я и подаю на усилок для пробуждения.

                      2. можно поставить оптрон вот так (нога 16 , резистор, светодиод оптрона, +3.3В). Тогда гогда на выходе будет "0", то оптрон будет открыт. Выход оптрона включать в соответствии с требованием усилка.

                      1 Reply Last reply Reply Quote 0
                      • S
                        SolarW last edited by

                        @instalator:

                        да нормальная температура, на проц посмотри по даташиту рабочую температуру. `
                        Поверил на на слово 🙂

                        1 Reply Last reply Reply Quote 0
                        • S
                          SolarW last edited by

                          @MSapogov:

                          нужна 1, чтобы включится.

                          ES9023 - на 16 ноге выдает "1" когда звука нет.

                          Вариантов несколько:

                          1. у меня используется обычный инвертор на биполярном транзисторе, под рукой был bc817 в корпусе sot23 и 2 резистора на 6,8к. В моем случае когда на 16 ноге "0", то на выходе транзистора будет "1" - это +5В, их я и подаю на усилок для пробуждения.

                          2. можно поставить оптрон вот так (нога 16 , резистор, светодиод оптрона, +3.3В). Тогда гогда на выходе будет "0", то оптрон будет открыт. Выход оптрона включать в соответствии с требованием усилка. `
                          Вот тут то как раз и вопрос.

                          https://ru.aliexpress.com/item/2016-Hot … 337774.htm - усилок взял такой.

                          И похоже ошибся в выборе - не вижу на нем никаких пинов для "пробуждения"

                          • вход аудио (3 пина)

                          • выход правого канала (2 пина)

                          • выход левого канала (2 пина)

                          • вход питания (2 пина)

                          Больше ничего нет...

                          1 Reply Last reply Reply Quote 0
                          • S
                            SolarW last edited by

                            @SolarW:

                            https://ru.aliexpress.com/item/2016-Hot … 337774.htm - усилок взял такой.

                            И похоже ошибся в выборе - не вижу на нем никаких пинов для "пробуждения"

                            • вход аудио (3 пина)

                            • выход правого канала (2 пина)

                            • выход левого канала (2 пина)

                            • вход питания (2 пина)

                            Больше ничего нет... `
                            Хотя стоп

                            http://www.ab-log.ru/forum/viewtopic.ph … =20#p24603 - вроде бы усилитель взял по ссылке рекомендованной "лучшими собаководами" 🙂

                            Михаил, признавайтесь как вы его "будите" 🙂

                            https://ru.aliexpress.com/item/ES9023-I ... 45889.html - саблю кстати тоже 🙂

                            https://myl8test.files.wordpress.com/20 ... asheet.pdf - судя по даташиту шишнадцатая нога находится напротив первой.

                            Правильно понимаю что первая нога помечена "ямкой" на чипе (в даташите однозначного ответа не увидел)?

                            1 Reply Last reply Reply Quote 0
                            • M
                              MSapogov last edited by

                              @SolarW:

                              Михаил, признавайтесь как вы его "будите" 🙂 `
                              "Элементарно Ватсон!"

                              Внимательно изучаем даташит на TDA7492, смотрим на плату и находим куда идет 20 нога (это и есть стендбай)… А на плате она идет через резистор 3К к 3.3В.

                              Делаем небольшую модернизацию... передвинув резистор в свободную сторону к 3.3В и на освободившуюся площадку подпаиваем проводок для управления питанием.

                              На ES9023 перерезаем MCLK (он все равно не используется) и вместо него делаем сигнал пробуждения для усилка.
                              643_img_20170202_090028.jpg
                              643_img_20170126_193929.jpg

                              1 Reply Last reply Reply Quote 0
                              • V
                                VictorS last edited by

                                А в какой корпус можно засунуть апельсину и DAC? В оригинальный полупрозрачный войдет?

                                Хотелось бы иметь приличный вид у такой сборки.

                                Усилок не нужен, так как буду подключать в av ресиверу.

                                Или если задача подавления шума усилителя в паузе не стоит, то не стоит заморачиватся с отдельным DAC?

                                1 Reply Last reply Reply Quote 0
                                • M
                                  MSapogov last edited by

                                  @VictorS:

                                  Или если задача подавления шума усилителя в паузе не стоит, то не стоит заморачиватся с отдельным DAC? `
                                  Совершенно верно.

                                  Если Вы только не хотите получить 24бит 192кГц звук.

                                  Корпус любой, можно и стандартный.

                                  Если к усилку можно подключить через HDMI, то и DAC никакой не нужен, для 24бит 192кГц звука.

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    SolarW last edited by

                                    @VictorS:

                                    А в какой корпус можно засунуть апельсину и DAC? В оригинальный полупрозрачный войдет?

                                    Хотелось бы иметь приличный вид у такой сборки. `
                                    Испытываю некоторые сомнения что поместится…

                                    ! ![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201702 ... d14020.jpg">https://uploads.tapatalk-cdn.com/20170202/b6e620edf9bf551ff899efd349d14020.jpg</link_text>" />

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      SolarW last edited by

                                      @MSapogov:

                                      "Элементарно Ватсон!" `
                                      Ух ты! В картинках - это как раз для нас, чайников 🙂
                                      @MSapogov:

                                      Внимательно изучаем даташит на TDA7492, `
                                      Вот тут собственно и началась проблема - в виду слабой теоретической подготовки понимание даташитов не является моей сильной стороной… сходу понимаю в них только габаритные размеры да температурный режим 🙂
                                      @MSapogov:

                                      смотрим на плату и находим куда идет 20 нога (это и есть стендбай)… А на плате она идет через резистор 3К к 3.3В.

                                      Делаем небольшую модернизацию... передвинув резистор в свободную сторону к 3.3В и на освободившуюся площадку подпаиваем проводок для управления питанием. `
                                      Ага, значит сняв радиатор это все проделывать надо.

                                      "Сдвинув в сторону" - это типа остался на одной ноге висеть чтобы не потерялся на случай если назад запаивать?
                                      @MSapogov:

                                      На ES9023 перерезаем MCLK (он все равно не используется) и вместо него делаем сигнал пробуждения для усилка. `
                                      Уууу… монтаж SMD... Чувствую что к комплекту мелких жал для паяльника придется еще и увеличительное стекло докупить...

                                      Дорожка дремелем перебита?
                                      @MSapogov:

                                      1. у меня используется обычный инвертор на биполярном транзисторе, под рукой был bc817 в корпусе sot23 и 2 резистора на 6,8к. В моем случае когда на 16 ноге "0", то на выходе транзистора будет "1" - это +5В, их я и подаю на усилок для пробуждения. `
                                      http://www.smd-component.ru/webcatalog/ … code=08131 - правильно понимаю что два добавленных элемента с маркировкой 6801 это такие резисторы как по ссылке описаны?

                                      http://www.s-manuals.com/ru/smd/6b - а вот тут собственно искомые транзисторы

                                      К ножке MCLK разъема получается коллектор транзистора припаян и туда же через резистор приходит напруга?

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        MSapogov last edited by

                                        SolarW

                                        Резисторы на 6.8к и транзисторы просто осталось много от одного проекта, вот их и поставил.

                                        Дорожка перерезана скальпелем.

                                        По остальным вопросам - да.

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          SolarW last edited by

                                          Адаптированная инструкция автора темы под Orange Pi Zero с использованием штатного аудио-выхода.

                                          https://www.armbian.com/orange-pi-zero/ - качаем Armbian (Debian Jessie)

                                          Разворачиваем образ на SD карту (под Win использую SDFormatter и Win32DiskImager)

                                          Вставляем карточку в апельсинку.

                                          Подключаем локальную сеть, питание.

                                          После старта смотрим на маршрутизаторе какой адрес она получила (по умолчанию используется имя хоста orangepizero)

                                          Второй вариант это вооружиться USB-UART с уровнем 3.3в и подключиться к UART'у на апельсинке - 3 пина рядом с сетевой картой, по умолчанию туда привязана консоль и можно через терминальную программу наблюдать процесс загрузки/произвести начальную настройку.

                                          С помощью вашего любимого SSH-клиента (puTTY?) подключаемся к апельсинке, входим по умолчанию с root / 1234

                                          Сразу после входа требуют сменить пароль - меняем.

                                          Поскольку медиаплеер это не сервер Пентагона дополнительного пользователя для работы не завожу, нажимаю Ctrl-C.

                                          Учитывая что при входе настойчиво попросили перезагрузиться чтобы закончить процедуру растягивания корневого раздела на весь доступный объем SD-карты - перезагружаемся (reboot)

                                          После перезагрузки и повторного входа обновляем систему:

                                          apt-get update
                                          apt-get upgrade
                                          

                                          Ставим дополнительных программ для комфортной работы

                                          apt-get install mc htop
                                          

                                          С помощью программы nmtui (Network Manager Text User Interface) настраиваем параметры подключения к сети (Wired и/или Wi-Fi)

                                          Смотрим что у нас с аудио устройствами

                                          root@orangepizero01:~# aplay -l
                                          **** List of PLAYBACK Hardware Devices ****
                                          card 0: audiocodec [audiocodec], device 0: SUNXI-CODEC sndcodec-0 []
                                            Subdevices: 1/1
                                            Subdevice #0: subdevice #0
                                          card 1: sndhdmi [sndhdmi], device 0: SUNXI-HDMIAUDIO sndhdmi-0 []
                                            Subdevices: 1/1
                                            Subdevice #0: subdevice #0
                                          

                                          card 0: audiocodec [audiocodec], device 0: SUNXI-CODEC sndcodec-0 [] - это интересующий нас аудиовыход

                                          Ставим squeezelite (тянет за собой пачку зависимых пакетов, поэтому вручную последнюю версию не стал)

                                          apt-get install squeezelite
                                          

                                          Добавляем его в автозагрузку

                                          systemctl enable squeezelite.service
                                          

                                          Смотрим доступные для squeezelite устройства вывода звука

                                          root@orangepizero01:~# squeezelite -l
                                          Output devices:
                                            null                           - Discard all samples (playback) or generate zero samples (capture)
                                            default:CARD=audiocodec        - audiocodec,  - Default Audio Device
                                            sysdefault:CARD=audiocodec     - audiocodec,  - Default Audio Device
                                            dmix:CARD=audiocodec,DEV=0     - audiocodec,  - Direct sample mixing device
                                            dsnoop:CARD=audiocodec,DEV=0   - audiocodec,  - Direct sample snooping device
                                            hw:CARD=audiocodec,DEV=0       - audiocodec,  - Direct hardware device without any conversions
                                            plughw:CARD=audiocodec,DEV=0   - audiocodec,  - Hardware device with all software conversions
                                            default:CARD=sndhdmi           - sndhdmi,  - Default Audio Device
                                            sysdefault:CARD=sndhdmi        - sndhdmi,  - Default Audio Device
                                            dmix:CARD=sndhdmi,DEV=0        - sndhdmi,  - Direct sample mixing device
                                            dsnoop:CARD=sndhdmi,DEV=0      - sndhdmi,  - Direct sample snooping device
                                            hw:CARD=sndhdmi,DEV=0          - sndhdmi,  - Direct hardware device without any conversions
                                            plughw:CARD=sndhdmi,DEV=0      - sndhdmi,  - Hardware device with all software conversions
                                          

                                          Правим настройки squeezelite (кому в каком редакторе привычней, кто-то может через WinSCP захочет редактировать)

                                          nano /etc/default/squeezelite
                                          

                                          или

                                          mcedit /etc/default/squeezelite
                                          

                                          или

                                          vi /etc/default/squeezelite
                                          

                                          Можно прописать свое имя плееру (по умолчанию используется системное hostname которое настраивается через nmtui)

                                          SL_NAME="$(hostname -s)"
                                          

                                          Указать звуковую карту для вывода звука

                                          SL_SOUNDCARD="default:CARD=audiocodec"
                                          

                                          По желанию указать IP-адрес LMS (если не указывать будет искать автоматом в локальной сети)

                                          SB_SERVER_IP="192.168.x.y"
                                          

                                          Запускаем squeezelite

                                          systemctl start squeezelite.service
                                          

                                          Открываем управление LMS, видим появившийся плеер, запускаем воспроизведение - из колонок играет музыка.

                                          К варианту с микшированием (чтобы одновременно могли играть звук более одной программы) попробую вернутся чуть позже - не до конца правильно пока понимаю что надо прописывать в asound.conf

                                          1 Reply Last reply Reply Quote 0
                                          • V
                                            VictorS last edited by

                                            @SolarW:

                                            Адаптированная инструкция автора темы под Orange Pi Zero с использованием штатного аудио-выхода.

                                            …. `

                                            а как по памяти - 512 хватает ?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            961
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            9
                                            40
                                            19107
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo