LoginSignup
22
30

More than 5 years have passed since last update.

Raspberry Piにshairport-syncをインストールする

Last updated at Posted at 2015-11-05

Raspberry PiをAirPlay対応の音楽再生機にするため、mikebrady/shairport-syncをインストールしました。
shairportには複数の派生バージョンがあるため、ご注意ください。

1. 環境

Raspberry Piの本体は、余っていたModel B Rev.2を使用し、Linuxディストリビューションには、公式のRaspbian(Jessie)を使用しました。

pi$ uname -a
Linux raspberrypi 4.1.7+ #817 PREEMPT Sat Sep 19 15:25:36 BST 2015 armv6l GNU/Linux

pi$ cat /etc/debian_version
8.0

また、試験用にUSBスピーカー「Olasonic TW-S7」を使用しました。

2. インストール

公式サイトのREADME.mdに従うだけで、問題なくインストールできました。
以下の内容は、Raspberry Pi向けに余分なものを排除した感じです。
基本的な流れは、以下の通り。

  1. 必要なライブラリのインストール
  2. ソースコードのクローン、ビルド
  3. デーモン用のユーザ、グループの準備
  4. インストール

今回は最新版(HEAD)をインストールしましたが、安定版が良ければタグ名などでgit checkoutしてください。

# 必要なライブラリをインストールする
pi$ sudo apt-get update
pi$ sudo apt-get install libshairport2 autoconf libtool libdaemon-dev libasound2-dev libpopt-dev libconfig-dev avahi-daemon libavahi-client-dev libssl-dev libsoxr-dev

# ソースコードをクローンし、ビルドする
pi$ cd ~
pi$ git clone https://github.com/mikebrady/shairport-sync.git
pi$ cd shairport-sync
pi$ autoreconf -i -f
pi$ ./configure --with-alsa --with-avahi --with-ssl=openssl --with-metadata --with-soxr --with-systemd
pi$ make
pi$ ./shairport-sync --version
2.6-openssl-Avahi-ALSA-soxr-metadata

# デーモンを動かすためのユーザ、グループを作成する
pi$ sudo groupadd -r shairport-sync
pi$ sudo useradd -r -M -g shairport-sync -s /usr/bin/nologin -G audio shairport-sync

# インストールする
pi$ sudo make install

# systemdへの登録状況を確認し、有効化する
pi$ systemctl status shairport-sync
● shairport-sync.service - ShairportSync AirTunes receiver
  Loaded: loaded (/usr/lib/systemd/system/shairport-sync.service; disabled)
  Active: inactive (dead)
pi$ sudo systemctl enable shairport-sync
Created symlink from /etc/systemd/system/multi-user.target.wants/shairport-sync.service to /usr/lib/systemd/system/shairport-sync.service.
pi$ systemctl status shairport-sync
● shairport-sync.service - ShairportSync AirTunes receiver
  Loaded: loaded (/usr/lib/systemd/system/shairport-sync.service; enabled)
  Active: inactive (dead)

3. 設定

設定はお好みで。標準のshairport-sync.conf内に詳しい説明があります。
今回の設定内容は以下の通り。

  • 表示名は「raspberrypi」(iTunesなどに表示される名前)
  • 再生に使用するALSAオーディオデバイスはplughw:1
pi$ cd /etc
pi$ sudo mv shairport-sync.conf shairport-sync.conf.original
pi$ sudo sh -c 'cat << EOF > shairport-sync.conf
general =
{
  name = "raspberrypi"
}

alsa =
{
  output_device = "plughw:1"
  mixer_device  = "plughw:1"
}
EOF'

4. 起動

以下のコマンドで起動します。iTunesなどにAirPlayの再生先として表示されれば成功です。

pi$ sudo systemctl start shairport-sync

5. 参考

22
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
30