Установка и настройка AirPlay-приемника на Raspberry Pi 3

Опубликовано: 01.09.2018

видео Установка и настройка AirPlay-приемника на Raspberry Pi 3

Bluetooth multi Connect управление 3 Bluetooth устройствами единовременно! Arduino App Inventor

В прошлом году я обозревал сетевую колонку Xiaomi Mi Smart Network Speaker , умеющую проигрывать музыку как по кабелю и Bluetooth, так и по DLNA и AirPlay протоколам, будучи подключенной к Wi-Fi сети. А в этой статье хочу рассказать как при помощи одноплатного компьютера можно сделать любую колонку или акустическую систему сетевой, добавив в нее поддержку протокола AirPlay.


AirPlay - iPhone и iPad на Windows!!!! [запись экрана iPhone/iPad/iPod Touch]

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

Что нам понадобится

Для осуществления описываемых в этой статье действий понадобится:

Raspberry Pi 3 Model B Локальная сеть iPhone, iPad или iTunes на компьютере Наушники или колонки, подключаемые к 3.5мм аудиоразъему Звуковая карта для Raspberry Pi (опционально) Дисплей для Raspberry Pi (опционально)

Удаленно управлять «малиной» удобнее всего по SSH или через Webmin .

Установка и настройка Shairport Sync

Для поднятия на Linux-системах AirPlay-приемника используется приложение Shairport Sync , в свою очередь являющееся форком уже заброшенного и не обновляющегося Shairport .

Перед началом установки традиционно обновим уже установленные в системе пакеты:

sudo apt-get update sudo apt-get dist-upgrade

Теперь установим все необходимое для работы Shairport Sync:

sudo apt-get install build-essential git autoconf automake libtool libdaemon-dev libasound2-dev libpopt-dev libconfig-dev avahi-daemon libavahi-client-dev libssl-dev

Скопируем с гитхаба репозиторий с исходным кодом:

git clone https://github.com/mikebrady/shairport-sync.git

Перейдем в папку с исходниками, сконфигурируем и соберем приложение:

cd shairport-sync autoreconf -i -f ./configure --sysconfdir=/etc --with-alsa --with-avahi --with-ssl=openssl --with-metadata --with-systemd make

Создадим отдельную группу и отдельного пользователя специально для Shairport:

getent group shairport-sync &>/dev/null || sudo groupadd -r shairport-sync >/dev/null getent passwd shairport-sync &> /dev/null || sudo useradd -r -M -g shairport-sync -s /usr/bin/nologin -G audio shairport-sync >/dev/null

Установим приложение и запустим в качестве системного сервиса:

sudo make install sudo systemctl enable shairport-sync

Теперь осталось только перезагрузить Raspberry Pi и все готово:

sudo reboot

Если установка пакета прошла успешна, то после перезагрузки в списке доступных AirPlay-устройств на iPhone/iPad или в iTunes появится новая колонка с именем Raspberrypi.

И если подключить к «малине» акустику, то можно воспроизводить через нее музыку с любых девайсов от Apple.

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

Отключение энергосбережения Wi-Fi

Если Raspberry Pi 3 подключена к локальной сети по Wi-Fi (к слову, при возможности лучше подключать кабелем по Ethernet — стабильнее будет работать), то нужно отключить энергосбережение Wi-Fi адаптера. Иначе при отсутствии сетевой активности адаптер будет пытаться уйти в режим сна и в это время «малинка» будет пропадать из списка AirPlay-устройств.

Поэтому отредактируем файл конфигурации:

sudo nano /etc/network/interfaces

Найдем в нем строку «iface wlan0 inet manual» и добавим сразу же после нее следующую строку:

wireless-power off

На этом данная часть настройки завершена.

Улучшение качества звука

Встроенная звуковая карта в Raspberry Pi 3 оставляет желать лучшего, а установленный по умолчанию драйвер и вовсе ужасен. Если планируется использовать «малину» в качестве AirPlay-ресивера для действительно хорошей акустики, то есть смысл докупить к ней хорошую звуковую карту (такие производит, например, Suptronics).

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

Для этого открываем файл config.txt:

sudo nano /boot/config.txt

И дописываем в конец следующую строку:

audio_pwm_mode=2

Затем нужно будет перезагрузиться. После перезагрузки «малина» заработает уже с другим драйвером и звук на 3.5мм аудиовыходе станет более-менее приличным.

Для еще одного улучшения качества звука нужно исправить файл конфигурации самого Shairport Sync:

sudo nano /etc/shairport-sync.conf

В котором нужно найти строку:

// volume_range_db = 60 ;

И заменить ее на строку:

volume_range_db = 30 ;

