Installation des mjpg-streamer.

  • Installationschritte des mjpg-streamers.




    Code
    sudo apt-get -y update && sudo apt-get -y upgrade
    
    
    sudo apt-get install build-essential libjpeg-dev imagemagick subversion libv4l-dev checkinstall
    
    
    sudo modprobe bcm2835-v4l2


    Sollte es hier zu Problemen kommen ist wahrscheinlich die Kamera nicht aktiviert. „sudo raspi-config“



    Code
    raspistill -o /tmp/test.jpg
    
    
    svn checkout svn://svn.code.sf.net/p/mjpg-streamer/code/ mjpg-streamer-code
    
    
    cd mjpg-streamer-code/mjpg-streamer


    Als nächstes erstellen wir einen Patch.

    Code
    sudo nano input_uvc_patch


    Diesen Inhalt per Drag and Drop einfügen.



    Wir führen anschließend diese Befehle aus und verlassen danach das Verzeichnis wieder.

    Code
    patch -p0 < input_uvc_patch
    make USE_LIBV4L2=true clean all
    sudo make DESTDIR=/usr/local install
    
    
    cd



    Nun geben wir folgendes ein, nur um zu schauen das auch alles richtig installiert wurde.

    Code
    sudo modprobe bcm2835-v4l2


    Hier dürfen keine Fehlermeldungen erscheinen.



    Jetzt kann der Streamer gestartet werden, mit folgendem Befehl:

    Code
    mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 1024x768 -f 24 –q 80" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 9000"


    Hier wird ein kleiner Webserver gestartet der unter Deiner Adresse des raspberypi zu erreichen ist aber mit der Port Nummer 9000.
    Bsp.:
    192.168.178.200:9000


    Man kann den Stream natürlich auch noch zusätzlich in eine Datei leiten zb. so:

    Code
    mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 1024x768 -f 24 –q 80" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 9000" -o "/usr/local/lib/output_file.so -f /backup/record-video -d 15000"


    Hier wird der Stream in den Ordner /backup/record-video abgelegt.


    Man kann auch die Parameter verändern zb. die Auflösung (Parameter -r) bzw. die Frames (Parameter -f) und die Quality (Parameter -q)
    Es gibt noch mehr Parameter doch hier verweise ich auf folgende Web Seite: Dokumentation


    Die Hilfe zu allen Plugins kann mit

    Code
    mjpg_streamer -i "<Input-Plugin> --help"


    aufgerufen werden.



    Wenn man den mjpg_streamer beim booten automatisch gestartet haben möchte der sollte folgende Datei anlegen:

    Code
    sudo nano /etc/init.d/mjpg_streamer


    Mit diesem Inhalt.




    Mit diesem Befehl wird die eben erstellte Autostart-Datei in den Autostart eingetragen:

    Code
    sudo update-rc.d mjpg_streamer defaults



    Danach kannst Du es bequem per:

    Code
    sudo service mjpg_streamer start


    starten.


    Beenden kannst Du es mit:

    Code
    sudo service mjpg_streamer stop
  • Hallo,
    ich war bereits glücklich diesen Beitrag zu finden, um meine Raspi-Kamera zum Laufen zu bringen.
    Leider bekomme ich den mjpg-streamer nur mit der Option "-y" zum Laufen - mit den sich daraus ergebenden Problemen.
    Mein Problem ist, dass ich den Patch nicht einspielen kann! Der Patch ist für die Revision174, aber ich bekomme aus dem SVN die Revision182 und hier bekomme ich entsprechende Fehlermedungen....


    Gibt es hierzu einen Update?
    Gruß
    Bernd

  • Hello All,


    I'm new in the Forum.


    My name is Mirko.
    I'm a web developer, I'm from Italy.


    I installed the DoorPi on jessie Raspberry Pi 2 and it Works.


    When I press the doorbell button I can place a call to my mobile running Linphone client and so on.


    I installed the mjpg-streamer ant it works too:
    Accessing the mjpg-streamer on the port 8080 I can see the still page and the Livestream.


    But the problem is that when I pace a call I got this error:


    doorpi.sipphone.from_linphone] /dev/video0 does not support streaming i/o


    and the video in the mobile is black.


    Does the mjpg-streamer must run as Deamon for Video call or not?



    Please Let me know


    Regards


    Mirko Ugolini





    SOLVED!!!!!!


    i forgott to insert:


    # camera with v4l2 driver
    bcm2835-v4l2


    in:
    /etc/modules

  • Hallo
    auch ganz neu hier, nicht gerade der Linux Kenner
    Raspi B Jessi Pixel,
    Zugriff über SSH


    pi@door:~/mjpg-streamer-code/mjpg-streamer $ patch -p0 < input_uvc_patch
    patching file plugins/input_uvc/input_uvc.c
    patch: **** malformed patch at line 4: if(pcontext->videoIn->formatIn == V4L2_PIX_FMT_YUYV) {


    hatte vorher alles nach Anleitung weiter gemacht


    pi@door:~ $ mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 640x480 -f 24 –q 80" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 9000"
    MJPG Streamer Version: svn rev: 3:172
    i: Using V4L2 device.: /dev/video0
    i: Desired Resolution: 640 x 480
    i: Frames Per Second.: 24
    i: Format............: MJPEG
    libv4l2: error setting pixformat: Invalid argument
    Unable to set format: 1196444237 res: 640x480
    Init v4L2 failed !! exit fatal
    i: init_VideoIn failed
    pi@door:~ $ ^C
    pi@door:~ $ sudo modprobe bcm2835-v4l2
    pi@door:~ $ sudo nano input_uvc_patch
    pi@door:~ $ svn checkout svn://svn.code.sf.net/p/mjpg-streamer/code/ mjpg-streamer-code
    Ausgecheckt, Revision 182.
    pi@door:~ $ cd mjpg-streamer-code/mjpg-streamer



    also alles noch mal durchgegangen
    pi@door:~ $ cd mjpg-streamer-code
    pi@door:~/mjpg-streamer-code $ ls -1
    doc
    mjpeg-client
    mjpg-streamer
    mjpg-streamer-experimental
    udp_client
    uvc-streamer
    pi@door:~/mjpg-streamer-code $ cd mjpg-streamer
    pi@door:~/mjpg-streamer-code/mjpg-streamer $ sudo make install
    install --mode=755 mjpg_streamer /usr/local/bin
    install --mode=644 input_uvc.so output_file.so output_udp.so output_http.so input_testpicture.so input_file.so /usr/local/lib/
    install --mode=755 -d /usr/local/www
    install --mode=644 -D www/* /usr/local/www
    pi@door:~/mjpg-streamer-code/mjpg-streamer $ sudo mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -y -r 640x480 -f 15" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 8080"
    MJPG Streamer Version: svn rev: 3:172M
    i: Using V4L2 device.: /dev/video0
    i: Desired Resolution: 640 x 480
    i: Frames Per Second.: 15
    i: Format............: YUV
    i: JPEG Quality......: 80
    ERROR opening V4L interface: No such file or directory
    Init v4L2 failed !! exit fatal
    i: init_VideoIn failed

  • hallo, ich bin blutiger Anfänger,
    ich habe alles nach Anleitung gemacht, aber es kommt immer folgende Fehlermeldung:


    pi@door:~/mjpg-streamer-code/mjpg-streamer $ patch -p0 < input_uvc_patch
    patching file plugins/input_uvc/input_uvc.c
    patch: **** malformed patch at line 18: @@ -418,8 +422,6 @@


    Ich habe keine Ahnung, was ich machen soll

  • Hi,


    mjpeg-streamer läuft bei mir manuell gestartet, aber als Daemon klappt es leider nicht.
    Ich sehe nicht, was ich falsch gemacht habe:


    Code
    sudo service mjpg_streamer start


    liefert

    Code
    Job for mjpg_streamer.service failed because the control process exited with error code.
    See "systemctl status mjpg_streamer.service" and "journalctl -xe" for details.


    Details systemctl status mjpg_streamer.service:




    Detail journalctl -xe


    Insbesondere dieser Teil, der auf den Fehler hindeutet...


    Code
    mjpg_streamer.service: Failed at step EXEC spawning /etc/init.d/mjpg_streamer: No such file or directory

    ... kann ich mir nicht erklären.



    Das File liegt genau an der angegebenen Stelle, Rechte sind gesetzt auf rwxr-xr-x wie bei den anderen auch.


    Hat jemand eine Idee?


    Gruß,
    Oli


    P.S.: Raspbian Stretch auf einem Raspberry Pi3 B+.

    • Offizieller Beitrag

    Hi Oli,


    wahrscheinlich meint die Meldung nicht, dass /etc/init.d/mjpg_streamer abgeht, sondern, dass in der Datei was nicht gefunden wird. Darin sollte ja ein Eintrag sein der beginnt mit:
    /usr/local/bin/mjpg_streamer (und viele Parameter danach)....


    Hier die Frage, was sagt ls -la /usr/local/bin/mjpg_streamer? Wird das gefunden. Liegt der mjpg_streamer mgl woanders. Ansonsten meine ich, dass das mit der Anleitung von NEA eigentlich problemlos funktioniert hat. Ist leider schon wieder ein paar Wochen her bei mir...


    Hoffe das hilft dir erst einmal weiter!
    Max

  • Hi Max,


    Danke für den Tipp, aber auch das sieht gut aus:


    Habe die Anleitung mehrmals durchgemacht - müsste eigentlich passen.


    Habe aus dem Daemon Start Script die Pfade verwendet - startet wie Du siehst problemlos.


    Gruß,
    Oli

  • Hier nun meine mjpeg_streamer Startdatei.


    Die Installation war bis dahin in Teilen nicht so richtig straight forward. daher würde ich nicht ausschließen, dass ich mir grundsätzlich was an der Stretch Installation verbogen habe.

    • Beim PiFace 2 musste ich ziemlich rumprobieren, bis die Python Samples (Blink, etc.) liefen.
    • Auch bei der Cam hatte ich ein engewissen Act, weil ich ich beim Erzeugen des Test Screenshots nicht gemerkt hatte, dass die Cam entweder durch das zunächst getestete RPi-Cam-Web-Interface (werde ich zugunsten mjpeg_streamer und Elcom Videofon vermutlich nicht einsetzen) oder DoorPi selbst gesperrt und damit für raspistill als nicht installiert gewmeldet wurde.

    Ob die damit zusammenhängende Rumprobiererei bei der Installation der erforderlichen Pakete verantwortlich für weitere schwer zu verstehende Fehler ist - ich weiß es nicht. Mglw. gibt es auf einer zweiten SD-Card noch eine zweite Installation mit weniger Trial and Error.


    Frohe Ostern wünsche ich allerseits. :)


    Gruß,
    Oli

    • Offizieller Beitrag

    Hi Oli,


    auf die Schnelle:
    sleep:2 muss sleep 2 (also mit leerzeichen anstelle des Doppelpunktes lauten)
    Am Ende der zeile mit dem MJPEG-Streamer fehlt dir nach " 2>&1 " ein weiteres " &"
    Wenn das fehlt, geht der Prozess nicht in den Hintergrund...


    Viele Grüße & frohe Ostern,
    Max

  • hallo, ich habe das selbe Problem dass meine mjpg_stream nicht läuft.
    bekomme auch immer die meldung:


    Job for mjpg_streamer.service failed because the control process exited with error code


    manuelles starten funktioniert.


    kann mir jemand seine mjpg_streamer zukommen lassen?

  • Hallo Zusammen,


    ich hab mal eine Frage, warum ist der Patch notwendig?
    Oder ist er aktuell noch notwendig?


    Dazu habe ich gesehen, dass nun das Projekt auf Github ist mit einem neuen Maintainer.
    Hat das schon jemand von Github installiert?


    Gruß Robert

  • Hallo zusammen,


    bin erst seit ein paar Tagen mit meinem ersten Raspberry Pi am Start.
    Bisher lief die Installation problemlos, jetzt stehe ich vor einem Problem:


    Ich versuche den mjpg_streamer beim booten automatisch starten zu lassen.
    Habe alles nach Anleitung gemacht.


    Wenn ich folgende Kommandos ausführe...


    Bash
    sudo update-rc.d mjpg_streamer defaults
    sudo service mjpg_streamer start

    bekomme ich diese Fehlermeldung:


    Bash
    Failed to start mjpg_streamer.service: Unit mjpg_streamer.service not found.


    Bin jetzt schon seit einiger Zeit auf Fehlersuche, vielleicht kann mir ja jemand weiterhelfen?
    Wenn ich den mjpg_streamer manuell (mjpg_streamer -i [...] -o [...]) starte, läuft das Ding.


    Viele Grüße und Danke schonmal :thumbup: