• Blog
  • Raspberry Pi
  • Über mich
  • Projekte
  • devowl.io

Raspberry Pi: Kamera Stream Broadcast realisieren

24. Dezember 2013
Raspberry Pi
249 Kommentare

Seit geraumer Zeit verfügt der Raspberry Pi über ein Kamera Modul. Dieses kann neben Fotos auch Videos in bis zu 1080p FullHD bei 30 FPS aufzeichnen. Natürlich wäre es auch schön, wenn man die Aufnahme der Kamera als Video-Livestream an einem beliebigen Rechner sehen könnte. Dazu bedienen wir uns raspivid in Kombination mit ffmpeg und crtmpserver. Hierzu bauen wir mittels nginx und JWplayer noch ein kleines Webfrontend, über das der Stream aufgerufen werden kann. Vorab sei gesagt, dass ich lange daran gearbeitet habe, eine stabile Lösung zu finden, die ein wirkliches Video und keine paar Fotos in der Sekunde als Stream anzeigen kann. Diese Lösung ist nicht ganz einfach, benötigt zur Einrichtung einige Zeit, und bietet das Videomaterial nur in 960×540 Pixel an. Wie man einen Stream/Broadcast mithilfe des Raspberry Pi Kamera Moduls umsetzt, erkläre ich im Folgenden.

Voraussetzung: Raspbian oder vergleichbare Distribution installiert, welche aktuell ist wie auch angeschlossenes und in raspi-config aktiviertes Kamera-Modul

Step 1 (optional)

Zunächst sollten wir, sofern gewünscht, das Licht, welches an dem Raspberry Pi Kamera Modul leuchtet wenn dieses aufnimmt, deaktivieren. Dazu müssen wir in der Datei /boot/config.txt einen Parameter setzen und anschließend den Raspberry Pi neustarten.

sudo nano /boot/config.txt

disable_camera_led=1

Anschließend folgenden Befehl ausführen

sudo reboot

Step 2

Wir installieren nun ein paar Pakete, die für die kommenden Schritte benötigt werden.

sudo apt-get install libjpeg62-dev cmake subversion git screen ffmpeg

Step 3

Jetzt installieren wir ffmpeg. Bzw. deinstallieren es zunächst, da die Version, die über den Paketmanager apt-get verfügbar ist, für unsere Zwecke nicht geeignet ist.

sudo apt-get remove ffmpeg

Step 3

Nun laden wir mittels git den Sourcecode der richtigen Version von ffmpeg herunter.

cd /usr/src
sudo git clone git://source.ffmpeg.org/ffmpeg.git

Step 4

Wir müssen den Sourcecode nun kompilieren. Da dies ca. 5-6 Stunden dauert (kein Tippfehler, dauert wirklich so lange) öffnen wir eine Instanz von Screen, damit wir, sofern wir den Raspberry Pi mittels SSH ansteuern, den Terminal nicht diese ganze Zeit offen haben müssen, sondern zwischendrin z.B. etwas Sport machen können und den Computer derweil schlafen schicken können 😉

screen
[Enter]

cd ffmpeg
sudo ./configure
sudo make && sudo make install

Step 5

Nach der Sport- oder längeren Kaffepause rufen wir, sofern wir den Terminal geschlossen hatten, über folgenden Befehl den angelegten Screen wieder auf. Dort sollte folgende Ausgabe zu sehen sein, welche signalisiert, dass das Kompilieren erfolgreich abgeschlossen wurde.

screen -r

Ausgabe bei erfolgreichem Kompilieren

[...]
INSTALL libavutil/xtea.h
INSTALL libavutil/lzo.h
INSTALL libavutil/avconfig.h
INSTALL libavutil/ffversion.h
INSTALL libavutil/libavutil.pc
Step 6

Wir müssen nun crtmpserver installieren. Diese Software ist ein Streaming Server, der es ermöglicht, die Aufnahme des Raspberry Pi Kamera Moduls direkt zu verarbeiten und in einen Stream zu packen.

sudo apt-get install crtmpserver

Step 7

Nun müssen wir noch ein paar Konfigurationen des crtmpserver in der Datei /etc/crtmpserver/applications/flvplayback.lua anpassen. In dem Editor nano können wir mittels STRG + X, Y und Enter speichern.

sudo nano /etc/crtmpserver/applications/flvplayback.lua

validateHandshake=true,
keyframeSeek=true,
seekGranularity=1.5, --in seconds, between 0.1 and 600
clientSideBuffer=12, --in seconds, between 5 and 30

ersetzen durch

validateHandshake=false,
keyframeSeek=false,
seekGranularity=0.1,
clientSideBuffer=30,
Step 8

Jetzt müssen wir, damit die geänderten Einstellungen wirksam werden, crtmpserver neustarten.

sudo service crtmpserver restart

Step 9

Wir legen nun ein kleines Script (zwei Dateien) im Homeverzeichnis des Benutzers an. Mit diesem können wir später die Videoaufnahme und den Stream der Videoaufnahme starten.

cd ~
nano video-stream.sh

Inhalt der Datei

#!/bin/bash

raspivid -t 0 -w 960 -h 540 -fps 25 -b 500000 -o - | ffmpeg -i - -vcodec copy -an -f flv -metadata streamName=myStream tcp://0.0.0.0:6666

nano video-stream-screen.sh

Inhalt der Datei

#!/bin/bash

screen -dmS VideoStream ./video-stream.sh

echo "Video stream started"
echo "To view the stream console output use the following command:"
echo "screen -r VideoStream"
Step 10

Damit wir die Dateien später ausführen können weisen wir diesen nun die benötigten Rechte zu.

chmod +x video-stream.sh
chmod +x video-stream-screen.sh

Step 11

Jetzt ist es an der Zeit, sich um die Ausgabe des Video Streams zu kümmern. Wir möchten in diesem Tutorial den Stream des Videos im Browser aufrufen. Dazu installieren wir nun zunächst den Webserver nginx. Wie man dies bewerkstelligt erklärte ich bereits in der Anleitung Webserver Nginx installieren (bis einschließlich Step 3 zu bearbeiten).

Step 12

Zum Abspielen des Video Streams benötigen wir einen webbasierenden Videoplayer. Ich verwende hierfür der Einfachheit und Komfortabilität halber den Player JWplayer. Hierzu müssen wir uns auf der Webseite des Herstellers kostenlos registrieren. Haben wir das Account aktiviert und sind eingeloggt, können wir einen Video Player anlegen. Dabei wählen wir als Quelle Your Website und tragen in dem Feld Media File die Adresse rtmp://IP/flvplayback/flv:myStream.flv (IP muss durch die IP-Adresse des Raspberry Pis bzw. wenn der Stream auch von Außerhalb des eigenen Netzwerkes aufgerufen werden soll durch die DynDNS Domain ersetzt werden) ein. In dem darauffolgenden Schritten können wir noch etwas am Design und den Einstellungen des Players spielen.

Am Ende sollten wir zwei Code Schnippsel erhalten, wie in dem folgenden Screenshot zu sehen.

JWplayer anlegen

Step 13