Обратите внимание, что нужно не только поменять значение с 60 на 30, но и удалить два слеша в самом начале строки, т.е. раскомментировать этот параметр.

Изменение названия AirPlay-ресивера

Изначально наша AirPlay-колонка будет носить сетевое имя устройства, на котором развернут Shairport (в случае с «малиной» это имя по умолчанию Raspberrypi).

Если хочется дать ей более звучное название, то нужно отредактировать файл конфигурации:

sudo nano /etc/shairport-sync.conf

Найти в нем строку:

// name = "%H"

Раскомментировать эту строку и ввести вместо %H свое название:

name = "My AirPlay Speaker"

Установка графического интерфейса для Shairport Sync

Если к «малине» подключен мини-дисплей, то можно приспособить его для вывода метаданных о транслируемых треках.

Для этого нужно загрузить еще один репозиторий:

git clone https://github.com/tchapi/shairport-sync-ui

Установить фреймворк Qt:

sudo apt-get install qt4-default

И скомпилировать его из исходников:

cd shairport-sync-ui ./compile.sh && ./run-gui.sh

А затем добавить в автозагрузку, отредактировав файл конфигурации:

sudo nano ~/.config/lxsession/LXDE-pi/autostart

И внеся в него следующую строку перед строкой @screensaver:

@/home/pi/shairport-sync-ui/build/release/shairport-sync-ui

А затем отредактировать конфигурацию shairport:

sudo nano /etc/shairport-sync.conf

Найдя в файле строки:

metadata = { // enabled = "no"; // include_cover_art = "no"; }

И заменив их на:

metadata = { enabled = "yes"; include_cover_art = "yes"; }

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

Возможно нужно еще покопаться в конфигурации, дополню статью если найду рабочее решение.

Заключение

Использование Shairport Sync позволяет превратить любую колонку в сетевую, поддерживающую протокол AirPlay. Особенно полезным это окажется если в наличии имеется качественная, но старая акустика без смарт-функций, которую хочется подружить с современной техникой.

В статье приведен пример установки Shairport Sync на Raspberry Pi 3, но аналогичным способом программу можно установить и на любой другой одноплатный компьютер, например, на более дешевый и компактный Orange Pi Zero .

Raspberry Pi 3B (английская сборка)в интернет-магазине GearBest Raspberry Pi 3B (китайская сборка)в интернет-магазине GearBest

3D стерео фильмы для 5D
    Как купить билеты на поезд

    Я всегда в последнее время пользуюсь услугами настоящего интернет сайта. Он у меня внушает доверие. И здесь придбати квитки возможно в любое

    Ведущие корпоративов
    Хотя до наступления зимы осталось еще полтора месяца, многие коллективы уже сейчас планируют, как они будут встречать Новый год. Руководство рассматривает суммы, которые могли бы быть потрачены на корпоратив,

    Custom plugins and WordPress themes
    Шаблоны страниц в WordPress являются отличным способом изменить структуру страниц или добавить им функциональности. Создание собственного шаблона страниц может быть не простым делом, особенно для новичков,

    Продукт WooCommerce
    Каждый умный человек в современном мире прекрасно понимает, что в двадцать первом веке просто нельзя упускать возможность узнать или же научиться чему-либо новому. Особенно, если речь касается электронной

    Магазин видеонаблюдения
    При создании системы видеонаблюдения необходим целый ряд определенного оборудования. Для этого сегодня существует огромное количество различных магазинов по продаже специальной техники для организации

    Заказ такси в Киеве от 30 грн
    Если неудачи в жизни для вас нормой, в первую очередь необходимо проанализировать, откуда растут корни ваших проблем. Скорее всего, вы человек неорганизованный и постоянно опаздываете. В мегаполисе это

    Тайверб Тайверб
    Прочие ингредиенты: целлюлоза микрокристаллическая, повидон К30, натрия крахмалгликолят, магния стеарат, opadry желтый YS-1-12524-A. Лапатиниб содержится в форме лапатиниба дитосилата моногидрата. № UA/8847/01/01

    Шкафы купе в наличии
    Известно, что шкафы-купе поступили в ассортимент магазинов корпусной мели более 20 лет назад и сразу же заняли ведущие роли среди другой мебели. Их используют в помещениях, где разместить стандартный

    Копаксон
    Конкурентно замещает антигены миелина в местах связывания с молекулами главного комплекса гистосовместимости класса II на поверхности клеток, несущих антигены. Следствием этого является активация образования

    Begin.com.ua/
    Подбором персонала занимается HR-менеджер, но часто такая должность отсутствует в компании, и его обязанности берут на себя или директор, или его заместитель. Если выбор сотрудников окажется неправильным 

rss