USB Kamera am Raspberry Pi 3B

  • Hallo zusammen,


    ich möchte mit meinem Raspberry pi eine Rückfahrkamera erstellen. Ich kann die Kamera nun Im VLC Mediaplayer öffnen, jedoch nicht über den Webbrowser.

    Meine Idee war es prinzipiell einfach einen Livestream zu starten und diesen dann über den Webbrowser und der Localen IP anzuzeigen.


    Ist das Möglich und kann mir da einer helfen da umzusetzen?


    Danke im Voraus.


    Grüsse Pueuna

    Immer fleissig bleiben und nicht verzweifeln.

  • Hallo,

    zu deinen eigentlichen Problem kann ich nichts sagen aber.

    Meine Erfahrungen mit wireless Kameras ist, dass sie viel zu träge sind.

    Du hast das Hindernis schon angefahren und siehst es erst danach im Monitor :)

    Raspberry pi 4, pi 3 Model B , Zero WH , NodeMCU

  • Hallo zusammen,


    ich werde euch nun hier erklären, wie ihr eine 0815 Webcam an den Raspberry anschliessen und anschliessend im Browser anzeigen könnt.


    Ich habe ein Raspberry Pi 3b+ und eine Webkamera für 15.- verwendet.


    Zuerst müssen wir den Raspberry updaten:

    Code
    sudo apt-get update
    sudo apt-get upgrade


    anschliessend können wir das Tool Motion installieren:

    Code
    sudo apt-get install motion -y


    ist die Installation abgeschlossen können wir überprüfen, ob die Webkamera erkannt wurde, dazu geben wir folgenden Befehl ein:

    Code
    lsusb


    Sofern keine speziellen Treiber notwendig sind, was meistens nicht der Fall ist, können mit dem folgenden Befehl alle angeschlossenen Kameras angezeigt werden.

    Code
    ls /dev/video*

    Nun müssen wir die Kamera noch anzeigen lassen, das geschieht mit folgendem Befehl:

    Code
    sudo modprobe bcm2835-v4l2

    Falls nun nur eine Webkamera angeschlossen ist, sollte diese unter /Dev/video0 angezeigt werden


    Livestream konfigurieren


    zuerst müssen wir die Kamera Details aufrufen:

    Code
    v4l2-ctl -V

    für meine Webkamera habe ich folgende Angaben erhalten, dabei müssen wir uns die Auflösung usw. merken (Wir benötigen sie für die Konfigurationsdatei), am besten ein Foto machen ;) .

    Code
    pi@raspberrypi:~ $ v4l2-ctl -V
    Format Video Capture:
            Width/Height  : 640/480
            Pixel Format  : 'YUYV'
            Field         : None
            Bytes per Line: 1280
            Size Image    : 614400
            Colorspace    : SRGB
            Flags         :



    Nun müssen wir also die Konfigurationsdatei vom Motion bearbeiten:

    Code
    sudo nano /etc/motion/motion.conf


    Folgende Zeilen müssen dabei angepasst werden (Die Variable kann mit STRG+W gesucht werden, die hinteren Werte müssen dabei abgeändert werden):

    Code
    # Start in daemon (background) mode and release terminal (default: off)
    daemon on
    ...
    # Restrict stream connections to localhost only (default: on)
    stream_localhost off
    ...
    # Target base directory for pictures and films
    # Recommended to use absolute path. (Default: current working directory)
    target_dir /home/pi/Monitor


    Die folgenden Zeilen sollten optional auch geändert werden, vom Foto von vorher, wobei mit der Framerate etwas gespielt werden muss, unterstützt eure Kamera nur 30FPS macht es kein Sinn dort 60FPS reinzuschreiben :

    Code
    v4l2_palette 15     # Nummer aus der Tabelle davor entnehmen, 15 enstpricht YUYV
    ... 
    # Image width (pixels). Valid range: Camera dependent, default: 352 
    width 640 
    
    # Image height (pixels). Valid range: Camera dependent, default: 288 
    height 480 # Maximum number of frames to be captured per second. 
    
    # Valid range: 2-100. Default: 100 (almost no limit). 
    framerate 60 

    Gespeichert wird dann mit STRG+O und geschlossen mit STRG+X, nun solltet ihr den Raspberry neu starten.


    Um den Service zu starten, müssen wir noch den Deamon aktivieren:

    Code
    sudo nano /etc/default/motion

    Hier ersetzen wir "no" mit "yes", womit folgender Text dort steht:

    Code
    start_motion_deamon=yes


    Wenn ihr die Kamera nur als Livestream benutzen wollt, müsst ihr den folgenden Schritt unbedingt auslassen, da sonst alle Videos gespeichert werden:


    Nun müssen wir dem vorher angegeben Spicherort noch die nötigen Schreibrechte erteilen.

    Code
    mkdir /home/pi/Monitor
    sudo chgrp motion /home/pi/Monitor
    chmod g+rwx /home/pi/Monitor


    Nun wieder für alle:


    Jetzt kann der Service bereits gestartet werden:

    Code
    sudo service motion start


    Falls ihr nun durch ein Python Programm den Webbrowser aufrufen wollt könnt ihr folgenden Befehl in euer Programm einpflegen:

    Python
    import webbrowser
    
    (euer Programm)
    
    webbrowser.open('127.0.0.1:8081')        #Befehl zum öffnen des Webbrowsers mit der IP-Adresse des Raspberrys und dem Port 8081

    Wählt ihr anstatt des Portes 8081 den Port 8080 wird das Konfigurationsfenster von Motion im Webbrowser geöffnet.


    Ich wünsche euch viel Spass


    Sollte etwas nicht gehen, antwortet doch gerne auf diesen Thread.


    Und verzweifelt an euern Programmen nicht, nicht alles klappt auf anhieb.


    Immer fleissig bleiben und nicht verzweifeln.