Commentum

Der Einfall, die Lüge, die Erdichtung

Raspberry Pi als Webcam-Server mit MJPG-Streamer


Hier beschreibe ich eine einfache Installation und Konfiguration eines Raspberry Pi als Webcam-Server. Eingesetzt werden das Programm MJPG-Streamer und eine preiswerte LogiLink-Webcam aus dem Supermarkt. Einfach am USB anschließen und mit dem Kommando "lsusb" prüfen, ob die Kamera auch vom System erkannt wird.



Microdia? Nicht LogiLink? Kein Problem, hier wird nur der Vendor (Hersteller) des Videochips angezeigt. Details kann man mit der Option "-v" erfahren.


 

Aus der bFunctionClass und der bFunctionSuClass kann man aber sicher schließen, daß es sich um ein Videodevice handelt und nicht etwa einen USB-Ventilator oder ähnlichem...


Ob ein entsprechendes Gerät im System bekannt ist, kann man dem Verzeichnis /dev/ entnehmen.

 

Immer noch Zweifel? Mit dem Kommando "dmesg" kann man diese aus dem Weg räumen.

 

Nun installiere ich das Programm "mjpg-Streamer" und die dazu noch notwendigen Pakete. Zunächst erfolgt das Neueinlesen der Paketlisten.

 

Und nun die eigentliche Installation, zuerst die notwendigen Pakete.

 

Jetzt noch den Quellcode von MJPG-Streamer aus dem SVN Repository herunterladen und in das Quellcode-Verzeichnis wechseln.

 

Dann in das Verzeichnis mjpg-streamer wechseln.

 

Nun mit dem Kommando "make" im Quellcodeverzeichnis das Programm kompilieren.

 

Wenn der Quellcode erfolgreich kompiliert wurde beginnt die Installation von mjpg-streamer.

 

Funktioniert es denn nun auch? Starten wir zum Testen einfach einmal den mjpg_streamer.

 

 


Wenn alles geklappt hat, dann sollten wir auch einen entsprechenden Prozeß erkennen:

  

Zum Starten des mjpg-streamer wird am besten ein Shell-Script verwendet. Nennen wir es einfach "mjpg_streamer". Also legen wir eine Datei im Verzeichnis /etc/init.d (hier befinden sich die beim Systemstart als Scripte zu lesenden/auszuführenden Services/Anwendungen) an.

  

Ja, ich habe hier gleich 2 Kameras eingebunden. Aber nun wollen wir das Script auch noch ausführbar machen:


 

Nun "verlinken" wir noch das init-Script mit den jeweiligen Runlevel-Verzeichnissen:

  

Nun aber der endgültige Test: System "rebooten" und die Ergebnisse überprüfen:


Nach dem Neustart suche ich nach den passenden Prozessen:

 

Und siehe da: Beide beim Systemstart "hochgefahren".

Also einen Webbrowser mit http://[ipadresse oder hostname]:8080/stream.html (statt des Hostname einfach die IP des Raspberry nehmen, je nach Netzkonfiguration) ausstatten und das Ergebnis anschauen (hier beobachten sich die Kameras gegenseitig).

  

Natürlich sind auch andere Zugriffmöglichkeiten wie zum Beipiel VLC gegeben. 

 

Medien -> Netzwerkstream öffnen und die entsprechenden Parameter eingeben.Und als Ergebnis verfolgen wir den Stream der Webcam:



 

Es gibt noch andere Möglichkeiten wie die Verwendung von Java und Javascript. Aber dazu vielleicht einmal später...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

E-Mail
Infos