Raspberry Pi 最新版RPiPlayでミラーリング(iPhone:Mac拡張ディスプレイ)

皆様こんにちは
いつの日か買って放置されていたラズパイ にハマり始めています。
忙しくてラズパイ に逃げているだけですがね
楽しく没頭できる事はいい事です!!!

今までした事
・sambaを用いたローカルファイル共有
をしました。
問題点としましては、音がHDMIからしかなぜか出力されないことです。
いろいろ調べてみたものの、サウンドカードがHDMIしか表示されないなど、同じ感じの方が見つけられず保留状態。
動画プレイヤーみたいなソフトからだとイヤホンジャックからの出力も指定できる。


本題ここから

さて、今回はメモ程度に書いていきます。
この記事以外の日本語の記事だとうまくできなかったので、他の方がそうならないために書いていきます。

この記事を読んでできる事

・iPhoneの画面をミラーリング

・Macの画面のミラーリング

・Macの画面を拡張(ワイヤレス 拡張ディスプレイ)

他記事読んでいると、エラーが結構起きるらしい。

ではやって行こう  (>_<!


使用したもの
・ラズパイ2(2以降ならなんでもいい、それ以前だと性能的にギリギリかも)
・iPhone XR
・他はネットなどなど(基本は上のものを使用)

ダウンロードとインストール
下の通りに実行していただければ問題なくできると思います。

$git clone https://github.com/FD-/RPiPlay.git(ダウンロード)
$cd RPiPlaysudo (ディレクトリの移動)

(以下、必要なパッケージをインストールする)
$apt-get install cmake
$sudo apt-get install libavahi-compat-libdnssd-dev
$sudo apt-get install libplist-dev
$sudo apt-get install libssl-dev
(ここまでパッケージのインストール)

$mkdir build(buildという名前のディレクトリを作成)
$cd build(buildというディレクトリに移動)
$cmake ..
$make

これで完成!!


RPiPlayの実行と終了方法

$ ./rpiplay(実行1(AirPlay使用していない時、真っ暗画面)
$./rpiplay -n MyAirPlay -b auto(実行方法2:おすすめ。)(AirPlayを使用してない時にデスクトップ表示させる)

終了方法は、Ctrl + Cでいいのかな?
正しい方法はいまいちわかりませんw

ここで注意して欲しいのが、ラズパイとiPhoneまたはMacが同じネットワークにつながっていること。

オプション

RPiPlay 1.2: An open-source AirPlay mirroring server for Raspberry Pi
Usage: ./rpiplay [-n name] [-b (on|auto|off)] [-r (90|180|270)] [-l] [-a (hdmi|analog|off)]
Options:
-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
-l                    Enable low-latency mode (disables render clock)
-a (hdmi|analog|off)  Set audio output device
-d                    Enable debug logging
-v/-h                 Displays this help and version information

音出したい場合:$./rpiplay -a (hdmi | analog | off)
MacやiPhoneに表示させる名前の変更:$./rpiplay -n [名前]
などなど...

自分の実行方法

$./rpiplay -b auto -a analog-b autoで使用していない時にデスクトップを表示させる。-a analog でイヤホンジャックから音を出力。​

多分できないこともいろいろあると思うけど、楽しいじゃんww

結果

すんなりインストールできました。
正直言って、ミラーリングの遅延があり、音声も途切れ途切れなので、自分の環境では拡張ディスプレイとして、web見るくらいの用途でしか使えないでしょう。
しかし、ラズパイで画面のミラーリングができる魅力は大変ありますね。
ラズパイ4にしてネットワークもっと早いものに交換したら、うまくいくのかもしれませんね。
ここまで読んでいただいてありがとうございました。

今後は遅延のない音声だけのストリーミングを制作したいと思います。


わからないことがあればコメントでもなんでも、お願いします!
コメントしてくれるとほんと嬉しいよ(><!

てことで、間違っている箇所もあるかもしれません。
いろいろ忙しくて箇条書き程度でしたが、参考になれば幸いです。


追記1

偶然ですが音質向上が達成できました。
こちらの記事も見ていただければ幸いです。

追記2

ラズパイが起動した時に実行されるようにしたい.

$sudo emacs /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 -b auto
StandardOutput=inherit
StandardError=journal

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable rpiplay
sudo systemctl start rpiplay

これで電源を入れた時にAirPlayが自動で使えるようになる。

参考:
https://github.com/FD-/RPiPlay
https://qiita.com/SogoK/items/6a32eb13769c081680d3

この記事が気に入ったらサポートをしてみませんか?