Wir haben nun alle Teile zusammen, die wir für die Ausgabe des Video Streams benötigen. Daher legen wir nun im Webroot Verzeichnis (das Verzeichnis des Webservers, dass im Browser aufgerufen werden kann) ein Verzeichnis mit einer Datei an, die den Player zum Abspielen des Video Streams beinhaltet (Code Schnippsel von oben müssen eingesetzt werden.

cd /usr/share/nginx/www/
sudo mkdir video-stream
sudo nano video-stream/index.html

Inhalt der Datei (beide Codestelle unter <!– JWplayer –> durch die generierten Codes ersetzen)

<!DOCTYPE html>
<html lang="de">
<head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        <title>Demo Title</title>

        <!-- JWplayer -->
        <script src="https://jwpsrv.com/library/z5V7TllCEeOs8iIACqoGtw.js"></script>
</head>
<body>

<!-- JWplayer -->
<div id='playerZaIZzFythhhe'></div>
<script type='text/javascript'>
    jwplayer('playerZaIZzFythhhe').setup({
        file: 'rtmp://192.168.178.28/flvplayback/flv:myStream.flv',
        image: 'https://www.longtailvideo.com/content/images/jw-player/lWMJeVvV-876.jpg',
        width: '100%',
        aspectratio: '16:9',
        fallback: 'false',
        primary: 'flash'
    });
</script>

</body>
</html>
Step 14

Wir müssen die neu angelegten Dateien nun noch dem Benutzer www-data zuweisen, sodass sie sicher aufrufbar sind.

sudo chown -R www-data:www-data /usr/share/nginx/www/video-stream

Step 15

Jetzt können wir den Video Stream mittels folgenden Kommandos starten. Darauffolgend können wir den Player unter http://IP/video-stream/ (IP durch IP-Adresse bzw. DynDNS Domain des Raspberry Pis ersetzen) aufrufen und den Stream der Kamera betrachten.

cd ~
./video-stream-screen.sh

Step 16 (optional)

Möchten wir, dass der Video Stream automatisch beim Hochfahren des Raspberry Pis angeworfen wird, so können wir folgende Zeile am Ende der Crontab in eine neue Zeile eintragen.

crontab -e

@reboot cd ~ && ./video-stream-screen.sh
Aufnahme stoppen

Mit Hilfe des folgenden Kommandos können wir den Stream auch wieder stoppen.

screen -S VideoStream -X quit

Yeha, fertig! Nach einiger Arbeit sollte nun ein Stream des Videos von dem Raspberry Pi Kamera Modul laufen. Viel Spaß beim Beobachten 😉

Falls der Stream im Browser des Android Smartphones nicht laufen solle empfiehlt es sich die App RTMP LIVE Stream Player zu verwenden. In dieser muss man als Adresse rtmp://IP:57999/live (IP durch IP-Adresse oder DynDNS Domain des Raspberry Pis ersetzen) angeben – danke an petit_miner für den Tipp in den Kommentaren.

Zugriff außerhalb des eigenen Netzwerks
Portfreigabe im Router

Soll der soeben installierte Dienst auch außerhalb des eigenen Netzwerkes verfügbar sein, so müssen folgende Ports im Router freigegeben werden. Wie man freigibt, beschrieb ich in dem Artikel Portforwarding bei Fritz!Box und Speedport.

1935
80
57999 (für Android App)
Quellen: ppumkin auf Stackexchange, Nick-Horne.com

249 Kommentare. Hinterlasse eine Antwort

  • Detlef Braas
    Dezember 27, 2013 6:51 pm

    Danke für die Anleitung. Leider funktioniert die ganze Sache bei mir nicht wirklich. Das Kamerabild erscheint auf dem Bildschirm des Raspberry Pi, der Webserver meldet sich auch ordentlich, allein die Übertragung mit JWplayer funktioniert nicht. Hat sich da bei den neuesten Updates schon wieder etwas verändert?

    PS Ansonsten ein toller Blog

    Antworten
    • Jan Karres
      Dezember 28, 2013 9:52 pm

      Ich kann leider nur aus der Erfahrung von Anfang Dezember sprechen als ich das Tutorial schrieb. Hast du denn Step 12 die IP/DynDNS so verändert, dass du damit im Browser den Webserver erreichen kannst? Wäre jetzt noch meine Idee was schief laufen könnte.

      Antworten
    • markus
      Februar 8, 2016 9:09 am

      hallo jan,

      habe das neue raspbian jessie installiert und bin grad dabei, die schritte abzuarbeiten. habe dabei festgestellt, dass sich beim schritt 13 nginx server der pfad verändert hat. die web root liegt nicht mehr unter /usr/share/nginx/www/ sondern unter /var/www/html.

      das ist eigentlich kein problem, nur kann ich jetzt nicht mehr über ftp auf das verzeichnis zugreifen und die html dateien tauschen wie vorher auf das andere. permission denied.

      was ist notwendig, um dies wieder zu ermöglichen?

      ciao markus

      Antworten
  • KWDE
    Dezember 28, 2013 4:19 pm

    Zu Schritt 7:
    Hier fehlt jeweils hinter dem Code nach 0,1 und 30 ein Komma.

    Sprich so müsste es aussehen:
    validateHandshake=false,
    keyframeSeek=false,
    seekGranularity=0.1,
    clientSideBuffer=30,

    Antworten
    • Jan Karres
      Dezember 28, 2013 9:55 pm

      Dankeschön. Habe es verbessert 🙂

      Antworten
  • Detlef Braas
    Dezember 29, 2013 4:29 pm

    Danke für die Antwort. Das Projekt läuft nun bei mir, nachdem ich noch einmal von vorne begonnen habe. Beim ersten Versuch fiel mir auf, dass in Step 3 ffmpeg in der Originalversion des Betriebssystems nicht vorhanden ist. Also habe ich nun beim zweiten Versuch zunächst einmal ffmpeg mit „apt-get install ffmpeg“ installiert, um es anschließend sofort wieder zu deinstallieren. Wie oben erwähnt, läuft jetzt alles zur Zufriedenheit. Ob die Installation von ffmpeg nun der Grund für mein Scheitern beim ersten Versuch war, kann ich natürlich nicht verifizieren.
    Guten Rutsch ins neue Jahr und noch viele weitere gute Ideen für den Blog

    Antworten
    • Jan Karres
      Dezember 30, 2013 11:46 pm

      Ich würde sagen, dass das der Grund ist, da durch die Installation die ganzen Abhängigkeiten, die auch die selbst kompilierte Version von ffmpeg benötigt werden, auf den Raspberry Pi installiert werden.

      Antworten
  • Jürgen Linse
    Januar 3, 2014 1:10 pm

    Hallo Jan, ich mag Deine Anleitungen, weil die bei mir immer funktionieren, wenn man
    alles so macht wie beschrieben 😉 Aber nachdem ich „Broadcast“ installiert habe, funktioniert Raspberry Pi: Als Überwachungskamera einsetzen nicht mehr. Der RPI war ansonsten frisch aufgesetzt Kann es sein, das die beiden Programme sich beissen ? Ich spiele gerade eine Datensicherung ein, damit Das Überwachungstool wieder läuft, Broadcast wäre auch zusätzlich auch ganz toll. Gruß Jürgen

    Antworten
    • Jan Karres
      Januar 3, 2014 9:13 pm

      Wie du schon vermutest hast beißt sich das. Die Kamera kann nur eine Aufgabe zur selben Zeit ausführen. Sprich du musst dich für eine der beiden Varianten entscheiden.

      Antworten
  • tobb
    Januar 3, 2014 3:24 pm

    Hallo Jan, ich konnte es nach Deiner Anleitung bei dem ersten Versuch gut umsetzen, super Anleitung! Nun habe ich folgendes Problem. Der Stream steht auf dem Kopf. Kamera drehen bringt nichts da auch dann seitenverkehrt. Bei anderne Programmen kann es per Software geändert werden, hier auch?

    Antworten
    • Jan Karres
      Januar 3, 2014 9:16 pm

      In Step 9 wird das Kommando raspivid verwendet. Eine ausführliche Liste an Parametern für Raspistill und Raspivid, einschließlich Spiegelungen, findest du in meinem Blog.

      Antworten
      • tobb
        Januar 4, 2014 4:17 pm

        Ist erledigt. Musste den Parameter -vf aus der Zeile für raspivid in Step 9 löschen nun ist das Bild richtig rum. Danke für den Tipp.

        Antworten
  • Jürgen Linse
    Januar 4, 2014 4:06 am

    Hallo Jan, noch mal kurz zurück zu meiner Frage bzw. Deiner Antwort oben. MIr ist ja klar da beides zusammen nicht geht. Ich starte natürlich auch nicht „Überwachung“ wenn ich vorher „Broadcast“ laufen habe. Aktuell starte ich das jeweilige Script von Hand was ich benutzen möchte.

    Aber nachdem „Überwachung“ installiert war (und funktionierte). Habe ich Broadcast installiert und „Überwachung“ wollte dann nicht mehr laufen, die Cam blinkt nur kurz auf und das war es dann.

    Ich versuchs morgen nochmal…..zu installieren vllt habe ich auch was durcheinander gebracht. Erstmal noch ein paar SD Karten kaufen gehen für Sicherungen 😉

    Dachte das vielleicht einige libs (oder was weiss ich) überschrieben werden und sich die Programme deshalb nicht mögen.

    Gruß Jürgen

    Antworten
  • tobb
    Januar 9, 2014 2:41 pm

    Hallo Jan, hast mal probiert ob mit eine Android Tablet (Samsung) der Viedo-Stream sichtbar wird?
    Ich bekomme es zur Zeit nicht hin. Habe bei Benutzung von Firefox folgende Fehlermeldung:
    Error loading player: No playable sources found.
    Der Zugriff über einen PC mit firefox funktioniert aber.

    Gruß tobb

    Antworten
    • Jan Karres
      Januar 11, 2014 1:37 pm

      Nein, ich habe es lediglich an meinen Windows und Mac Rechnern probiert. Jedoch soll lt. Hersteller der Player mit aktuellen Android Geräten kompatibel sein.

      Antworten
    • pascal
      Oktober 23, 2014 9:50 pm

      Ich habe folgende Fehlermeldung: „error loading stream; Could not connect to the server“. Aus dem PC zu Hause mit Opera oder Firefox (Windows). Woran kann sowas liefen?

      Antworten
      • Jan Karres
        Oktober 26, 2014 9:14 pm

        Bist du sicher, dass der Stream läuft?

        Antworten
  • Lars
    Januar 11, 2014 8:01 pm

    Hallo,
    habe die Installation nach der Anleitung durchgeführt.
    Bekomme aber beim Aufruf der WebSite den Fehlerhinweis „No playable sources found“
    Hat jemand eine Idee, woran das liegen kann?

    Antworten
    • Jan Karres
      Januar 12, 2014 1:02 am

      Klingt so als ob die Aufnahme nicht läuft. Was bekommst du denn als Ausgabe, wenn du folgendes im Terminal ausführst?

      screen -r VideoStream

      Antworten
  • Bootsmann
    Januar 14, 2014 2:53 pm

    Super Tutorial. Läuft auf PC gut, jedoch auf meinem Android Handy kommt auch die „No playable sources found“ Fehlermeldung. Und nach ca. 25-30 Stunden Dauerbetrieb schmiert mir der Stream ab bzw. die Kamera schaltet aus.

    Gibt es für die zwei Probleme eine Lösung?

    Antworten
    • Jan Karres
      Januar 15, 2014 7:18 pm

      Für ersteres Problem kenne ich noch keine Lösung, da Android anscheinen, entgegen der Angaben von JWplayer, nicht die benötigen Treiber bereitstellt.

      Letzteres Problem kann man lösen indem man die Kamera alle 24 Stunden neustartet. Dazu probier mal folgendes. Es sollte die Aufnahme um 02:00 Uhr stoppen und wieder um 02:01 Uhr stoppen.

      crontab -e

      Am Ende der Datei eintragen:

      0 2 * * * kill $(ps aux | grep VideoStream | awk '{print $2}')
      1 2 * * * cd ~ && ./video-stream-screen.sh1 2 * * * cd ~ && ./video-stream-screen.sh

      Antworten
  • arfip
    Januar 20, 2014 8:30 pm

    Hallo,
    ich habe auch alles nach Anleitung gemacht und es klappt gut…
    Einzig der Stream wird auf dem Laptop mit einer Verzögerung von ca. 6 Sekunden abgespielt…
    Ist der raspi mit dem Abspielen überfordert?

    Antworten
    • Jan Karres
      Januar 26, 2014 9:20 pm

      So 5-6 Sekunden Verzögerung sind bei dieser beschriebenen und auf dem Raspberry Pi möglichen Art normal.

      Antworten
      • ChemoDD
        Mai 31, 2014 10:46 pm

        probier mal beim einrichten des jwplayer´s auf der webseite beis chritt 2 links unten die Primary State von HTML5 auf Flash zu stellen

        vorher 6,5s verzögerung jetzt 3,0 s verzögerung is zwar auch nicht grad gut aber auf jeden fall besser als vorher 😉

        Antworten
  • Herbert
    Januar 21, 2014 7:02 pm

    Hallo,
    erstmal herzlichen Dank für Dein tolles Tutorial. Am Raspi funktioniert es schon wie es, nehme ich an, funktionieren soll. Nur mit dem Streamen auf den Laptop komme ich nicht weiter.

    http://192.168.178.44/video-stream/ (im aktuellen Firefox)

    zeigt nur ein Demo: „Alone in New York“ – Standbild bzw. Error loading Media: File not found

    Ich habe mich Punkt für Punkt an die Anleitung gehalten und alle Scripts nochmal kontrolliert, aber leider nichts gefunden.

    Falls ich das mit Deiner/Eurer Hilfe hinkriegen sollte, hätte ich noch eine Frage betreffend DynDNS: welchen Port soll ich verwenden/weiterleiten (in Step 9 ist Port 6666 eingetragen)

    Vielen Dank einstweilen
    LG

    Herbert

    Antworten
    • Jan Karres
      Januar 26, 2014 9:35 pm

      Klingt so als würde der Video Stream nicht laufen. Was für eine Ausgabe erhältst du denn, wenn du die folgenden Befehle ausführst?

      screen -dmS VideoStream ./video-stream.sh
      screen -ls

      Antworten
      • BlackNova
        Juni 27, 2014 5:22 pm

        Gleiches Problem hier. Das ist die Ausgabe bei mir.

        pi@raspberrypi ~ $ screen -dmS VideoStream ./video-stream.sh
        pi@raspberrypi ~ $ screen -ls
        No Sockets found in /var/run/screen/S-pi.

        Bekomme auch nur das New York Standbild.

        Antworten
        • Paul
          Dezember 27, 2014 7:06 pm

          hi,
          da muss man noch mal überprüfen, ob es funktioniert, wenn man auf Os und nullen achtet
          dann hats bei mir geklappt

          Antworten
    • Axel Wickenkamp
      April 20, 2014 1:29 pm

      Hallo Herbert,
      hast Du schon eine Lösung dafür gefunden, denn ich stehe vor dem gleichen Problem und komme nicht hinter die Lösung.
      Gruß Axel

      Antworten
  • schwepf
    Januar 23, 2014 1:21 pm

    Perfekte Anleitung; sogar für mich als Laie sofort machbar. Danke! Genau so Menschen wie Dich braucht das Land!!

    Antworten
  • DAvid
    Januar 25, 2014 9:20 am

    Klasse tutorial, das einzige Problem, dass ich habe ist, dass ich schon einen Webserver installiert habe, er stellt alles in /var/www online zur Verfügung. 2 Webserver sind doch einer zu viel. Ich habe nirgends einen Parameter gefunden um den Pfad der Freigabe zu ändern. Die index.html ist in /var/www/video-stream vorhanden aber ich bekomme einfach kein Bild.
    Gibt es irgendwo einen Parameter, der das zulässt?

    Außerdem habe ich mich gefragt, ob mann bei Step 9 die IP Adresse mit seiner eigenen ersetzen muss:

    #!/bin/bash

    raspivid -t 0 -w 960 -h 540 -fps 25 -b 500000 -o – | ffmpeg -i – -vcodec copy -an -f flv -metadata streamName=myStream tcp://0.0.0.0:6666

    Antworten
    • arfip
      Januar 25, 2014 8:14 pm

      also ich habe das 0.0.0.0 nicht verändert; und es funktioniert…

      Antworten
    • Jan Karres
      Januar 26, 2014 10:36 pm

      Klingt für mich keinesfalls nach einem Problem mit dem Webserver – wenn der Player ohne Bild angezeigt wird. Ein alternativer Webserver geht natürlich und auch am Port muss man nichts anpassen, da der in dem Falls nichts mit dem Webserver zu tun hat. Wie Arfip bereits schrieb muss 0.0.0.0 auch nicht ersetzt werden.

      Ich könnte mir vorstellen, dass du das Video im Player über eine DynDNS Domain aufrufen willst und den Port 6666 nicht freigegeben hast.

      Antworten
  • Dieter
    Februar 2, 2014 10:50 am

    Hallo Jan,

    danke für diese hervorragende Step by Step Anleitung.
    Alles hat bei der Installation funktioniert wie von dir beschreiben.
    Mein einziges Problem ist, dass obwohl der video stream korrekt gestartet wird, der WEB Player nur ein schwarzes Bild liefert.
    Woran könnte das liegen?

    Antworten
    • Jan Karres
      Februar 8, 2014 4:15 pm

      Ist die URL zum Stream, die im Webplayer eingetragen ist, von außen denn erreichbar?

      Antworten
      • Dieter
        Februar 19, 2014 9:23 pm

        Hallo Jan,
        danke für deinen Tipp. Per Zufall habe ich herausgefunden, dass der Video Stream nur über meinen Windows Rechner und Firefox dargestellt wird (Im privaten Umfeld arbeite ich normalerweise unter Linux).
        Keiner der gebräuchlichen Linux Browser funktioniert. Vielleicht benötige ich hierfür ein spezielles Plugin?
        Auch unter Android 4.2 hatte ich keinen Erfolg.
        Jedenfalls weiß ich jetzt, dass es nicht an meiner Installation oder
        Konfiguration liegt.

        Antworten
        • Jan Karres
          Februar 20, 2014 11:38 am

          Den JWplayer verwenden wir eigentlich damit genau dies nicht passiert. Mit diesem Player sollte der Stream eigentlich mit Ausnahme von Android (siehe andere Kommentare) funktionieren.

          Antworten
  • Micha
    Februar 3, 2014 6:48 am

    Hallo Jan,
    ich komme mit der Installation nicht weiter, kannst du mir helfen? Bist Step 3 soweit ganz gut aber bei Step 4 an dem Punkt „sudo ./configure“ kommt dann eine Fehlermeldung kannst du dir das erklären an was das liegen könnte?

    Gruß Micha

    Antworten
    • Jan Karres
      Februar 8, 2014 4:46 pm

      Ohne zu wissen, was für eine Fehlermeldung du bekommst ist es schwer zu helfen… 😉

      Antworten
  • Micha
    Februar 11, 2014 6:12 pm

    Hallo Jan, auch ich muß jetzt um Hilfe bitten. Dein Tutorial ist wirklich spitze aber ich bekomme es trotzdem nicht hin. Nach dem Start der ./video-stream-screen.sh bekomme ich folgende Fehlermeldung
    ./video-stream-screen.sh:line2:$’\302\240′:command not found
    ./video-stream-screen.sh line4:$’\302\240′:command not found
    Nach dem Beenden mit screen -r folgende:
    pipe::invalid data foun when proessing input
    Das Video läuft auf dem Raspi, aber über die no-ip adresse sehe ich nur einen weißen Schirm. Ports sind freigegeben und der Pfad zur index.html stimmt auch.
    Kannst Du mir helfen? (sitz jetzt scca 14 Tage vor dem Prob)
    Danke Micha

    Antworten
    • Jan Karres
      Februar 16, 2014 6:08 pm

      Das sind ja gleich mehrere Probleme…

      „./video-stream-screen.sh:line2:$’\302\240′:command not found“ – Ich denke du hast da was falsch kopiert. Versuch die Datei noch mal anzulegen.
      „pipe::invalid data foun when proessing input“ – Hast du die Kamera denn auch aktiviert und bist du dir sicher, dass diese richtig am Raspberry Pi angesteckt ist?

      Wenn das gelöst ist und dann noch Probleme da sind können wir weiter schauen 😉

      Antworten
      • Micha
        Februar 16, 2014 6:19 pm

        Hallo Jan,
        danke für Deine Antwort.
        Die Cam ist richtig installiert, Raspistill und Rasvid funktionieren.
        Meinst Du ich soll die video-stream-screen noch mal neu anlegen?
        fragende Grüße Micha

        Antworten
        • Jan Karres
          Februar 16, 2014 6:50 pm

          Wäre einen Versuch wert.

          Antworten
          • Micha
            Februar 17, 2014 6:25 pm

            Hi Jan,
            tatsache war ein copy paste Fehler. Also die Fehlermeldung ist weg.
            Ich bekomme im Browser aber leider immer noch nur ein weißes Bild.
            Habe mal zum testen den Demo Titel im index Script umbenannt, Der neue Name der Seite wird auch angezeigt.Nur das Video läuft nicht. Hast Du noch einen Tip?
            Vielen Dank
            Micha

          • Jan Karres
            Februar 18, 2014 1:12 pm

            Bist du dir sicher, dass der Videostream läuft?

          • Micha
            Februar 19, 2014 5:00 am

            Hi Jan,
            zumindest sehe ich das Video auf dem Monitor, wenn ich die video-stream-screen.sh starte.
            Micha

          • Jan Karres
            Februar 19, 2014 12:07 pm

            Und du bist dir auch sicher, dass der im Player definierte Link zum Videostream (IP muss ersetzt werden) richtig ist?

    • Micha
      Februar 19, 2014 6:07 pm

      Hi Jan,
      ich habe zum Test in der /usr/share/nginx/www/video-stream/index.html in der Zeile 7 den Text „Demo Title“ in DebbieCam umbenannt,
      Im Browser wird mir bei Eingabe der Ip die Seite dann auch als DebbieCam angezeigt. Also denke ich mal das ich da soweit alles richtig gemacht habe.
      Könnte ich Dir die entsprechenden Dateien mal als eMail zusenden zum rüberschauen (wenn ja, dann welche)?
      Danke schon mal für Deine Ausdauer.
      Micha

      Antworten
      • Jan Karres
        Februar 20, 2014 11:33 am

        Da ich die Kamera momentan zum Streamen selbst nicht installiert habe kann ich dir die Daten leider nicht schicken, sorry.

        Antworten
        • Micha
          Februar 20, 2014 12:16 pm

          aber der Link zum Player scheint richtig zu sein, oder? Wo könnte ich noch ansetzen
          Micha

          Antworten
          • Jan Karres
            Februar 20, 2014 12:45 pm

            Ich habe leider keine Idee mehr. Vielleicht versuchst dus einfach noch mal neu – und hast auf dem Weg irgendwo einen weiteren Fehler gemacht.

  • daniel
    Februar 15, 2014 2:16 am

    Hallo, also erst mal wunderbare Anleitungen, besser geht es gar nicht!
    Ich wollte das Broadcasting und die Überwachung gleichzeitig laufen lassen. Da ich eben ab und zu auch mal per Stream mal drauf schauen muss. Jetzt meine frage, was sind denn genau die befehle zum starten und stoppen beider Prozesse (Überwachung und Broadcasting).
    Den Befehl zum stoppen der Überwachung hab ich ja schon aus der anderen Anleitung 🙂

    Antworten
  • Andre
    Februar 16, 2014 12:52 pm

    Hallo Jan,
    super Arbeit!!!! Läuft auf meinen Raspi super…..aber wie stoppe ich das Script?? (bin mit HDMI am Bildschirm und will nun wieder auf den Raspi zurück…)

    Andre

    Antworten
    • Jan Karres
      Februar 16, 2014 6:56 pm

      Hab ich im Artikel ergänzt. Danke für den Hinweis!

      Antworten
      • Andre
        Februar 16, 2014 7:40 pm

        ….ja, das geht wenn du mit Putty verbunden bist…..Ich habe nur einen TV am HDMI Ausgang hängen. Starten kann ich das ganze, Bild ist aufm Schirm. Jetz gibt es keine Möglichkeit, das ganze zu stoppen da ich keine Möglichkeit einer Eingabe habe. Jetzt könnte mann sagen, warum denn so kompliziert…..Nun, ich habe einen Wlanstick dran und ich bekomme es nicht hin, den Raspi noch mit Lankabel zu betreiben. Irgendwie will diese Kombination nicht……..

        Antworten
        • Jan Karres
          Februar 16, 2014 8:12 pm

          In der grafischen Oberfläche kannst du doch das Programm „Terminal“ aufrufen und in diesem den Befehl eingeben.

          Antworten
          • Andre
            Februar 16, 2014 8:58 pm

            Danke für deine Antwort und nein, ich nutze die grafische Oberfläche nicht. Ich habe den TV dran und arbeite in der Konsole aber ich probiere das mal….wie war dass noch mit der Oberfläche…startx??

          • Jan Karres
            Februar 17, 2014 8:59 am

            Keine grafische Oberfläche ist ja schon positiv. Wo liegt dann das Problem den Befehl einzugeben?

  • knut lagies
    Februar 16, 2014 10:53 pm

    Hallo Jan
    Gibts einen Grund , warum das alles nicht auch mit jeder anderen Webcam tun sollte?
    Gruß knut

    Antworten
    • Jan Karres
      Februar 17, 2014 9:03 am

      Natürlich 🙂 Nicht jede Webcam arbeitet gleich und kann folglich gleich angesprochen werden. Da das Kamera Modul jedoch ein offizielles Zubehör ist und folglich für alle Benutzer gleich ist habe ich mich dafür entschieden, hierfür die Anleitungen zu schreiben. Ganz davon abgesehen, dass es technisch (insbesondere beim Motion Tracking) eine schöne Herausforderung war 😉

      Antworten
  • Andre
    Februar 17, 2014 6:13 pm

    Hallo Jan,
    wenn ich am HDMI Ausgang vom Raspi meinen Tv hängen habe, nutze ich den ja als Monitor. Wenn ich nun den Kamerabetrieb starte, wird auf meinen 16:9 TV das Kamerabild produziert. Es gibt kein Prompt mehr – also, der TV schreibt das Bild voll aus……wo willst du dann noch etwas eingeben wenn du nicht siehst, was du eingibst. Nun wäre die Möglichkeit, parallel über Lan Putty zu starten und dort die Konsole bedienen. Das Problem ist aber (zur Zeit noch bei mir) dass ich einen WLanstick am Raspi habe. Sobald ich das Lankabel anschließe, geht der WLanstick nicht mehr. (hängt am aktiven HUB mit externen Netzteil) Irgendwie scheint es ein Problem zu geben wenn man beides betreiben will.
    @Knut
    Im Netz gibt es viele Anleitungen für Webcams am Raspi. Ich bin froh, eine so gute Anleitung für die Originalcam gefunden zu haben. Hut ab für die Arbeit an Jan! Ich bevorzuge die Originale Kamera deswegen, weil als Überwachungskamera bestens geeignet. Es gibt bei Pollin für kleines Geld ein schönes Gehäuse. Da passt der Raspi samt Kamera schön rein. Mit Lan/Wlan hast dann was schönes. Bei USB Webcam bist ja auch mit den USB Kabel irgendwann an der Grenze. (Kabellänge)

    Antworten
    • sonahundfremdut lagies
      Februar 17, 2014 7:02 pm

      Hallo Andre
      danke für deinen Hinweis. Ich experimentiere viel mit meiner Microsoft Lifecam und die funktioniert auch klaglos. Ich bin aber noch weit weg von der Performance, die ich brauche (10 Frames/sec, 640×480). Keine Ahnung ob ich das schaffe. Deshalb schaue ich sicher auch noch (wenn Zeit) auf die PI-Kamera.

      Antworten
    • Jan Karres
      Februar 18, 2014 1:09 pm

      Dann wird das wohl schlicht und einfach nicht gehen – außer über SSH.

      Antworten
      • Andre
        März 2, 2014 8:52 pm

        Hallo Jan,
        so, nun ist es mir gelungen, das ganze zu stoppen….also aus den Programm zu „kommen“ Das geht natürlich nicht so ohne weiteres. Wir haben RaspiVid kompiliert und im Main etwas geändert, um mit einer Taste der Wahl, dass Programm zu stoppen. Funktioniert auch gut. Wir arbeiten gerade an der Zoomfunktion per Pfeiltasten…..wer Interesse daran hat, oder wenn du dein Tutorial erweitern willst, stellen wir es zur Verfügung.

        Gruß, Andre

        Antworten
  • Martin
    Februar 20, 2014 8:58 pm

    Hallo Jan! Danke für deine tollen tutorial.
    ich hab allerdings anscheinend etwas übersehen. Auf port 8080 habe ich einen anderen Dienst zur Hausautomation laufen (www.ccu.io). Das läuft jetzt nicht mehr…Ich denke dass sich jetzt irgendwas blockiert. Weißt du was ich deinstallieren muss (und wie) um wieder zugreifen zu können? danke!

    Antworten
    • Jan Karres
      Februar 21, 2014 8:51 am

      Auf einem Port können ganz einfach nicht zwei Software laufen, wobei ich bin der Anleitung keinen Port 8080 finden kann, der stören könnte…

      Antworten
  • Tobias
    Februar 25, 2014 7:42 am

    Hi Jan,
    vielen Dank für das Turtorial! Vielleicht wäre es erwähnenswert, dass man Port 1935 freigeben muss, wenn man den Stream von außerhalb des eigenen Netzes schauen möchte. Hat uns einiges an Probieren und Nachdenken gekostet, bis wir das realisiserten! 😀
    Grüße Tobias

    Antworten
    • Jan Karres
      Februar 25, 2014 10:19 am

      Ports sind sowieso noch so ein Problem bei allen meinen Artikeln. Muss ich, wenn zeit ist, mal überall überarbeiten 😉

      Antworten
      • Tobias
        Februar 26, 2014 7:14 pm

        Trotzdem vielen Dank!
        JW Player unterstützt ja laut longtailvideo-Seite auf mobilen Geräten nur HTML5, hast du Erfahrungen mit der Verwendung davon auf dem RasPi? Alles was ich bisher gelesen habe, deutet daraufhin, dass man sich bei Verwendung von mp4/html5 mit circa 4fps abgeben muss. Hast du es auch ausprobiert, auf der Suche nach der besten Kombination? Wäre natürlich schon genial, wenn man einen vernünftigen Stream damit hinbekäme, denn html5 dürfte mittlerweile auf mehr Geräten laufen, als flash.

        Grüße Tobias

        Antworten
        • Jan Karres
          März 1, 2014 1:29 pm

          Als ich das Tutorial schrieb testete ich es zugegebenerweise nur auf Windows und Mac OS X – und habe mich auf die Beschreibung des JWPlayers verlassen. Als ich bemerkte, dass es nicht ganz so toll funktioniert suchte ich nach Lösungen, jedoch fand ich keinen kompatibleren Player…

          Antworten
  • Thomas
    Februar 27, 2014 9:15 pm

    Hallo und erstmal vielen Dank für diese außerordentlich detaillierte und gut verständliche Anleitung!

    Leider bin ich offenbar trotzdem zu wenig firm in Sachen Raspberry Pi bzw. Linux allgemein, um dieses Projekt korrekt zum Laufen zu bringen.

    Mein aktueller Stand ist folgender: wenn ich den Stream über PuTTY manuell aus dem Home-Directory mit

    ./video-stream-screen.sh

    starte, funktioniert alles. In der crontab des nach Deiner entsprechenden Anleitung umbenannten Users pi ist eingetragen

    @reboot cd ~ && ./video-stream-screen.sh
    0 0 * * * kill $(ps aux | grep VideoStream | awk ‚{print $2}‘)
    1 0 * * * cd ~ && ./video-stream-screen.sh

    D.h. der Stream sollte beim (Re)Boot starten und außerdem um 00:00 Uhr beendet und um 00:01 Uhr neu gestartet werden.

    Den Neustart um Mitternacht habe ich noch nicht getestet, aber der Start beim Booten funktioniert definitiv nicht korrekt.

    Der cronjob wird zwar ausgeführt und (nachdem ich mailutils dazuinstalliert habe) der User erhält von cron auch eine Mail folgenden Inhalts

    Video stream started
    To view the stream console output use the following command:
    screen -r VideoStream

    Also eigentlich nur die normale Meldung beim Starten und definitiv keine Fehlermeldung oder ähnliches. Wenn man dann wie beschrieben

    screen -r VideoStream

    eingibt, meldet screen aber nur

    There is no screen to be resumed matching VideoStream.

    Die große Preisfrage ist also: WAS um alles in der Welt habe ich da falsch gemacht?

    Schöne Grüße und schon mal vielen Dank,
    Thomas

    Antworten
    • Thomas
      Februar 27, 2014 9:48 pm

      Neue Erkenntnisse:

      ich habe in video-stream-screen.sh mal stderr auf eine Datei umgeleitet und darin gesehen, daß das Script das Programm ffmpeg nicht finden konnte. Nachdem ich dieses um den absoluten Pfad /usr/local/bin/ ergänzt habe, scheint es jetzt zu funktionieren.

      Unschön ist jetzt lediglich noch, daß das Bild bei einer Auflösung von 960×540 auf meinem relativ großen Monitor auf Fullscreen aufgeblasen und dadurch ziemlich pixelig wird. Kann man das irgendwie so ändern, daß es fest in der ursprünglichen Auflösung dargestellt wird, unabhängig von der Bildschirmgröße?

      Antworten
      • Jan Karres
        März 1, 2014 1:43 pm

        Dazu kann ich dir meinen Artikel Raspistill und Raspivid Parameter empfehlen in dem alle relevanten Paramenter erläutert werden. Darunter auch --preview.

        Antworten
  • Chris-G
    März 2, 2014 11:41 pm

    Hallo,

    ich habe folgendes Problem.
    Nach deiner Anleitung alles installiert und funktioniert wie immer super.

    Irgendwo habe ich aber einen Denkfehler.

    Ich möchte wie beschrieben mit

    crontab -e

    @reboot cd ~ && ./video-stream-screen.sh

    beim start des Raspberry den Stream automatisch starten.

    Leider funktioniert das bei mir nicht ganz so automatisch.
    Raspberry startet und läuft durch.
    Ganz kurz wird eine Kamerabild angezeigt aber es ist sofort wieder weg.

    Um nun den Stream zu starten muss ich manuell nochmal

    ./video-stream-screen.sh

    eingeben, dann startet auch der Stream.

    Also doch kein automatischer Start?

    Gruß Chris

    Antworten
    • Jan Karres
      März 5, 2014 5:53 pm

      Mhhh… versuch doch mal die folgende erstere Zeile durch zweitere zu ersetzen, denn das klingt so als würde er den Steam wieder abbrechen – vielleicht, da der Raspberry Pi noch nicht bereit ist.

      @reboot cd ~ && ./video-stream-screen.sh

      ersetzten durch

      @reboot sleep 30 && cd ~ && ./video-stream-screen.sh

      Antworten
      • Chris-G
        März 9, 2014 4:25 pm

        Hi,

        habe mal die Änderung so vergenommen wie von dir beschrieben.
        Leider machrt er hier genau das Gleiche wie vorher. Diesmal eben nur 30 sec. später. Er blendet kurz das Video ein und sofort wieder aus.

        Nach manueller eingabe über putty oder direkt am Rasp ist das Videosignal dauerhaft aktiv.

        Gruß Chris

        Antworten
        • Jan Karres
          März 11, 2014 9:00 pm

          Eigenartig. Ich bekomme hier den Fehler nicht rekonstruiert, weshalb ich auch nicht wirklich eine Lösung parat habe…

          Antworten
  • viola
    März 6, 2014 10:28 am

    Hallo
    danke für die tolle Anleitung. Ich habe allerdings ein Problem. Wenn ich den Befehl ./video-stream-screen.sh eingebe kommt kurz ein live Bild und schließt sich wieder. Wenn ich ./video-stream.sh mache das gleiche. Mit dem Fehler tcp://0.0.0.0:6666 sei invalid.
    Der raspi ist mit meinem Windows PC über einen Switch verbunden. Der raspi hat die IP192.168.1.2 und der PC hat die 192.168.1.1. Wenn ich nun im Firefox eingebe: http://192.168.1.2/video-stream kommt Welcome to ngix und bei http://192.168.1.2/video-stream/index.html kommt das von mir eingegebene „Laden … “ es wird aber kein Video angezeigt. Was habe ich falsch gemacht? ich habe den Key von jwplayer im header eingegeben. (also da wo als beispiel ABCDEFG… usw steht.
    Na ja und alles Andere habe ich eigentlich auch gemacht.
    Vielleicht ist es ja ganz einfach..

    Antworten
    • viola
      März 6, 2014 11:19 am

      Ich hab nun noch mal die jwplayer.flash.swf mit dem Firefoy geöffnet. Da sagt er mir, dass er nicht für den Offlinebetrieb gemacht sei.Offline Playback not supported.

      Antworten
      • Jan Karres
        März 11, 2014 4:59 pm

        Ich würde mal annehmen, dass diese Aussage nicht vom Firefox sondern vom JWPlayer kommt und dieser damit sagen möchte, dass der Stream momentan offline ist und es keine Aufnahme zum Zurückspulen gibt.

        Antworten
    • Jan Karres
      März 11, 2014 4:49 pm

      Letzteres Problem („Laden…“) wird daran, dass der Stream nicht läuft. Dazu kann ich dir jedoch nur mit konkretem Fehlertext anstatt „Mit dem Fehler tcp://0.0.0.0:6666 sei invalid“ helfen.

      Antworten
  • Markus Pokorni
    März 6, 2014 6:54 pm

    Können Sie mir bitte mitteilen, wie ich bei Step 3 (iVm mit dem Blog Eintrag) mit folgender Meldung umgehen soll? Vielen Dank Gruß Markus Pokorni

    pi@raspberrypi ~ $ apt-get install ffmpeg
    E: Sperrdatei /var/lib/dpkg/lock konnte nicht geöffnet werden. – open (13: Keine Berechtigung)
    E: Sperren des Administrationsverzeichnisses (/var/lib/dpkg/) nicht möglich, sind Sie root?

    Antworten
    • Thomas
      März 6, 2014 11:24 pm

      „sudo “ am Anfang des Befehls hinzufügen und fertig ist die Laube.

      Antworten
    • Jan Karres
      März 11, 2014 5:16 pm

      Wie Thomas sagt. Steht auch so im Artikel.

      Antworten
  • Markus
    März 8, 2014 9:04 am

    Kurze Frage, warum kann das Verzeichnis nicht gefunden werden?

    pi@raspberrypi ~ $ chmod +x video-stream.sh
    pi@raspberrypi ~ $ chmod +x video-stream-screen.sh
    pi@raspberrypi ~ $ cd /usr/share/nginx/www/
    -bash: cd: /usr/share/nginx/www/: Datei oder Verzeichnis nicht gefunden

    Antworten
    • Jan Karres
      März 11, 2014 5:31 pm

      Ich würde mal tippen, dass du nicht, wie in Step 11 beschrieben, nginx installiert hast.

      Antworten
  • Weedhead
    März 14, 2014 12:51 pm

    super Anleitung leider hab ich das gleiche Problem wie
    „Chris-G“ mit crontab -e hab da

    @reboot sleep 30 && cd ~ && ./video-stream-screen.sh eingegeben.

    Er blendet nach 30sek kurz das Video ein und sofort wieder aus finde da keine Lösung.

    Antworten
  • Tobias
    März 19, 2014 11:24 pm

    Hier mal noch ein kleiner Tipp für alle, bei denen der automatische Start des Streams beim Reboot nicht funktioniert. Bei mir hat der angegebene Eintrag im crontab auch nicht funktioniert, daher habe ich in der video-stram.sh folgende Zeile unter
    #!/bin/bash
    ergänzt:
    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    Dann „sudo crontab -e“ gestartet und im crontab folgendes eingegeben:
    @reboot /home/pi/video-stream.sh
    Nun startet der Stream bei mir nach jedem Boot.

    Grüße Tobias

    Antworten
  • Germany Punya Setup untuk Raspi Camera Streaming | Power by Lentok Pi
    März 22, 2014 12:18 pm

    […] ok…aku cuba setup cara germany punya..baru jer jumpa site nii…menarik….mari kita cuba….https://jankarres.de/2013/12/raspberry-pi-kamera-stream-broadcast-realisieren/ […]

    Antworten
    • Florian
      April 23, 2014 3:29 pm

      Ich habe das Problem, dass ich zwar auf den Stream vom Heimnetzwerk aufrufen und sehen kann, aber von Aussen kommt immer eine Fehlermeldung,

      Error, kein Serverkontakt.

      Wenn ich cd ~ && ./video-stream.sh eingebe kommt folgendes:

      ffmpeg version N-62573-gcd4faed Copyright (c) 2000-2014 the FFmpeg developers
      built on Apr 20 2014 18:20:34 with gcc 4.6 (Debian 4.6.3-14+rpi1)
      configuration:
      libavutil 52. 77.100 / 52. 77.100
      libavcodec 55. 58.105 / 55. 58.105
      libavformat 55. 37.101 / 55. 37.101
      libavdevice 55. 13.100 / 55. 13.100
      libavfilter 4. 4.100 / 4. 4.100
      libswscale 2. 6.100 / 2. 6.100
      libswresample 0. 18.100 / 0. 18.100
      mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
      mmal: camera component couldn’t be enabled
      mmal: main: Failed to create camera component
      mmal: Failed to run camera app. Please check for firmware updates

      pipe:: Invalid data found when processing input

      Was kann mein Fehler sein? Ich habe die oben angegebenen Ports freigeschalten

      Alle einzeln mit meinem Speedport W 700V oder hätte ich Alle gleichzeitig mit der gleichen Regel freigeben sollen? Also 80,1935,6666 anstatt jeden einzelnen, in einer eigenen Regel.

      Wenn ich mir die Kommentare so durchlese, dann hätte es auch durchaus sein können, dass ich zuerst ffmpeg installieren hätte müssen und danach wieder deinstallieren, doch bevor ich mir die ganze Arbeit nochmal mache frage ich lieber nach. 😉

      Danke übrigens für die Tutorials, die sind alle super.

      Antworten
      • Jan Karres
        April 27, 2014 7:43 pm

        Klingt für mich so als sei die Kamera in raspi-config nicht aktiviert oder nicht ordentlich angeschlossen. Hast du diese beiden Dinge denn schon mal geprüft?

        Antworten
        • 4711engel
          Juli 15, 2016 4:36 pm

          Hi,
          ist dieser Blog noch aktiv?
          Leider gibt es keine Reaktionen mehr.

          Antworten
  • Andre
    März 23, 2014 2:53 pm

    Hallo Tobias,
    mal ne Frage zu DynDns. Mir ist es noch nicht gelungen, den Stream von ausserhalb zu erreichen. Was muss nun bei der Portweiterleitung in der Fritzbox eingestellt werden? Port 6666 oder 1935 oder beide??? Im internen Netz funktioniert alles super. Ersetze ich nun meine IP durch die Domäne funktioniert es nicht. Da es im internen Netz geht, denke ich, es muss an der Portweiterleitung liegen…..

    Antworten
    • Herbert
      März 23, 2014 6:12 pm

      Hallo,

      hänge mich der Frage von Andre an. Habe das gleiche Problem (die gleiche Herausforderung 😉 )

      LG

      Herbert

      Antworten
      • Thomas
        März 23, 2014 7:12 pm

        Ehrlich gesagt würde ich das an Eurer Stelle einfach ausprobieren. Erst den einen Port weiterleiten, dann den anderen und dann beide. Jedesmal gucken, was passiert… spätestens im dritten Fall sollte das ja dann funktionieren.

        Antworten
      • Andre
        März 24, 2014 4:56 pm

        ……also, ich habe da so mal experimentiert….;-)…..Mein Problem lag sicher daran, dass ich mehrere Raspberrys im Einsatz habe. Also, es muß für den Webcameinsatz per Domän, der Port 80 und der Port 1935 freigegeben werden. (bei mir war der Port 80 für einen anderen Raspi freigegeben, auf den Apache läuft. Ich habe diesen mal entfernt und diese beiden Ports für den „Webcam-Raspi“ freigegeben und siehe da, es läuft)

        Antworten
        • Tobias
          März 25, 2014 11:17 am

          Hi,

          genau. Port 80 (für http) und Port 1935 (für jwplayer) müssen beide exklusiv für den entsprechenden RasPi auf dessen Ports (ebenfalls 80 und 1935) weitergeleitet werden.

          Grüße Tobias

          Antworten
          • Herbert
            März 26, 2014 7:53 pm

            Hallo,

            ich habe (Fritz Box) für den Raspi folgende Portweiterleitungen eingerichtet:

            1935 > 1935
            1936 > 80 (beide TCP)

            Die DynDNS Verbindung funktioniert!!! 😉

            Allerdings nur wenn ich innerhalb des WLANs auf den Raspi zugreife, wenn ich über die Mobile Breitbandverbindung zugreifen möchte, erhalte ich die Fehlermeldung:

            „Error loading Stream
            Could not connect to Server“

            Aaaaber: unter Android 4.4.2 (CyanogenMod) erhalte ich mit dem Puffin Browser die selbe Fehlermeldung (Hoffnung für Android?).

            zugreifen tu ich über :1936/video-stream

            LG

            Herbert

  • geeuz
    März 28, 2014 1:45 pm

    Hallo & vielen Dank für das Tut, läuft echt gut!

    Dank dem Tipp von Tobias den PATH im Script einzutragen, funktioniert auch der Autostart nach dem Reboot.

    Weiß jemand vielleicht irgendeine Möglichkeit das ganze auf iOS lauffähig zu machen? Soweit ich es in Erfahrung bringen konnte funktioniert es nicht weil der Stream im flv-Format ist (Flash Video), was von iPad/iPhone ja nicht unterstüzt wird.

    Meine Versuche den Stream einfach auf mp4 zu ändern haben leider nicht geklappt.

    Antworten
    • Tobias
      April 2, 2014 5:41 pm

      Hi,

      ich denke nicht, dass das geht. Html5 wäre eine Lösung, aber scheinbar erhält man dann nur noch ca. 4fps. Wir haben das Problem für uns so gelöst, dass wir den Stream regelmäßig aufzeichnen und zum Download auf die Website stellen. Mit VLC Player kann man ihn dann beispielsweise auch auf dem Android-Smartphone schauen, welches kein Flash unterstützt. Ob das bei iOS auch so geht, kann ich leider nicht sagen. Wir sind so vorgegangen:

      -rtmpdump installieren sudo apt-get install rtmpdump

      -avconv installieren: sudo apt-get install libav-tools

      -folgendes shell script schreiben:

      #!/bin/bash

      echo Streamconvert loeschen
      rm /usr/share/nginx/www/video-stream/streamconvert.mp4

      echo Streamdump starten
      rtmpdump -r "rtmp://IP/flvplayback/myStream" --live -o /home/pi/dump.flv &
      PID=$!
      # & trennt den Prozess ab und PID=$! schreibt die Prozess ID in eine Variable, so
      #dass die Aufnahme nach einer gewissen Zeit wieder gestoppt wird:
      sleep 20s

      echo kill streamdump
      kill $PID

      echo avconv starten
      avconv -i /home/pi/dump.flv -c copy /usr/share/nginx/www/video-stream/streamconvert.mp4

      echo dump.flv loeschen
      rm /home/pi/dump.flv

      -script ausführbar machen: sudo chmod +x

      -crontab-eintrag für das script schreiben

      -optinal: Datei per html in die Seite einbinden

      Grüße Tobias

      Antworten
  • Josef
    April 5, 2014 12:12 am

    Hallo Jan,

    erstmal Hut ab vor deiner Leistung hier auf deiner Seite. Dein Blog ist super und die Anleitungen finde ich sehr gut geschrieben!!

    Nun aber zu meinem Problem:

    Ich habe deine Anleitung genau beachtet. Habe jetzt dann zum dritten mal alle Codes nachgeprüft aber beim Videostreamen bleibt mein Browser leider weiß.

    Im Fenster steht zwar Demo Title und an der Kamera geht auch die LED an wenn ich mit dem Befehl ./video-stream-screen.sh die cam einschalte.

    Bin über den WLAN-Stick mit dem Netz verbunden und möchte über die IP im Heimnetz auf mein Notebook streamen.

    Könntest du mir bitte weiterhelfen??

    Viele Grüße
    Josef

    Antworten
    • Jan Karres
      April 5, 2014 4:44 pm

      Greift denn der Player vielleicht über eine externe IP-Adresse/DynDNS Domain auf den Stream zu? Falls ja, sind die benötigten Ports freigeben?

      Antworten
      • Josef
        April 6, 2014 12:30 am

        ne, greife nicht von extern zu. bin nur im Heimnetz unterwegs mit dem rpi.
        hab jetzt nochmal ALLES frisch gemacht. leider das selbe Problem. im Browser steht der Titel, aber nach 10 Sekunden des Ladens bleibt alles weiß.

        Hast eine Ahnung woran das liegen könnte?

        Antworten
        • Jan Karres
          April 6, 2014 12:59 pm

          Was für eine Ausgabe erhält du denn, wenn du folgende Kommandos ausführst? Vielleicht läuft der Stream nämlich gar nicht erst…

          cd ~ && ./video-stream.sh

          Antworten
          • Josef
            April 6, 2014 1:40 pm

            mmal: mmal_vc_component_create: failed to create component ‚vc.ril.camera‘ (1:ENOMEM)

            mmal: mmal_component_create_core: could not create component ‚vc.ril.camera‘ (1)

            mmal: Failed to create camera component

            mmal: main: Failed to create camera component

            mmal: Camera is not detected. Please check carefully the camera module is installed correctly

            pipe: Invalid data found when processing input

          • Josef
            April 6, 2014 1:56 pm

            sorry, die meldungen sind nur deshalb gekommen, da die cam nicht richtig angeschlossen war. hatte mich schon gewundert wieso die rote led an der cam nicht an ist.

            jetzt wird die led bei deinem befehl rot und es kommen folgende meldungen:

            ffmpeg version N-62178-ge6f69b3 Copyright (c) 2000-2014 the FFmpeg developers
            built on Apr 5 2014 23:22:46 with gcc 4.6 (Debian 4.6.3-14+rpi1)
            configuration:
            libavutil 52. 74.100 / 52. 74.100
            libavcodec 55. 57.100 / 55. 57.100
            libavformat 55. 36.101 / 55. 36.101
            libavdevice 55. 11.100 / 55. 11.100
            libavfilter 4. 3.100 / 4. 3.100
            libswscale 2. 6.100 / 2. 6.100
            libswresample 0. 18.100 / 0. 18.100
            Input #0, h264, from ‚pipe:‘:
            Duration: N/A, bitrate: N/A
            Stream #0:0: Video: h264 (High), yuv420p, 960×540, 25 fps, 25 tbr, 1200k tbn , 50 tbc
            Output #0, flv, to ‚tcp://0.0.0.0:6666‘:
            Metadata:
            streamName : myStream
            encoder : Lavf55.36.101
            Stream #0:0: Video: h264 ([7][0][0][0] / 0x0007), yuv420p, 960×540, q=2-31, 25 fps, 1k tbn, 1200k tbc
            Stream mapping:
            Stream #0:0 -> #0:0 (copy)
            frame= 142 fps=0.0 q=-1.0 size= 242kB time=00:00:05.64 bitrate= 351.7kbits/ frame= 155 fps=148 q=-1.0 size= 266kB time=00:00:06.16 bitrate= 353.7kbits/ frame= 169 fps=103 q=-1.0 size= 290kB time=00:00:06.72 bitrate= 353.5kbits/

          • Jan Karres
            April 12, 2014 5:06 pm

            Sieht doch nun besser aus. Funktioniert es denn jetzt?

          • Josef
            April 7, 2014 9:07 pm

            hallo jan,

            meinst du du weißt wo der fehler liegt? wie gesagt, im browser bleibt alles weiss, auch nach den meldungen ganz unten…

            falls du eine ahnnung hast würdest du mir eine große freude machen wenn ich durch deine hilfe den stream hinbekomme.

            hab den stream mit chrome, firefox, opera und sogar ie probiert… überall das selbe ergebnis 🙁

          • Josef
            April 12, 2014 6:15 pm

            ne, funktioniert noch immer nicht. die ausgabe bleibt die selbe und der bildschirm im browser bleibt weiss…

            hab schon mehrmals alles kontrolliert auf schreibfehler etc… weiß nicht weiter 🙁

          • Josef
            April 12, 2014 6:58 pm

            so, jetzt läuft es. irgendwo muss unter step 13 ein tippfehler bei mit gewesen sein 🙂

            vielen dank jan. die anleitung ist top!

  • Felix
    April 5, 2014 12:51 pm

    Hey Jan,

    auch von mir ein dickes Lob für deine Anleitung/en! 😉
    Ich habe nun auch nach der Anleitung alles eingerichtet und getestet, aber bei mir lädt und lädt der Stream im Browser und zeugt nichts an. Weißt du an was das liegen kann? Habe alle Einstellungen noch mal geprüft, aber kein Erfolg! Es dreht sich immer nur das „Rädchen“ des Players -.-

    Schöne Grüße

    Felix

    Antworten
    • Jan Karres
      April 5, 2014 4:46 pm

      Kann es vielleicht sein, dass der Player über die öffentliche IP-Adresse oder DynDNS Domain auf den Stream zugreifen soll? Falls ja, sind denn alle benötigten Ports geöffnet?

      Antworten
      • Felix
        April 9, 2014 4:00 pm

        Ne, wollte intern, also im Heimnetz darauf zugreifen. Leider ohne erfolg -.-

        Antworten
        • Jan Karres
          April 12, 2014 5:47 pm

          Bist du dir sicher, dass der Stream läuft? Welche Ausgabe erhältst du denn bei folgendem Kommando?

          cd ~ && ./video-stream.sh

          Antworten
          • Bernd
            Juni 4, 2014 9:50 am

            Hallo Jan,

            ich habe den gleichen Fehler wie Felix. Bei dreht sich auch nur das „Rädchen“. Nach Eingabe von
            cd ~ && ./video-stream.sh

            bekommen ich folgende Ausgabe:

            ffmpeg version N-63738-gd63d964 Copyright (c) 2000-2014 the FFmpeg developers
            built on Jun 4 2014 01:31:28 with gcc 4.6 (Debian 4.6.3-14+rpi1)
            configuration:
            libavutil 52. 89.100 / 52. 89.100
            libavcodec 55. 66.100 / 55. 66.100
            libavformat 55. 42.100 / 55. 42.100
            libavdevice 55. 13.101 / 55. 13.101
            libavfilter 4. 5.100 / 4. 5.100
            libswscale 2. 6.100 / 2. 6.100
            libswresample 0. 19.100 / 0. 19.100
            mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
            mmal: camera component couldn’t be enabled
            mmal: main: Failed to create camera component
            mmal: Failed to run camera app. Please check for firmware updates

            Gruß
            Bernd

          • Jan Karres
            Juni 8, 2014 12:27 pm

            Klingt so als sei die Kamera in raspi-config nicht aktiviert oder nicht ordnungsgemäß angeschlossen.

  • petit_miner
    April 8, 2014 4:43 pm

    Erstmal Vielen Dank für dieses Gute Tutorial,
    doch ich habe ein Problem, ich komme ohne Problem auf den Server vom Raspi,
    und sehe auch das Videofenster vom JWPlayer,
    doch dieser sagt nach einer Ladezeit could not connect to server.
    Hättest du noch eine Idee was ich falsch gemacht haben könnte?

    Antworten
    • petit_miner
      April 8, 2014 4:45 pm

      Habe zu spät deine Antwort gelesen, welche Ports müssten denn geöffnet werden?

      Antworten
      • Jan Karres
        April 12, 2014 5:41 pm

        „Port 80 (für http) und Port 1935 (für jwplayer)“ – von Tobias aus den Kommentaren.

        Antworten
    • Jan Karres
      April 12, 2014 5:39 pm

      Bist du dir denn sicher, dass der Videostream läuft? Was für eine Ausgabe erhältst du denn bei folgendem Kommando?

      cd ~ && ./video-stream.sh

      Antworten
  • Axel Wickenkamp
    April 13, 2014 9:00 pm

    Super Tut, bei mir scheitert das streamen selber.
    Ich erhalte nach dem ausführen des Befehls ./video-stream.sh kurz eine Testvideo am Monitor, dann bricht er aber ab mit dem Hinweis
    tcp @ 0x1a0920 Connection to tcp://0.0.0.0:6666 failed: Connection refused

    Welcher Dienst sollte denn auf 6666 laufen???? Der CRTMPServer???

    Antworten
    • Jan Karres
      April 21, 2014 7:43 pm

      Unter 6666 läuft ffmpeg, worauf du aber nicht direkt zugreifst. Bist du dir denn sicher, dass der Stream läuft?

      Antworten
  • Uwe Waechter
    April 21, 2014 12:01 am

    Hallo Jan,
    auch von mir vielen Dank für deine Mühe bei der Erforschung und der Protokollierung in diesem Artikel. Mein Streaming scheint zu laufen. Woran ich scheitere ist die Wiedergabe im Browser. Ich muss ehrlich gestehen, dass mir die Arbeitsweise des JWPlayers im Netz überhaupt nicht eingängig ist. Gibt es eine Beschreibung darüber, wie die einzelnen Komponenten zusammen arbeiten?
    Ich produziere einen Stream, der in Richtung eines Ports geht (6666). Wie greift jetzt der JWPlayer ein. Deine Beschreibung klingt so, dass dieser Player auf einem Server von JWPlayer selbst läuft. Warum das? Und es gibt doch offenbar ein Download Paket. Sollte dieser nicht lokal laufen? Wozu dann aber diese eindeutigen IDs, die wie Geheimnisse gehandelt werden. Kann man die Zusammenhänge irgendwo nachlesen? Die JWPlayer Seite erschliesst sich mir diesbezüglich überhaupt nicht. Viel Grüße und schöne Ostern, Uwe.

    Antworten
    • Uwe Waechter
      April 21, 2014 1:35 pm

      Hallo Jan,
      Uwe nochmal. Habe ich irgend eine Chance, den Stream „zu sehen“, bevor er an den JWPlayer übergeht? Gibt es irgendeine lokale Datei, an deren Existenz ich überprüfen kann, ob bis dahin alles gut geht? So bin ich z.B. auf der Such nach einem Verzeichnis flvplayback. Entsprechend der Schreibweise file: ‚rtmp://192.168.178.28/flvplayback/flv:myStream.flv‘ in der index.html hätte ich vermutet, dass es ein derartiges Verzeichnis irgendwo im www des nginx geben müsste. Finde aber nichts. auch der lokale Aufruf von file: ‚rtmp://192.168.178.28/flvplayback/flv:myStream.flv‘ im Browser auf dem Pi ergibt nichts: URL cannot be shown.
      Mfg Uwe.

      Antworten
    • Jan Karres
      April 21, 2014 9:02 pm

      Auf Port 6666 geht der Videostream raus. Dieser wird aber gleich wieder von crtmpserver aufgefangen, der dann zu rtmp://IP/flvplayback/flv:myStream.flv konvertiert. Einen Ordner flvplayback wirst du nicht finden, da dies nur im Prozess von crtmpserver als Ausgabe auf dem rtmp:// Protokoll entsteht.

      Folglich ist die URL zum Abspielen des Videos, mit einem beliebigen Player der das kann, rtmp://IP/flvplayback/flv:myStream.flv.

      Wenn mich meine Erinnerung nicht trügt habe ich beim Schreiben der Anleitung kein aktuelles Paket von JWPlayer gefunden, weshalb ich mich für die online gehostet Version entschied. Der Player spielt den oben genannten Stream eigentlich nur ab.

      Antworten
  • Johannes
    April 29, 2014 8:55 pm

    Hallo Jan, ich habe dein Tutorial gestern nachgemacht und und am Ende Angelangt hat es nicht funktioniert… dann habe ich aber selber gemerkt das es daran lag das ich „sudo apt-get install screen“ noch gebraucht habe. Naja jedenfalls lief es dann so wie es sollte.

    Irgendwann ging das ganze aber nichtmehr und ich habe alles neu aufgesetzt, lag dann aber doch wohl an der Kamera dass sie nicht richtig drin war…. jedenfalls bin ich jetzt wieder durch aber dieses Mal geht es nicht und ich weis nicht wieso.

    Wenn ich das ganze aufrufe bei mir mit:
    http://192.168.178.118/video-stream/
    dann wird der JWPlayer ganz normal angezeigt.
    wenn ich dann in der Konsole „./video-stream-screen.sh“
    kommt aber dieses mal nicht das aktuelle Bild… was ja gestern bei mir funktioniert hatte.

    (Die Kamera funktioniert dieses Mal aber)

    Wenn ich in der Konsole „screen -ls“ eingeben dann kommt die Meldung: There is a screen on: 2307.VideoStream (29/04/14 18:46:29) (Detached) 1 Socket in /var/run/screen/S-pi.

    Ich habe alles nochmal durchgeschaut und auch die Dateien aber ich finde den Fehler nicht… vielleicht weisst du ja was es sein könnte.

    Gruß

    Antworten
    • Johannes
      Mai 1, 2014 8:11 pm

      Habs hinbekommen… hab wohl beim jwplayer anlegen irgendwas falsch gemacht. Gruß

      Antworten
  • petit_miner
    April 30, 2014 4:34 pm

    Habe den gleichen Fehlerbericht wie Florian,
    ffmpeg version N-62324-gcdd21f1 Copyright (c) 2000-2014 the FFmpeg developers
    built on Apr 11 2014 07:58:55 with gcc 4.6 (Debian 4.6.3-14+rpi1)
    configuration:
    libavutil 52. 75.100 / 52. 75.100
    libavcodec 55. 58.103 / 55. 58.103
    libavformat 55. 36.103 / 55. 36.103
    libavdevice 55. 11.100 / 55. 11.100
    libavfilter 4. 4.100 / 4. 4.100
    libswscale 2. 6.100 / 2. 6.100
    libswresample 0. 18.100 / 0. 18.100
    mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
    mmal: camera component couldn’t be enabled
    mmal: main: Failed to create camera component
    mmal: Failed to run camera app. Please check for firmware updates

    pipe:: Invalid data found when processing input

    Aber die Kamera funktioniert und der Stream im Lokalen Netzwerk auch, nur von außerhalb des Netzwerkes geht es nicht und alle Ports die notwendig sind sind offen.

    Antworten
    • petit_miner
      April 30, 2014 4:49 pm

      Ps: Bei der Fritz Box kann man auch alle Ports für ein Gerät öffnen, hab das beim Raspi ausprobiert ging trotzdem nicht, scheint so als hätte ich das gleiche Problem wie Florian.

      Antworten
    • Jan Karres
      Mai 3, 2014 11:47 am

      Ich glaube anhand dieser Fehlermeldung eher weniger, dass die Kamera funktioniert. Wie hast du das denn valide geprüft?

      Was du machen kann:

      1. Prüfen ob die Kamera ordentlich angeschlossen ist
      2. In raspi-config überprüfen ob die Kamera erfolgreich aktiviert wurde
      Antworten
  • Michel_03
    Mai 8, 2014 11:10 pm

    Klasse Anleitung.

    Gibt es eine Möglichkeit das ganze via https zu schützen? Mit Benutzer und Passwort abfrage?

    Antworten
    • Jan Karres
      Mai 11, 2014 1:18 am

      Könnte man machen. Die Stichwörter lauten SSL Zertifikate in Nginx einbauen und HTTP Authentication in Nginx.

      Antworten
      • Michel_03
        Mai 11, 2014 12:00 pm

        Danke dir. Werde mal versuchen ob ich das hin bekomme.

        Antworten
  • counter
    Mai 11, 2014 12:02 am

    Hallo,
    Super Tutorial!
    Danke!
    Hab aber das Problem das das Video auf dem Client sehr sehr langsam ist.
    Bilder kommen nicht in Echtzeit, sondern verzögert.

    Was könnte das sein?
    Bin da nicht so fit drin!
    Hab alles so gemacht wie oben, Stream läuft, aber Bilder kommen verzögert!

    Hardware:
    Raspi Modell B mit 512 Mb

    Kannst du oder ein anderer mir helfen?

    Antworten
    • Jan Karres
      Mai 11, 2014 1:30 am

      Was bedeutet für dich konkret „Video auf dem Client sehr sehr langsam ist“? Abspielzeit, Verzögerung oder Framedroping? Eine Verzögerung von einigen Sekunde ist bei dieser Art des Streams völlig normal. Eine bessere Methode, die auf dem Raspberry Pi lief, fand ich leider nicht.

      Antworten
      • Michel_03
        Mai 11, 2014 11:59 am

        Ich geh mal davon aus das die Verzögerung gemeint ist.
        Habe auch eine Verzögerung von etwas über 4sec.

        Antworten
        • Counter
          Mai 14, 2014 8:10 pm

          Ja ich meinte die Verzögerung.
          4 Sekunden kommt hin.
          Leider läuft das nicht so flüssig wie ich dachte, trotz dem super Tutorial.

          Hab aber noch eine Frage dazu:
          wie kann ich die Framerate bei FFMPEG reduzieren?
          Bei RASpivid gehts, aber FFMPEG macht immer mit 25 Frames weiter.
          Vielleicht gehts dann besser? Habt ihr einen Tipp für mich, Ihr kennt euch da besser aus.

          Danke für eure Antworten….

          Antworten
          • Jan Karres
            Mai 16, 2014 3:55 pm

            War gar nicht so leicht herauszufinden, aber so wie in diesem Artikel beschrieben sollte es funktionieren 😉

  • Gerhard Lechner
    Mai 19, 2014 7:54 am

    Hallo Jan super Anleitung ich werd es heute mal ausprobieren 🙂

    Antworten
  • Gerhard Lechner
    Mai 22, 2014 8:37 am

    Hallo ich habs nicht hinbekommen die Led an der Kamera leuchtet und wenn ich zugreifen möchte ist das frontend aktiv und ladet bis ein timeout kommt.

    hat jemand ein backup von der config damit ich nach schauen kann was anders ist?

    lg
    Gerhard

    Antworten
  • Franz
    Mai 30, 2014 5:45 pm

    Erst mal vielen herzlichen Dank an Jan für die Anleitung.
    Die Einrichtung der Webcam hat fast auf Anhieb funktioniert, nachdem ich eigene Fehler beseitigt hatte.
    Für den Stream-Start nach Reboot habe ich das Beispiel von Tobias vom 19. März etwas abgeändert.
    Den Eintrag PATH habe ich unverändert übernommen.
    crontab -e ohne sudo und der Eintrag:

    @reboot /home/pi/video-stream-screen.sh

    So kann man den Screen mit
    screen -S VideoStream -X quit
    stoppen und mit
    ./video-stream-screen.sh
    starten, so wie Jan beschreiben hat.

    Dann habe ich etwas rumprobiert und die Auflösung in der video-stream.sh geändert und die Anzeige auf dem Bildschirm verkleinert. Es wurde ja bemängelt, daß das Bild den ganzen Bildschirm einnimmt:
    raspivid -t 0 -w 1280 -h 720 -fps 25 -p 10,10,1280,720 -b 500000 -o - | ffmpeg -i - -vcodec copy -an -f flv -metadata streamName=myStream tcp://0.0.0.0:6666

    In der Datei /usr/share/nginx/www/video-stream/index.html habe ich folgende Änderungen durchgeführt, teils nur zwecks der Schönheit:
    Unter
    <head>
    <title>Livekamera Daheim</title></head>

    Gleich unter <body> eingefügt:
    <p align="center" style="background: #ffff00; border: 1px solid #000000; padding: 0.05cm">
    Hier steht beliebiger Text!
    </p>

    Das fügt eine Titelleiste oberhalb des Videofensters ein!

    Bei:
    jwplayer('playerNDMsrXcquXjp').setup({
    file: 'rtmp://dynDNS-Name:57999/flvplayback/flv:myStream.flv',

    Beachte die Portnummer :57999 (kann auch eine andere frei verfügbare Nummer sein), dadurch sind evtl. mehrere Kameras an einem Router und der Zugriff aus dem Web möglich.

    Letztendlich noch meine Portweiterleitungen im Router:
    Port 57998 von aussen auf Port 80 des Raspi
    Port 57999 von aussen auf Port 1935 des Raspi

    Wie erwähnt sind die Portnummern von aussen frei wählbar, sofern sie nicht anderweitig festgelegt sind (siehe http://de.wikipedia.org/wiki/Liste_der_standardisierten_Ports)

    Nun bin ich jetzt auch nicht so der Linux-Guru, wenn jemand Verbesserungen hat bitte hier schreiben!!

    Gruß Franz

    Antworten
    • petit_miner
      Juni 4, 2014 4:30 pm

      Das Problem mit dem Dyndns lässt sich leicht lösen:
      Bei Step 12 müsst ihr bei der Adresse

      rtmp://DYNDNSDESPI:57999/flvplayback/flv:myStream.flv
      beim JWplayer bei der Anmeldung anlegen.
      Anschließend müsst ihr bei eurer Fritz.box
      wie Franz es geschildert hat die Ports freigeben:

      Port 57998 von aussen auf Port 80 des Raspi
      Port 57999 von aussen auf Port 1935 des Raspi

      So könnt ihr den Pi aufrufen:

      http://DYNDNSDESPI:57998/video-stream/

      Wäre schön wenn dies der Anleitung hinzugefügt wird.
      Und warum wird Port 6666 benötigt?
      Viele Grüße petit_miner

      Antworten
      • Jan Karres
        Juni 8, 2014 12:41 pm

        Stimmt, 6666 braucht man wahrscheinlich nur intern. Habe ich verbessert. Danke!

        Antworten
  • petit_miner
    Juni 15, 2014 7:39 pm

    Wer noch eine App sucht womit man den Stream auch von unterwegs sehen kann empfehle ich diese: https://play.google.com/store/apps/details?id=air.tv.lotusfusion.rtmp.player.one&hl=de

    Unter Server Adress müsst ihr nur das eintragen: rtmp://ADRESSEDESPI:57999/live
    Unter Stream Name nur myStream.

    Antworten
    • Jan Karres
      Juni 23, 2014 8:24 pm

      Danke für den Tipp. Habe es mal in den Artikel aufgenommen 🙂

      Antworten
    • pascal
      November 1, 2014 6:23 pm

      Und fuer ein extern streaming?
      „rtmp://xxxx.no-ip.org:57999/live/mystream“ ?

      Muss der Port 57999 freigegeben werden? Für TCP?

      Antworten
      • Jan Karres
        November 9, 2014 12:59 am

        Freigegeben sollte, wie im Artikel angegeben, Port 1935, 80 und 57999 (alle wie immer TCP).

        Antworten
        • Martin
          Februar 19, 2016 8:06 am

          Vielen Dank für dein tolles Tutorial Jan. Hat nach Anleitung alles bestens funktioniert – nur der Stream auf das App will einfach nicht funktionieren. Die Ports habe ich alle auf die gleiche Art freigegeben und auf dem PC kann ich auch von überall meinen Stream ansehen – nur das mit dem App will nicht funktionieren. Muss da noch etwas ergänzt werden? Wie komme ich denn dazu, dass sich der RTMP Stream plötzlich unter rtmp://IP:57999/live befindet? lg

          Antworten
  • Tom
    Juni 16, 2014 12:50 pm

    Hallo,

    ich habe soweit, meine ich, alles nach Anleitung gemacht, aber der Nginx will mich nicht rein lassen.
    Ich bekomme die Fehlermeldung: 403 Forbidden

    Die Ausgabe des von cd ~ && ./video-stream.sh

    Ergibt das hier. Also sollte die Cam doch laufen.

    ffmpeg version N-63972-g083cd3d Copyright (c) 2000-2014 the FFmpeg developers
    built on Jan 8 2014 05:17:18 with gcc 4.6 (Debian 4.6.3-14+rpi1)
    configuration:
    libavutil 52. 89.100 / 52. 89.100
    libavcodec 55. 66.101 / 55. 66.101
    libavformat 55. 43.100 / 55. 43.100
    libavdevice 55. 13.101 / 55. 13.101
    libavfilter 4. 8.100 / 4. 8.100
    libswscale 2. 6.100 / 2. 6.100
    libswresample 0. 19.100 / 0. 19.100
    Input #0, h264, from ‚pipe:‘:
    Duration: N/A, bitrate: N/A
    Stream #0:0: Video: h264 (High), yuv420p, 960×540, 25 fps, 25 tbr, 1200k tbn, 50 tbc
    Output #0, flv, to ‚tcp://0.0.0.0:6666‘:
    Metadata:
    streamName : myStream
    encoder : Lavf55.43.100
    Stream #0:0: Video: h264 ([7][0][0][0] / 0x0007), yuv420p, 960×540, q=2-31, 25 fps, 1k tbn, 1200k tbc
    Stream mapping:
    Stream #0:0 -> #0:0 (copy)
    frame= 145 fps=0.0 q=-1.0 size= 345kB time=00:00:05.76 bitrate= 490.8kbits/frame= 160 fps=149 q=-1.0 size= 379kB time=00:00:06.36 bitrate= 488.7kbits/frame= 173 fps=109 q=-1.0 size= 408kB time=00:00:06.88 bitrate= 485.7kbits/frame= 184 fps= 81 q=-1.0 size= 461kB time=00:00:07.32 bitrate= 516.1kbits/frame= 203 fps= 72 q=-1.0 size= 487kB time=00:00:08.08 bitrate= 494.0kbits/frame= 216 fps= 65 q=-1.0 size= 520kB time=00:00:08.60 bitrate= 495.1kbits/frame= 230 fps= 60 q=-1.0 size= 553kB time=00:00:09.16 bitrate= 494.8kbits/frame= 243 fps= 56 q=-1.0 size= 613kB time=00:00:09.68 bitrate= 518.9kbits/frame= 255 fps= 52 q=-1.0 size= 623kB time=00:00:10.16 bitrate= 502.3kbits/frame= 269 fps= 50 q=-1.0 size= 653kB time=00:00:10.72 bitrate= 498.9kbits/frame= 283 fps= 48 q=-1.0 size= 683kB time=00:00:11.28 bitrate= 495.9kbits/frame= 296 fps= 46 q=-1.0 size= 719kB time=00:00:11.80 bitrate= 499.0kbits/frame= 308 fps= 44 q=-1.0 size= 759kB time=00:00:12.28 bitrate= 506.6kbits/frame= 321 fps= 43 q=-1.0 size= 785kB time=00:00:12.80 bitrate= 502.3kbits/frame= 336 fps= 42 q=-1.0 size= 818kB time=00:00:13.40 bitrate= 500.0kbits/frame= 350 fps= 41 q=-1.0 size= 854kB time=00:00:13.96 bitrate= 501.2kbits/frame= 363 fps= 40 q=-1.0 size= 907kB time=00:00:14.48 bitrate= 513.2kbits/frame= 376 fps= 39 q=-1.0 size= 923kB time=00:00:15.00 bitrate= 504.0kbits/frame= 389 fps= 38 q=-1.0 size= 951kB time=00:00:15.52 bitrate= 501.8kbits/frame= 403 fps= 38 q=-1.0 size= 980kB time=00:00:16.08 bitrate= 499.2kbits/^Cmmal: Aborting program

    [flv @ 0x196dc70] Failed to update header with correct duration.
    [flv @ 0x196dc70] Failed to update header with correct filesize.
    frame= 414 fps= 37 q=-1.0 Lsize= 1009kB time=00:00:16.52 bitrate= 500.5kbits/s
    video:1001kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.837757%
    Received signal 2: terminating.

    Wo könnte ich ansetzen?

    Grüße, Tom

    Antworten
    • Jan Karres
      Juni 23, 2014 9:00 pm

      Klingt nach einem Problem mit den Rechten. Hast du sicher Step 14 ausgeführt? Dieser ist dafür, dass der benannte Fehler nicht auftreten sollte.

      Antworten
  • da0x
    Juni 20, 2014 12:57 pm

    Kann man das ganze auch mit einer Webcam durchführen? Ich bekomme die Fehlermeldungen pipe:: Invalid data found when processing input und Camera is not detected. Ansonsten funktioniert die Webcam mit sudo start motion einwandfrei und ffmpeg scheint auch vernünftig installiert zu sein.

    Antworten
    • Jan Karres
      Juni 23, 2014 9:21 pm

      Das Tutorial ist lediglich auf das Kamera Modul für den Raspberry Pi ausgelegt.

      Antworten
  • mele
    Juni 27, 2014 5:02 pm

    Hallo Jan, ich habe das Tutorial soweit befolgt, wenn ich jetzt aber
    cd ~
    ./video-stream-screen.sh

    screen -r VideoStream

    eingebe, kommt die Meldung: There is no Stream to be resumed matching VideoStream

    Hast Du eine Idee woran das liegen könnte?

    Gruß Mele

    Antworten
    • Jan Karres
      Juni 29, 2014 7:13 pm

      Bei euch beiden läuft der Stream nicht. Entweder habt ihr ihn nicht nach Anleitung gestartet oder durch einen Fehler in der Konfiguration kann dieser nicht starten. Welche Ausgabe erhält ihr denn, wenn ihr folgendes ausführt:

      cd ~
      ./video-stream.sh

      Antworten
  • Jan
    Juli 5, 2014 12:20 am

    Hallo Jan,

    viellen Dank für die Anleitung ist super.

    Kannst du mir sagen wie ich den Stream im VLC wiedergeben kann, möchte den Steam damit speichern.

    Bin im lokalem Netzwerk.

    Habe schon vielles Probiert.

    Eigendlich sollte das doch mit

    rtmp://ADRESSEDESPI:57999/live
    http://DYNDNSDESPI:57998/video-stream/
    rtmp://raspberrypi:57999/flvplayback/flv:myStream.flv

    gehen oder.

    Antworten
    • Jan Karres
      Juli 8, 2014 9:25 pm

      rtmp://IP/flvplayback/flv:myStream.flv sollte eigentlich funktionieren.

      Antworten
      • Timo
        August 17, 2015 3:32 pm

        Soweit habe ich das alles zum Laufen bekommen, allerdings ohne nginx.
        vlc meldet „Server error: call to function _checkbw failed“, anschließend „avcodec access error: Failed to open rtmp://pi1/flvplayback/flv:myStream.flv“
        Irgendeine Idee?

        Antworten
        • Jan Karres
          August 25, 2015 6:22 pm

          An welchem Punkt genau erhältst du diesen Fehler?

          Antworten
  • Jan
    Juli 8, 2014 11:27 am

    Hallo Jan,

    ich brauch mal deine Hilfe.

    Bei mir läuft das so wie oben beschrieben sehr gut, vielen Dank.

    Ich möchte mit einem mobilen Gerät ein stream Anschauen, dazu habe ich jetzt einen Accesspoint auf dem Pi eingerichtet der auch funktioniert, ip-adresse für den Laptop bekomme ich vom pi. Die nginx Startseite kann ich auch sehen.
    Und wollte jetzt den stream starten mit

    raspivid -t 0 -w 960 -h 540 -fps 25 -b 500000 -o – | ffmpeg -i – -vcodec copy -an -f flv -metadata streamName=myStream tcp://192.168.42.1:6666

    bekomme hier aber folgenden Fehler.

    tcp://192.168.42.1:6666: Connection timed out

    Die 192.168.42.1 ist die IP Adresse meines PI.

    Woran kann das liegen?

    Vielen Dank Jan.

    Antworten
    • Jan Karres
      Juli 8, 2014 9:34 pm

      Die IP-Adresse brauchst du, da nicht beschrieben, nicht anpassen (catch all). Bist du dir sicher, dass die IP-Adresse über den Accesspoint die Selbe ist wie über deinen Router?

      Antworten
      • Jan
        Juli 9, 2014 2:14 pm

        Jepp sicher, der Router ist praktisch das PI. Das macht ein eigenes Wlan Netzwerk auf. Hat keine Anbindung zum Internet und eth0 wird auch nicht genutzt.
        Ist praktisch ein Wlan Kamera Server.

        Antworten
        • Jan Karres
          Juli 16, 2014 8:55 pm

          Dann wäre mein Ansatzpunkt ob crtmpserver installiert ist bzw. ob der Service läuft (solle via /etc/init.d/crtmpserver status prüfbar sein).

          Antworten
          • Jan
            Juli 18, 2014 5:12 pm

            Der Server crtmpserver läuft noch ne idee wie ich den Fehler finden kann?

          • Jan
            Juli 18, 2014 5:15 pm

            Kann es vielleicht am DNS liegen?

            Verbinde ich das Pi mit einem Wlan kann ich es unter raspberrypi anpingen und die Namensauflösung funktioniert. Mal das Pi ein eigenes Wlan auf das erreiche ich es nur über die IP Adresse die Namensauflösung funktioniert dann irgendwie nicht.

          • Jan Karres
            Juli 23, 2014 9:20 am

            Spontan nein, sorry.

  • Michael Wühr
    Juli 17, 2014 10:12 am

    Hallo Jan,

    auch hier von meiner Seite ein sehr großes Kompliment an deine Arbeit! Auch mit wenig Vorkenntnis zu dem Thema Raspberry Pi / Linux usw.. konnte ich den Stream aufstellen.

    Nun möchte ich aber direkt per Homepage den Stream STARTEN und auch wieder STOPPEN können. Hierzu habe ich mich für eine PHP5 Lösung entschieden.

    das www Verzeichnis befindet sich unter /var/www
    die Dateien „video-stream-screen.sh“ und „video-stream.sh“ habe ich unter
    /var/www/script/ abgelegt.

    Leider funktioniert das ganze momentan nicht so wie es soll – hier der Code der index.php:

    ———————————————————–

    MWE-TestStream

    > /dev/ttyAMA0"));
    $val = trim(@shell_exec("echo \x0D >> /dev/ttyAMA0"));
    echo "\"255\" + CR sent";
    }

    elseif(isset($_GET['button2'])){
    $val = trim(@shell_exec("echo 150 >> /dev/ttyAMA0"));
    echo "\"150\" sent";
    }

    elseif(isset($_GET['button3'])){
    chdir("../script");
    $val = trim(@shell_exec("/var/www/script/./video-stream-screen.sh"));
    echo "$val";
    }

    elseif(isset($_GET['button4'])){
    $val = trim(@shell_exec("screen -S VideoStream -X quit"));
    echo "$val";
    }

    ?>

    jwplayer('playerbwynqAxxnNoq').setup({
    file: 'rtmp://xxxxxxxxxxxxxxxx.selfhost.eu/flvplayback/flv:myStream.flv',
    image: '//www.longtailvideo.com/content/images/jw-player/lWMJeVvV-876.jpg',
    title: 'MWE-TestStream',
    width: '640',
    height: '360',
    autostart: 'false'
    });

    ————————————————————–

    Wenn ich die Seite lade und auch den Button „Stream ON“ drücke, bekomme ich keine Ausgabe (Bei der Ausgabe in der Shell meldet sich diese zurück mit „Video stream started…usw“) auch der Stream startet nicht.

    Wenn ich den Button „Stream OFF“ drücke, bekomme ich die Ausgabe „No screen session found“ – was mich vermuten lässt, dass der „Stream OFF“ Button funktioniert.

    Könntest du mir helfen dieses Problem zu lösen?

    Viele Grüße und Danke
    Michael

    Antworten
    • Jan Karres
      Juli 23, 2014 8:40 am

      Welches Feedback erhältst du denn, wenn du die video-stream.sh manuell ausführst?

      Antworten
  • Michael
    Juli 19, 2014 3:58 pm

    Hallo Jan,

    danke für die Anleitung. Ich habe auch alle Schritte durchgeführt mit jeweils einem positiven Ergebnis.
    Leider kann sich der Video-Player nicht mit dem Server verbinden.
    Wenn ich in meinem Browser folgendes eingebe …
    http://10.0.0.6/video-stream/
    … kommt dann zwar der Player mit NewYork, wenn ich den aber Starte kommt die Fehlermeldung „Error loading stream: Could not connect to server“
    Kannst du mir weiterhelfen, was ich noch ausprobieren kann?

    Danke! Michael

    Antworten
    • Jan Karres
      Juli 23, 2014 9:31 am

      Bist du dir sicher, dass die IP-Adresse deines Raspberry Pis 10.0.0.6 lautet? Klingt für mich nicht ganz so stimmig…

      Antworten
      • Michael
        Juli 23, 2014 10:25 am

        Die IP Adresse ist bei mir im internen Netz 10.0.0.6
        Ich komme auch mit dieser Adresse mittels SSH auf den Raspberry hin.

        Wie kann ich überprüfen, ob der Streaming-Server von Schritt 7 korrekt funktioniert?

        Antworten
        • Michael
          Juli 23, 2014 3:33 pm

          Hallo,
          jetzt habe ich alle deine Schritte nochmals durchgeführt, allerdings mit dem gleichen Ergebnis.

          Der Player schreibt:
          Error loading player:
          No playable sources found

          Ich starte das Video mittels:
          pi@Video1:~$ ./video-stream-screen.sh
          Video stream started

          und wenn ich dann „screen -r VideoScreen“ absetze kommen laufend diese Zeilen:

          frame= 1608 fps= 28 q=-1.0 size= 3958kB time=00:01:04.28 bitrat
          frame= 1622 fps= 28 q=-1.0 size= 4004kB time=00:01:04.84 bitrat
          frame= 1634 fps= 28 q=-1.0 size= 4024kB time=00:01:05.32 bitrat
          frame= 1647 fps= 28 q=-1.0 size= 4055kB time=00:01:05.84 bitrat
          frame= 1661 fps= 28 q=-1.0 size= 4088kB time=00:01:06.40 bitrat

          Sollte es dann nicht funktionieren? Trotzdem zeigt
          mit der Player kein Bild.
          Woran kann das liegen?

          Antworten
          • Jan Karres
            Juli 23, 2014 6:35 pm

            Solle funktionieren. Probier doch mal über eine DynDNS mit geöffnetem Port auf den Stream zuzugreifen. Wäre spontan so meine einzige Idee.

  • petit_miner
    August 11, 2014 7:54 pm

    Hat sich schon jemand damit befasst ob der Stream sich auch auf IOS anschauen lässt?

    Antworten
  • Johannes
    August 26, 2014 12:25 pm

    Hallo Jan,
    bin deiner Anleitung bis zum Ende gefolgt, aber wenn ich den Stream über den Raspberry starte wird nur ein Bild der Cam auf dem angeschlossenen Bildschirm des Raspberry gezeigt und nicht ins Internet übertragen. Denn wenn ich die Adresse http://DYNDNS/video-stream/ eingebe bei Chrome, kommt nur die Meldung: Diese Webseite ist nicht verfügbar.

    Antworten
    • Jan Karres
      August 31, 2014 1:17 pm

      Hast du den die Ports freigegeben, wie am ende des Artikels beschrieben?

      Antworten
    • petit_miner
      August 31, 2014 1:52 pm

      Es war eine blöde Idee hier die DynDns zu posten, am besten suchst du dir eine neue aus.

      Antworten
      • Jan Karres
        August 31, 2014 6:32 pm

        Oder ich werfe einfach den Domainnamen raus. Danke für den Hinweis 😉

        Antworten
        • Johannes
          August 31, 2014 11:05 pm

          Haha, ja stimmt war ne blöde Idee… aber danke Jan 😛 … Habe mittlerweile eine Lösung gefunden. Und alles funktioniert. Für die DNS wollte ich mir bevor ich sie einsetzte eh noch ein Passwort einrichten …

          Antworten
          • Jan Karres
            August 31, 2014 11:35 pm

            Magst du deine Lösung auch noch mit der Community teilen, damit alle davon profitieren können? 😉

  • Jan
    September 12, 2014 2:15 pm

    Danke erstmal für die Anleitung, klappt alles so wie beschrieben!

    Ich versuche gerade etwas mit der Auflösung und den FPS zu experimentieren, konkret Full HD bei 6 fps. Ich bekomme zwar ein Bild im JWPlayer, allerdings scheint es so als würden ‚genug‘ Frames gesammelt werden um sie dann schnell abzuspielen, d.h. ich habe für einige Sekunden Standbild, dann aber eine schnelle Abfolge von Bildern. Mir scheint als würde irgendwo in der Kette noch eine Komponente auf 25 fps warten. Ich habe nur in der video-stream.sh die Framerate angepasst, sprich

    raspivid -t 0 -w 960 -h 540 -fps 25 -b 500000 -o – | ffmpeg -i – -vcodec copy -an -f flv -metadata streamName=myStream tcp://0.0.0.0:6666

    in

    raspivid -t 0 -w 1920 -h 1080 -fps 6 -b 500000 -o – | ffmpeg -i – -vcodec copy -an -f flv -metadata streamName=myStream tcp://0.0.0.0:6666

    geändert-

    Muss ich das noch irgendwo anders anpassen? Beim crtmpserver? Oder beim JWPlayer?

    Laut Ausgabe scheint ffmpeg mit den 6 fps zurecht zu kommen:

    […]
    frame= 1859 fps=6.5 q=-1.0 size= 18906kB time=00:01:14.36 bitrate=2082.8kbits/
    frame= 1863 fps=6.5 q=-1.0 size= 19001kB time=00:01:14.52 bitrate=2088.8kbits/
    frame= 1867 fps=6.5 q=-1.0 size= 19023kB time=00:01:14.68 bitrate=2086.8kbits/
    frame= 1870 fps=6.5 q=-1.0 size= 19044kB time=00:01:14.80 bitrate=2085.6kbits/
    frame= 1874 fps=6.5 q=-1.0 size= 19083kB time=00:01:14.96 bitrate=2085.4kbits/
    […]

    Danke für evtl. Hilfe!
    Jan

    Antworten
    • Jan Karres
      September 15, 2014 12:08 pm

      Gefühlt würde ich darauf tippen, dass es an ffmpeg liegt und du dort die Anzahl der Frames ebenfalls anpassen musst.

      Antworten
  • Georg Burkhard
    September 14, 2014 5:47 pm

    Hallo, vielen Dank für die guten Anleitungen. Was mich noch bei dieser Anleitung noch fehlt ist wie ich die Raspi Cam dazu bringe html 5 Videos (m3u8) zu stremmen. Gibt es hierfür auch eine Anleitung? Habe bis jetzt noch keine gefunden.
    Vielen Dank!
    G.Burkhard

    Antworten
  • Micha
    September 25, 2014 4:05 pm

    Hallo,

    ist es möglich noch eine USB-Webcam zusätzlich zu integrieren?

    Also so das ich ein Stream von der PiCam habe und eins von der Webcam?

    ich finde den Punkt nicht wo ich das in FFmpeg konfigurieren kann?

    Antworten
    • Jan Karres
      September 27, 2014 11:34 am

      Das ist abhängig von der jeweilig verwendeten Kamera, weshalb ich mich auf das offizielle Raspberry Pi Kamera Model beschränkt habe.

      Antworten
  • Lukas Langer
    Oktober 7, 2014 8:16 pm

    Hallo Jan
    ich habe ein Problem bei Step 5 ich bekomme dort nur diese Meldung:
    „There is a screen on:
    6449.pts-1.raspberrypi (06/10/14 13:49:50) (Attached)
    There is no screen to be resumed.“

    und bei Step 4 kommen oft warnings und am Schluss ein Error:
    „make: ***[libswscale/libswscale.a] Error 1“
    Würde mich sehr über eine Rückmeldung freuen

    Mfg
    Langer Lukas

    Antworten
    • Jan Karres
      Oktober 11, 2014 7:15 pm

      Da musst du etwas drum herum lesen wo konkreter der Fehler liegt. Die Meldung „Error 1“ ist recht wenig aussagend.

      Antworten
  • Jan
    November 23, 2014 3:41 pm

    Ok, ich hänge an einem denke ich mal ganz Simplen Problem. Wie schalte ich die Kamera ein? Ich bin ALLE Schrtitte durchgegangen. (in raspi-Config ist die AN) aber im Betrieb an sich ist die aus. Unbd eine ausgeschaltete Kamera kann naztürlich keinen Stream liefern.

    Antworten
    • Jan Karres
      November 23, 2014 7:45 pm

      Wenn sie richtig angeschlossen und funktionstüchtig ist musst du sie nur, wie von dir wohl schon genannt, in raspi-config aktivieren. Dann sollte sie funktionieren.

      Antworten
  • Marcus
    November 26, 2014 7:31 pm

    Warum geht die ffmpeg Version von apt-get nicht?

    Antworten
  • JD
    November 29, 2014 3:18 pm

    Hallo,

    schöne Anleitung, hat sofort funktioniert. Ich wollte die beiden .sh danach in einen Unterorder legen aber dann funktioniert es nicht mehr.

    Hast Du eine Ahnung, warum nicht?
    Vielen Dank.

    Antworten
    • Jan Karres
      Dezember 6, 2014 10:56 pm

      Wenn du beide Dateien verschoben hast sollte es einwandfrei funktionieren. In Step 16 musst du dann jedoch ggf. den Pfad anpassen.

      Antworten
  • R. Koch
    Dezember 18, 2014 3:32 pm

    Danke für die Super Anleitung. Gibt es eine Möglichkeit zumindest den Zugang von aussen über eine Passwortabfrage zu beschränken?

    Antworten
    • Jan Karres
      Dezember 22, 2014 7:01 pm

      Schau mal ob dir diese Dokumentation weiterhilft.

      Antworten
  • Paul
    Dezember 27, 2014 8:58 pm

    Hi,
    Ich hätte dann auch noch ne Frage:
    Ich habe dieses super Tutorial von dir step by step befolgt und es hat auch geklappt.
    Das Streamfenster auf dem Desktop des Raspis hat sich geöffnet.
    Jedoch kam auf der entsprechenden Webseite, unter der eigentlich mein Stream laufen sollte, von jwPlayer ein schwarzer Kasten und folgende Mitteilung: ‚ There was an error retrieving your embed.:
    Please double check your hosted URL in your JW Dashboard.‘

    Da stellt sich mir als Laie die Frage: What? Was ist der Fehler?

    Nun bin ich auf der Fehlersuch fündig geworden und es stellte sich heraus, dass ich in Step 9 beim erstellen Der ‚video-stream.sh‘ -Datei nach dem -o folgendes vergessen hatte dazuzuschreiben:
    – | ffmpeg -i – -vcodec copy -an -f flv -metadata streamName=myStream tcp://0.0.0.0:6666

    Dies habe ich dann ergänzt und gespeichert.

    Wenn ich jedoch nun erneut probiere den stream zu öffnen, öffnet sich für einen Bruchteil einer Sekunde das Kamerabildfenster auf dem Raspi-Desktop und schliesst sich SOFORT wieder.

    Als Ausgabe bekomme ich nur „Video stream started To view the (…) screen -r VideoStream

    Das würde doch eigentlich nur bedeuten, dass alles super funktioniert.

    Ich bin ratlos! Deshalb wäre ich dir sehr verbunden, wenn du mir baldig mit ein oder auch ein paar mehr Ratschlägen zu Seite stehen würdest.
    Wenn sonst noch jemand eine Lösung für dieses Problem gefunden hat, BITTE HELFT MIR!!

    Antworten
    • Paul
      Dezember 28, 2014 2:45 pm

      ich fände es super, wenn sich bis morgen noch jemand melden würde, da mein sohn dann geburtstag hat und ich es ihm eigentlich schon zu weihnachten versprochen hatte.
      liebe grüsse
      paul

      Antworten
    • Paul
      Dezember 30, 2014 7:31 pm

      Das mit Step 9 hat sich erledigt
      Da war wol nen Schreibfehler drin

      Antworten
    • Paul
      Dezember 30, 2014 7:35 pm

      Aber das Problem mit dem Stream ist geblieben

      Antworten
    • Jan Karres
      Februar 11, 2015 11:13 am

      Eine späte Antwort, aber doch noch eine 😉 Hast du sichergestellt, dass die Ports, wie am Ende des Artikel erklärt, geöffnet sind, sodass der Stream auch außerhalb des eigenen Netzwerks erreichbar ist?

      Antworten
      • Paul
        Februar 13, 2015 7:57 pm

        Danke erst mal für die Antwort

        Antworten
      • Paul
        März 1, 2015 4:48 pm

        Ich benutze den Stream nur innerhalb des Netzwerkes.
        Brauche ich dann auch eine Portfreigabe?

        Antworten
        • Jan Karres
          März 31, 2015 5:16 pm

          Nope.

          Antworten
  • Adrian
    Dezember 30, 2014 2:16 pm

    Hallo Jan,
    Ich habe dein tutorial durchgearbeitet und muss sagen,dass es wirklich das beste zu PiCam ist da andere mit dem uv4l treiber arbeiten. Ich habe nur ein problem: Ich kann den Videostream nicht starten, da bei mir immer die Fehlermeldung: ./video-stream-screen.sh : Zeile 3: screen: Kommando nicht gefunden.
    Die folgenden Beffehle erkennt er auch nicht und auf der Website ist nur ein schwarzes Fenster indem steht: Error loading player:
    No playable sources found

    Was soll ich tun damit es funktioniert? Wozu ist der screen befehl da und macht es einen unterschied, ob ich den pi per ssh oder mit bildschirm verwende?
    Ich bin noch Neuling auf diesem Gebiet und würde mich auf baldige Rückmeldung freuen

    Antworten
    • Adrian
      Dezember 30, 2014 4:54 pm

      Nochmal zu meiner frage das mit screen hat sich geklärt ich musste noch screen installieren

      Antworten
      • Paul
        Dezember 31, 2014 1:01 pm

        Hi Adrian,
        Hat sich des Problem mit dem Stream auf der Website denn auch gelöst?

        LG
        Paul

        Antworten
      • Adrian
        Dezember 31, 2014 1:42 pm

        Das mit dem Stream hat sich leider immernoch nicht gelöst. Der stream läuft jetzt zwar aber er lässt weder im browser meines iphones noch in dem des laptops oder pis abspielen. (Im moment läuft alles noch lokal). Die schwarze anzeige bleibt mit der Aufschrift: no playable sources found .

        Ich hab das tutorial jetzt schon mehrfach durchgearbeitet und immer noch keine lösung gefunden.

        Antworten
        • Jan Karres
          Februar 11, 2015 11:25 am

          Hast du sichergestellt, dass, wie am Ende des Artikels beschrieben, die nötigen Ports geöffnet sind, sodass der Stream auch außerhalb deines Netzwerks verfügbar ist?

          Antworten
  • LarsM
    Januar 2, 2015 11:06 am

    Ich danke an dieser Stelle auch einmal für die ganze Mühe auf diesem Blog.
    Ich habe auch gerade ein Problem, mit dem ich nicht weiterkomme und hoffe auf rat.

    wenn ich den Stream nach der vollständigen Konfiguration starte, sehe ich diesen zwar auf dem HDMI-Ausgang des Pi, aber im Browser (Chrome, IE) dreht sich nur das Rädchen, der Firefox meldet „No playable sources found“. Also ist sowohl der NGIX, als auch der JWPlayer korrekt konfiguriert.

    Ich mache mir vorerst noch keine Gedanken um Portfreigabe, da ich das ganze erstmal im Heimnetzwerk zum laufen bekommen möchte.

    Der VLC meldet mir: VLC kann die MRL ‚rtmp://192.168.178.101/flvplayback/flv:myStream.flv‘ nicht öffnen.

    Wo liegt hier der Fehler? Arbeitet der CRTMP-Server nicht einwandfrei? Laufen tut er zumindest (Ausgabe nach ps)

    2930 ? Ss 0:00 /usr/sbin/crtmpserver –daemon –uid=0 /etc/crtmpserver/crtmpserver.lua

    Antworten
    • Jan Karres
      Februar 11, 2015 11:37 am

      Im VLC Player läuft der Stream nicht – ein Grund warum wir den Player auf der HTML-Seite verwenden. Öffne doch einmal die Ports. Ich bin mir nicht mehr sicher, aber es könnte sein, dass der Player den Stream über das Netz abholt.

      Antworten
  • Horst
    Januar 4, 2015 5:22 pm

    Hallo Jan

    Wirklich tolle Anleitungen die du hier machst.

    Ich habe leider ein Problem beim git clone.
    nach dem Befehl

    sudo git clone git://source.ffmpeg.org/ffmpeg.git

    bekomme ich immer die Meldung

    fatal: read error: Die Verbindung wurde vom Kommunikationspartner zurückgesetzt

    Die Internetverbindung von meiner Seite funktioniert

    Antworten
    • Jan Karres
      Februar 11, 2015 11:46 am

      Das sollte ein temporäres Problem seitens deren Server gewesen sein. Versuch es einfach noch einmal!

      Antworten
  • Armin
    Januar 17, 2015 12:48 am

    Hallo bei mir kommt zum schluss leider das hier und stream startet nicht.

    pi@raspberrypi ~ $ ./video-stream-screen.sh
    ./video-stream-screen.sh: Zeile 3: screen: Kommando nicht gefunden.
    Video stream started
    To view the stream console output use the following command:
    screen -r VideoStream

    Antworten
    • petit_miner
      Januar 25, 2015 6:47 pm

      Ganz klarer Fehler , screen ist nicht installiert.
      Lösung: sudo apt-get install screen

      Antworten
      • Armin
        Januar 25, 2015 9:22 pm

        Hi danke erstmal fürs melden. Bei welchen Step bzw schritt muss ich sudo apt-get install screen installieren?

        Antworten
        • petit_miner
          Januar 25, 2015 9:37 pm

          Das kannst du jetzt nachholen.

          Antworten
          • Armin
            Januar 25, 2015 9:39 pm

            Hi danke fürs antwort. Habe jetzt alles neu gemacht und bin erst bei step 5 und da dachte ich wenn ich schon von vorne mache ob sie mir dann sagen könnten bei welchen step ich das dann ausführen soll? Also wie gesagt bin erst bei step 5. Lg

          • petit_miner
            Januar 25, 2015 9:52 pm

            Normalerweise hättest du screen schon ab step 2 installiert haben müssen.
            Aber wegen Screen musst du nicht alles neu machen!
            Wenn du ihn jetzt nachträglich installiert ist alles ok.
            screen benötigst du erst ab step 4

  • mubin
    Januar 21, 2015 11:34 pm

    Hallo,
    Eine tolle Tutorial, danke!
    Allerdings habe ich Problem, Ich sehe keine Video im Browser. Ich habe alle Schritte richtig gemacht.
    1.Kamera aktiviert durch raspi-config, raspistill funktioniert.
    2.Ich habe die Befehl raspivid getestet, der gibt viele ASCII Zeichen im Konsol.
    3../video-stream.sh funktioniert, also ffmpeg program erzeugt viele Daten und letzte Zeile gibt Information aus wie: frame:49308 fps:25 size:… ..
    4.Portfreigabe am Router erledigt.
    5.crtmpserver status abfrage: [ok] …
    6.Wenn ich IP/video-stream/ im Browser eingebe, bekomme ich den Player, drücke ich „Play“-Taste aber gibt es kein Video: Error, Videosource not found, obwohl videostreaming funktioniert.

    Woran liegt das Problem?
    Danke.

    Antworten
    • mubin
      Januar 30, 2015 4:21 pm

      Ich habe endlich gelöst 🙂 Das Problem war falsche URL in der Datei index.html.
      Ich habe einfach getippt und …flv:myStream.flv ‚ gescrieben statt flv:myStream.flv‘. Also nur ein Leerzeichen am Ende hat verursacht. Ich habe es gelöscht und jetzt funktioniert es 🙂

      Antworten
  • Sascha
    Februar 11, 2015 11:13 pm

    Hallo bei funktioniert die Kamera nur 5 Sekunden danach kommt bei deinem Befehl zum testen was falsch ist hinter der in Adresse „no such file or directory

    Antworten
    • Jan Karres
      Februar 15, 2015 9:12 pm

      Der Fehler sollte weiter gehen. Du hast eine Datei oder einen Ordner nicht gemäß der Anleitung angelegt.

      Antworten
  • Sascha
    Februar 12, 2015 10:32 pm

    Hallo hatte Index im falschen Ordner habe nur noch ein Problem
    Kamera startet aber geht nach 5 Sekunden wieder aus

    Antworten
    • Sascha
      Februar 15, 2015 9:39 pm

      Hallo Ich hbas hinbekommen lag bei mir nur an einem . statt : Zeichen. Aber andere Fragy Dyndns mit no ip hab mir dein tut angeschaut dazu auf dem raspberry nur weis ich nicht wo ich für die kamera was ändern bzw am modem?

      Antworten
  • Phil
    März 21, 2015 1:33 pm

    Hallo Jan, super Tut!
    Wie kann ich diesen RTMP Stream aufzeichnen?
    Habe es mit rtmpdump probiert aber leider ohne Erfolg

    Danke

    Antworten
  • Carsten
    Mai 19, 2015 8:53 am

    Moinsen, erstmal Danke für die klasse Arbeit, ich hab folgendes Problem. Nach der Konsoleneingabe von „cd ~
    ./video-stream-screen.sh“ (Step 15) läuft alles Prima, dann hab ich in der letzten Zeile der crontab „@reboot cd ~ && ./video-stream-screen.sh“ eingetragen und nach dem Neustart regt sich nichts. Nachdem ich wiederum „cd ~./video-stream-screen.sh“ in die Konsole eingegeben habe das geiche Spiel, bis zum Neustart alles top 🙁
    Hat jemand ne Idee?
    LG aus dem Ruhrpott

    Antworten
    • Jan Karres
      Mai 29, 2015 1:43 pm

      Versuch doch mal folgendes per Hand auszuführen und schau ob du da einen Fehler erhält.

      cd ~ && ./video-stream-screen.sh

      Antworten
  • Markus Walter
    Juni 29, 2015 9:34 pm

    Hi, ich bin durch etwas suchen über Google auf diesen tollen Artikel gestoßen. Ich habe vor mir in 2 Monaten den Raspberry Pi 2 zu holen und ein Monat später die Kamera.
    Was mich plagt weil ich in diesen Bereich nun Neuland betrete;

    – Ist diese Lösung auch mit den 2er Modell möglich?

    – Ist es evtl. möglich auch die Auflösung zu erhöhen?

    – Bei diesen Livestream kann man das Bild auch vergrößern?

    – Bei dieser Methode werden die Materialien ja direkt gestreamt und nicht gespeichert, richtig? So dass ein Stream auch mal 1-2 Monate durchlaufen kann?

    – Was mich dabei Interessiert, ist es zwischendrin auch möglich mal für ein halben Tag oder so eine Zeitgesteuerte Aufnahme auf der SD oder ein Netzlaufwerk zu machen? Mit LiveStream natürlich. Nach dieser Zeit stopt die Aufnahme auf den Speichermedium.

    Diese Dinge würden mich Interessieren und möchte ich mich auseinander setzen wenn ich den habe. Zu mal Programmieren kann ich nicht. Geschweige mit Linux hab ich auch schon lange nichts mehr am Hut gehabt. Das sich aber dann bald ändern wird. 🙂

    Antworten
    • Jan Karres
      August 3, 2015 10:38 pm

      Auf dem Raspberry Pi 2 sollte es ebenso funktionieren und, auf Grund der Mehrleistung des Rechners, auch in höherer Auflösung. Zoomen kannst du mit dem Kamera Modul nicht. Bei diesem Artikel gibt es nur einen Live-Stream. Nichts wird permanent gespeichert. Speichern und Livestrem zugleich habe ich mit dem Kamera Model leider nicht hinbekommen.

      Antworten
  • Johannes
    Juli 6, 2015 4:40 pm

    Hallo Jan,

    bei mir funktioniert der Step 3 nicht. Wenn ich den Sourcecode von ffmpeg laden möchte, kommt immer folgende Fehlermeldung:

    sudo git clone git://source.ffmpeg.org/ffmpeg.git
    Cloning into ‚ffmpeg’…
    fatal: unable to connect to source.ffmpeg.org:
    source.ffmpeg.org[0: 88.191.250.118]: errno=Die Wartezeit f?r die Verbindung ist abgelaufen
    source.ffmpeg.org[1: 2a01:e0d:1:3:58bf:fa76:0:1]: errno=Die Adressfamilie wird von der Protokollfamilie nicht unterst?tzt

    Hast du eine Ahnung was da der Fehler ist? Gibt es diese Seite nicht mehr? Meine Internetverbindung funktioniert einbahnfrei.

    Danke und Gruß
    Johannes

    Antworten
    • Jan Karres
      August 3, 2015 10:47 pm

      Mir klingt das so als sein die Internetverbindung zum Raspberry Pi nicht funktionstüchtig.

      Antworten
  • Bernd
    August 5, 2015 8:16 pm

    Hallo, habe festgestellen müssen das die Seite vom JW Player jetzt anders ist. Kann leider nicht wie in Step 12 verfahren :-(.

    Antworten
    • Dennis
      August 15, 2015 2:16 pm

      Ich habe es trotzdem mit dem JW Player versucht und bin leider am erstellen der index.html und den Code Schnipseln gescheitert. Vielleicht ist Jan ja so nett und aktualisiert diesen Part nochmal?!?! Wäre sehr nett!!

      Antworten
    • familiegeissler
      Oktober 1, 2015 11:57 pm

      An der Stelle hänge ich auch fest und komme nicht weiter. :-/

      Antworten
    • Paul62
      Oktober 4, 2015 8:48 pm

      Bei mir haperts auch dort.

      Antworten
  • nico
    August 14, 2015 3:31 pm

    Hi!
    Ich habe alles nach der Anleitung gemacht habe aber folgendes Problem:
    Wenn ich den Stream starte erfolgt auch die echo Ausgabe „To view the stream……“
    gebe ich screen -r VideoStream ein sagt der mir aber, dass es diesen screen nicht gibt.
    Und wenn ich den Stream im Browser öffne, steht da Service unavailable.

    Jemand eine Idee woran es liegen könnte?

    Antworten
    • Jan Karres
      August 25, 2015 6:09 pm

      Der Stream wird nicht gestartet. Um ein Fehlermeldungen zu erhalten führe doch bitte mal Folgendes aus.

      cd ~
      ./video-stream.sh

      Antworten
  • fhuesser
    August 21, 2015 8:23 am

    Herzlichen Dank, dass du die Mühe machst, alle Schritte so detailliert zu schildern!
    Mir ist bewusst, dass der Artikel schon etwas alt ist. Trotzdem eine kurze Frage dazu.

    Der Stream auf meinem Raspi scheint grundsätzlich zu funktionieren. Zumindest bekomme ich mit

    “ cd ~ && ./video-stream.sh“
    eine Ausgabe, die so aussieht frame=9xx fps=28 q= 3xxx etc.

    Das mit dem jwplayer funktioniert nicht, ist mir aber auch nicht so wichtig. Wenn ich dein HowTo richtig verstanden habe, müsste ich meinen Stream mit rtmp://IP/flvplayback/flv:myStream.flv lokal in VLC oder modernem Browser sehen können?

    Und das wäre eigentlich mein Vorhaben im Moment.

    Leider weigert sich mein VLC grad…

    Stimmt meine Annahme?

    Grüsse
    Fabian

    Antworten
    • Jan Karres
      August 25, 2015 6:33 pm

      Das sollte in der Regel, wenn du davor alles richtig gemacht hast, so funktionieren.

      Antworten
      • familiegeissler
        Oktober 1, 2015 11:53 pm

        Hallo Jan,

        die Seite JWPlayer wurde scheinbar geändert. Kannst Du das hier auf der Seite vielleicht noch anpassen?
        Ich bekomme beim Rumprobieren nur ein Javascript- und ein IFrame-Feld angezeigt.

        Bis zu diesem Punkt war Dein Tutorial perfekt für mich.
        Danke

        Antworten
  • Jan
    September 4, 2015 9:46 pm

    Die Sache mit den 5-6 Stunden für’s Compilieren kann man sehr bequem auf 1-2 Stunden reduzieren: Neuere Raspberrys haben 4 Kerne, also kann man mit einem sudo make -j 4 das ganze Parallelisieren.

    Antworten
  • Gerald
    Januar 13, 2016 7:46 pm

    Hi, ich habe Deine Anleitung Schritt für Schritt befolgt. Nun habe ich aber ein Problem bei Punkt 12. Der hersteller des JWPlayers hat ja nun die Version 7 draussen, auch die Webseite sind anders aus. Ich finde einfach nicht die Felder wo ich meine Daten angeben muss. Auch gibt es keine 2 Codeschnipsel sondern nur einen wenn ich einen Player erstellt habe. Hast Du da einen Tipp für mich?

    Antworten
  • Roman
    Januar 14, 2016 8:12 pm

    Hallo Jan,
    Danke für die Tutorials,
    ich hänge beim kompiilieren es kommen immer wieder fehler und irgendwann bleib alles stehen :/
    z.B.: libavcodec/vp9_mc_template.c:39:65:…

    Grüße
    Roman

    Antworten
  • Tom
    Juni 1, 2016 3:50 pm

    Moin Moin,

    ich bin seit gestern Besitzer eines Pi3 und wollte mal fragen ob die obige Lösung (erst einmal vielen Dank dafür) auch mit diesem Modell sowie dem aktualisierten Kamera Modul V2 funktionieren würde?

    Viele Grüße

    Antworten
  • Kai
    Juni 23, 2016 7:29 pm

    hallo Jan, ich habe folgendes Problem:
    Bis zu Step 11 ist ja alles super, ich habe auch einen jw player account, aber auf der jw player website selbst komme ich mit meinem Player nicht zurecht, kann es sein, dass es inzwischen eine neue Version von jw player gibt? ich finde zum Beispiel nirgends ein Eingabefeld für Media File(Step 12). Wäre es möglich, mir eine Schritt für Schritt Anleitung
    zu geben? So schaffe ich es nämlich nicht.

    Grüße Kai

    Antworten
  • 4711engel
    Juli 14, 2016 3:01 pm

    Vielen Dank für das tolle Tutorial. Das habe ich sogar als Anfänger verstanden. Ich habe nur zwei Fragen:
    1) Nach dem Besorgen des jwplayer (step 12) habe ich aber nur einen Code bekommen. Diesen für den -Teil. Ich habe diesen in die index.html einkopiert und gemäß stp 15 gestartet. Der Stream war im Raspi-Display und im Browser meines PCs zu sehen. (mit ca. 5 Sek Verzögerung). Wie oder warum benötige ich den Code für ?
    2) Ich wollte dann die Pi-Cam per crontab -e gemäß step 16 automatisch beim Start mit starten. Dieses hat bei mir aber nicht funktioniert. Cam startet nicht, sondern ich erhalte den normalen Desktop. ???

    Antworten
    • 4711engel
      Juli 14, 2016 3:09 pm

      In meinem Post ist Text verschwunden:
      zu 1) ich habe nur den Code für den head-Teil bekommen und in die index.html einkopiert. Der Codeteil für den body fehlte

      Antworten
      • 4711engel
        Juli 15, 2016 5:50 pm

        zu stepm 16:
        wenn ich crontab entsprechend Tutorial eingebe, dann leuchtet am Display des raspi nur ganz kurz das Cam-Bild auf und dann nach einem schwarzen Fenster der normale raspi-Desktop.

        Antworten
  • 4711engel
    August 3, 2016 7:19 pm

    Schade um ein schönes Tutorial und einen Blog, wenn er nicht gepflegt wird. Das ist wie ein gutes Essen, was man einfach auf dem Herd stehen lässt.
    Ich hatte eigentlich gehofft, dass man hier über mögliche Probleme spricht und daraus lernen kann.
    Aber Foren, die nicht leben gibt es im Netz viele. Schade um die Zeit.

    Antworten
  • Jürgen Gawlik
    August 10, 2016 12:21 pm

    Hallo Jan,

    ich bin neu in der Raspberry-Scene.
    Desshalb habe ich mich auf deine Seite eingeschossen.
    Hier finde ich alles was ich brauche. Danke

    Aber: ich komme bei der Anmeldung (Installation) vom
    JWPlayer nicht klar.

    kannst du mir die Anmelde-Schritte erklären.

    Zuviel verlangt.?

    ich habs versucht

    Trotzdem Danke für die tolle Seite.

    Grüß Jürgen

    Antworten
  • Thomas Fehse
    August 23, 2019 8:12 am

    This video file cannot be played.(Error Code: 102630)
    No more video. I think the rtmp dont works anymore in jwplayer. 🙁

    Antworten

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Bitte füllen Sie dieses Feld aus.
Bitte füllen Sie dieses Feld aus.
Bitte gib eine gültige E-Mail-Adresse ein.
Sie müssen den Bedingungen zustimmen, um fortzufahren.

