Ich habe also keine Erfahrung mit Apache-Servern und LAMP-Stacks im Allgemeinen.
Ich arbeite an einer Homepage, die mithilfe eines MySQL-Servers die Raumtemperatur und einige andere Funktionen anzeigen soll.
Ich habe einen Raspberry Pi mit einer USB-Kamera an meiner Haustür und möchte ihn auf meinen Apache-Server streamen, um den Live-Feed der Kamera auf meiner Website anzuzeigen. Auf dem PC läuft Ubuntu 16.04.5.
Antwort1
1. mjpg-streamer auf dem Raspberry Pi installieren
Installieren Sie Git:sudo apt-get install git
Klonen Sie mjpg-streamer-experimental: git clone https://github.com/jacksonliam/mjpg-streamer/tree/master/mjpg-streamer-experimental
– Die experimentelle Version hat auf meinem Raspberry Pi bei mir viel besser funktioniert als die normale, deshalb empfehle ich, sie zu verwenden.
Kompilieren Sie es:cd mjpg-streamer-experimental && ./config && make
Erstellen Sie ein Skript, das das Streaming bei jedem Start automatisch startet:nano onboot.sh
#!/bin/bash
cd /home/pi/mjpg-streamer-experimental
./mjpg_streamer -i "input_uvc.so -d /dev/video0 -t pal -r 720x576" -o "output_http.so -w ./www -p 8740"
Ersetzen Sie es video0
durch Ihre Videoschnittstelle, pal
durch ntsc
wenn Ihre Kamera es verwendet ntsc
und 720x576
durch die Auflösung Ihrer Kamera. Drücken Sie dann CTRL+, Oum die Datei zu speichern.
Sie können es jetzt testen, um bash ./onboot.sh
festzustellen, ob das Streaming funktioniert.
Wir werden jetzt verwenden cron
(sollte vorinstalliert sein), damit dieses Skript bei jedem Booten ausgeführt wird:
Führen Sie es aus crontab -e
, um die Crontab des aktuellen Benutzers zu bearbeiten, und fügen Sie die folgende Zeile dort ein:
@reboot bash /path/to/mjpg-streamer-experimental/onboot.sh
Erneut CTRL+ Oum die Datei zu speichern und anzuwenden.
2. Auf Ihrem Apache-Webserver
Das ist ganz einfach. Sie können auf die Schnittstelle von mjpg-streamer von http://<your-raspberry-pi-IP>:8740
jedem Rechner im Netzwerk aus zugreifen. Um den Live-Stream in Ihre Website einzubetten, fügen Sie einfach den folgenden Code auf der Site ein, auf der der Stream laufen soll:
<img src="http://<raspberry-pi-IP>:8740/?action=stream" />