Hi Leute,
ich möchte einmal zeigen wie ich einen dauerhaften YouTube Livestream aus meinem Vogelhaus realisiert habe...
Dabei haben mir natürlich einige Leute hier aus dem Forum geholfen - nochmal vielen Dank dafür
Zu Beginn hier direkt mal der Live-Stream aus dem Vogelhaus/Eichhörnchenhaus - klick auf das Bild:
Dafür habe ich folgende Hardware verwendet:
- einen selbst-gebauten Nistkasten (eigentlich für Eichhörnchen konzipiert)
- einen Raspberry Pi 3 B+ [Anzeige]
- ein AC-DC Netzteil Modul (Eingang 85V-264V; Ausgang 5V 2A 10W) [Anzeige]
- ein Infrarot-Kamera-Modul mit integriertem 130° Weitwinkel-Objektiv [Anzeige]
Los gehts:
Als erstes erstellen wir uns einen YouTube-Account und lassen diesen bestätigen - dazu klicken wir auf das Kamera-Symbol oben rechts und dort auf "Livestream starten":
Diese Bestätigung (z.B. übers Handy) wird nach 24 Stunden aktiv und ist zwingend notwendig um überhaupt einen Live-Stream erstellen zu können...
Nach der Bestätigung, melden wir uns wieder bei YouTube an und starten einen Livestream indem wir im Browser folgende Adresse eingeben:
www.youtube.com/live_dashboard
Auf dem Livestream-Dashboard füllen wir nun alles entsprechend aus und scrollen anschließend nach unten und kopieren unter ENCODER-EINRICHTUNG den "Name/Schlüssel für den Stream". Diesen Schlüssel werden wir beim erstellen des Skripts wieder benötigen.
Die Dashboard-Seite lassen wir geöffnet...
Der Raspberry Pi wurde bereits mit dem aktuellen Raspbian ausgestattet und anschließend die Kamera-Schnittstelle sowie SSH und VNC aktiviert:
Dann erstellen wir im Raspberry Pi eine Skript-Datei mit dem folgenden Befehl im Terminal:
sudo nano /usr/local/bin/stream_start.sh
...und kopieren den folgenden Inhalt dort hinein:
#!bin/sh
raspivid --output - --timeout 0 --framerate 30 --bitrate 4500000 --sharpness 50 --contrast 20 --mode 5 -a 8 | avconv -re -ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero -f h264 -i - -vcodec copy -acodec aac -ab 128k -g 50 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/wwww-xxxx-yyyy-zzzz
Achtung: Hier benötigen wir den YouTube-Schlüssel wieder. Dieser wird am Ende des Befehls eingesetzt und ersetzt das "wwww-xxxx-yyyy-zzzz"
Speichern und schließen ("Strg + x" > "j" > "Enter")
Dann machen wir die Skript-Datei ausführbar mit
sudo chmod 755 /usr/local/bin/stream_start.sh
Dann erstellen wir eine Service-Unit mit:
sudo nano /lib/systemd/system/my_raspivi.service
...und kopieren den folgenden Inhalt dort hinein:
[Unit]
SourcePath=/usr/local/bin/stream_start.sh
Description=Starts the raspivid daemon
DefaultDependencies=no
After=network-online.target remote-fs.target rc-local.service
Requires=systemd-networkd.service network-online.target
Wants=network-online.target systemd-networkd-wait-online.service
ConditionPathExists=/usr/local/bin/stream_start.sh
[Service]
Type=simple
#User=pi
RemainAfterExit=yes
ExecStart=/bin/sh -c "/usr/local/bin/stream_start.sh"
ExecStop=/bin/sh -c "/bin/kill -15 $(pidof raspivid); exit 0"
Restart=on-failure
RestartForceExitStatus=1 2 126 255
IgnoreSIGPIPE=false
[Install]
WantedBy=multi-user.target
Alles anzeigen
Speichern und schließen ("Strg + x" > "j" > "Enter")
Da YouTube den Livestream gelegentlich kurz trennt starten wir die Service Unit über Crontab aller 2 Stunden neu mit folgenden Befehlen:
sudo nano /etc/crontab
Dort fügen wir an dass Ende folgende Zeile
Speichern und schließen ("Strg + x" > "j" > "Enter")
Jetzt starten wir die Service Unit mit folgenden Befehlen:
sudo systemctl daemon-reload
sudo systemctl enable my_raspivi.service
sudo shutdown –r now
Achtet darauf, dass keine anderen Prozesse im Hintergrund auf die Kamera zugreifen (z.B. Motion)
Nach dem Neustart sollte der Live-Stream im YouTube-Live-Dashboard auf "LIVE" geschaltet werden und der Live-Stream ist aktiv
GESCHAFFT!!!
Den aktuellen Status der Service Unit könnt ihr übrigens mit folgendem Befehl erfahren:
systemctl status my_raspivi.service
Wer noch etwas über das Vogelhaus/Eichhörnchenhaus bzw. ihre Bewohner erfahren möchte, besucht mich gern auf meiner Seite...
Sollte etwas nicht funktionieren, oder ich irgendetwas vergessen haben, schreibt mir oder hinterlasst einen Kommentar.
Gruß Thomas