Jan Karres
Jan Karres
Wirtschaftsinformatiker
Facebook
Twitter
YouTube
LinkedIn
Xing
GitHub

Themen

  • Blogging
  • Debian (Linux)
  • Eine Geschichte aus dem Leben des Jan
  • Fotos
  • Gaming
  • Gedanken
  • Linksammlungen
  • Privates
  • Projekte
  • Raspberry Pi
    • Einplatinencomputer (außer Raspberry Pi)
  • Schule und Studium
  • Tipps und Tricks
  • Videos
  • Vorgestellt
  • WordPress

Projekte

Dieser Blog ist meine kleine Base im Internet, in der ich über Themen schreibe, die mich persönlich beschäftigen. Abseits davon habe ich weitere Projekte im Netz, die teils aus Spaß entstanden, jedoch zum Teil auch meinen Kühlschrank füllen.

Alle Projekte

JanKarres.de © 2007-2022

Neueste Beiträge

  • Raspberry Pi: WLAN Access Point mit NordVPN (VPN Router) einrichten Dezember 5, 2020
  • Real Cookie Banner: Wie das Opt-in Cookie Banner für WordPress entstand November 18, 2020
  • Blog Setup erneut: Aufräumen einer kleinen Historie Oktober 13, 2020
  • devowl.io: Auf geht’s in das WordPress Business! März 10, 2020
  • Kuschelpartys: Nähe und Geborgenheit einfach erleben September 30, 2018

devowl.io

Meine Brötchen verdiene ich im Internet. Dazu habe ich gemeinsam mit meinem Kollegen Matze die devowl.io GmbH gegründet. Gemeinsam entwickeln und vertreiben wir in unser Plugins und Entwickler-Tools im WordPress Umfeld.

Mehr erfahren
  • Datenschutzerklärung
  • Impressum