RPiPlay (2)

以下のマシンにインストールしてテストしました.

  • Raspberry Pi 3 Model B (RAM 1GB), 有線LAN接続(100Mbps), 以下RPi3
  • Raspberry Pi 3 Model B+ (RAM 1GB), Wi-Fi 5GHz, RPi3+
  • Raspberry Pi 4 Model B (RAM 4GB), Wi-Fi 5GHz, RPi4

インストールはどれも問題なく終わり,ユーザーのコンソールから,

/opt/bin/rpiplay -a hdmi -n 適当な名前 -b auto -l

で走らせます.

同じ家庭内LAN内で5GHzのWi-FiにつないでいるiPhone 14から画面ミラーリングをかけます.

Raspberry Piにつなぐモニターは,1080iの地デジテレビで,Raspberry Piとつなぐと720pとなります.

どのモデルも画面ミラーリングが動きますが,RPi3とRPi3+では映像の遅延がどんどん増していき,使い物になりません.

RPi4では遅延は増しませんが,時間の進みがぎくしゃくします.コンソールからのコマンドもしばらく無反応になるなどこの固体に限ってのWi-Fi接続の問題があるのかもしれません.日常的に使うには,有線接続にしないといけないと思います.

ということで簡単なテストのまとめですが,CPUの処理能力的にRaspberry Pi 4 Model B以上でないと使い物にならないようです.

1280×720.

RPiPlay

iPhoneをいじっていて,時々大きなスクリーンで見たい,と思うことがあります.そのために,Lightning-HDMI変換アダプターも持ってますが,ごわついたHDMIケーブルでモニターをつなぐのでは,iPhoneの持ち方や起き方の自由度が減り,いいもんじゃありません.

AirPlayでMacintoshにつなげばスマートですが,画面がシェアできるのはMacbook系やiMac限定で,手持ちのMac miniではできません.

そういうことをLinuxで,あわよくばRaspberry Pi (以下RPi)でやろうとする人はいるだろうなと,検索するとありました.

インストール方法はあちこちにあるので詳しくは書きませんが,必要なライブラリーや開発環境(dev)をインストールし,RPiPlayのソースをbuildするだけです.

必要なパッケージ

cmake  libavahi-compat-libdnssd-dev  libplist-dev  libssl-dev  libgstreamer1.0-dev  libgstreamer-plugins-base1.0-dev

Buildの手順

cd  ソースをいじるディレクトリー
git clone https://github.com/FD-/RPiPlay.git
cd RPiPlay
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt ..
make -j4
sudo make install

インストール先を/optにするのは,筆者の宗教的理由からで,指定しなければ/usr/localになります.このrpiplayのbuildではrpiplayというバイナリーだけができますので,あえてmake installを実行せず,手で好きな場所にコピーしても問題なしです.

実行

はまったのは画面表示だから当然X(もしくはWayland)下で動くものだと思い込んでいれこれやってうまくいかなかったところ,そうではなくGUIを止めて動かさなければなりません.

当分GUIを使わないでもいいなら,

sudo systemctl set-default multi-user.target

としといたほうが楽です.このあとrebootするか,もしくは,

sudo systemctl stop lightdm

です

このあと,

/opt/bin/rpiplay -n 適当な名前 -b auto

とします.

戻すときは,
sudo systemctl set-default graphical.target

でrebootです.