Raspberry PiでAirplayをする方法メモ(RPiPlay)

Raspberrypiを更新

パッケージの更新

sudo apt-get update
sudo apt-get upgrade

OSのアップデート

sudo apt-get install rpi-update
sudo rpi-update
sudo reboot

RPiPlayの設定

以下のコードを使う.

https://github.com/FD-/RPiPlay

必要なパッケージのインストール

sudo apt-get install cmake
sudo apt-get install libavahi-compat-libdnssd-dev
sudo apt-get install libssl-dev
sudo apt-get install libplist-dev

他の人のやり方だと最後の行なかったけど,自分の環境だと必要だった,

環境

PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

RPiPlayのインストール

git clone https://github.com/FD-/RPiPlay.git
cd RPiPlay

ビルド

mkdir build
cd build
cmake ..
make

buildディレクトリにrpiplayという実行ファイルが作られる.

起動

./rpiplay

起動時に以下の内容を引数に取り,詳細な設定を行うことができる.

# ネットワーク名の設定
-n name: Specify the network name of the AirPlay server.

# 黒い背景表示
-b (on|auto|off): Show black background always, only during active connection, or never.

# 画像の回転角度
-r (90|180|270): Specify image rotation in multiples of 90 degrees.

# 画像の反転
-f (horiz|vert|both): Specify image flipping.

# 低遅延モード
-l: Enables low-latency mode. Low-latency mode reduces latency by effectively rendering audio and video frames as soon as they are received, ignoring the associated timestamps. As a side effect, playback will be choppy and audio-video sync will be noticably off.

# オーディオ出力デバイス
-a (hdmi|analog|off): Set audio output device

# video renderer
-vr renderer: Select a video renderer to use (rpi, gstreamer, or dummy)

# audio renderer
-ar renderer: Select an audio renderer to use (rpi, gstreamer, or dummy)

# デバックモード
-d: Enables debug logging. Will lead to choppy playback due to heavy console output.

# ヘルプとバージョン情報
-v/-h: Displays short help and version information.

Raspberrypi起動時に実行

以下のディレクトリにサービスファイルを作成する.

/etc/systemd/system/

rpiplay.service

[Unit]
Description=RPi Play
After=network.target
StartLimitIntervalSec=30

[Service]
Type=simple
Restart=always
RestartSec=10
User=pi
ExecStart=/home/pi/RPiPlay/build/rpiplay -n ISC@AppleTV -b auto -a hdmi
StandardOutput=inherit
StandardError=journal

[Install]
WantedBy=multi-user.target

参考

Tags: