Raspberry Pi používam na viacero vecí, ale už dlho mi chýbala možnosť prezerať si vďaka nemu fotky z mobilu na TV. Pri iPhone je jediná možnosť, ako to dosiahnuť, použitie AirPlay.

AirPlay je uzavretý protokol podporovaný len na Apple zariadenia a pár novších TV. Našťastie však existuje viacero open-spurce projektov, ktoré tento protokol implementujú vďaka reverznému inžinierstvu.

RPiPlay

RPiPlay je open-source implementácia servera pre AirPlay mirroring. Ak ho nainštalujete na Raspberry Pi pripojené k TV, môžete na TV zobrazovať obsah obrazovky svojho iOS zariadenia.

Inštalácia

Pred inštaláciou RPiPlay je nutné nainštalovať niekoľko závislostí

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

Po inštalácii závislostí si naklonujte aktuálne zdrojové kódy z Githubu

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

Vytvorte build adresár a RPiPlay skompilujte

mkdir build
cd build
cmake ..
make

Skompilovanie RPiPlay zo zdrojových kódov nejaký čas potrvá, hlavne na starších verziách Raspberry Pi, ako moje Raspberry Pi 2.

Spustenie

Po úspešnej kompilácii môžete spustiť výslednú binárku rpiplay s požadovanými parametrami.

Odporúčam nastaviť meno vášho AirPlay servera (-name RPi), automatické zobrazovanie čierneho pozadia (-b auto), aby neprekrylo napríklad spustené Kodi, keď AirPlay práve nepoužívate

./rpiplay -name RPi -b auto -a hdmi

Po úspešnom spustení by ste na svojom iOS zariadení mali vidieť AirPlay mirroring server so zadaným názvom a bez problémov sa na neho pripojiť.

Automatické spúšťanie

Aby ste nemuseli RPiPlay spúšťať ručne, môžete si vytvoriť systemd službu

sudo nano /etc/systemd/system/rpiplay.service

Dôležité je hlavne správne vyplniť cestu k rpiplay binárke

[Unit]
Description=Airplay Daemon
Wants=network-online.target
After=network-online.target

[Install]
WantedBy=multi-user.target

[Service]
Type=simple
Restart=always
RestartSec=1
User=pi
ExecStart=/home/pi/RPiPlay/build/rpiplay -name RPi -b auto -a hdmi

[Install]
WantedBy=multi-user.target

Službu potom spustíte príkazom

sudo systemctl start rpiplay

Ak chcete, aby sa služba automaticky spúšťala pri každom štarte Raspberry Pi, spustite príkaz

sudo systemctl enable rpiplay