Robot för kontoret (44 / 46 steg)
Steg 44: Kamera utförande och Http-åtkomst
Det finns många bibliotek som kan fånga USB video. Jag rekommenderar mjpeg-streamer för många. Här är ett exempel dokumentera installationen av mjpeg-streamer. När mjpg-streamer är installerat och körs, du bara peka webbläsaren till Raspi IP med (standard) port 8080, som visas i bilden.
Mjpeg-Streamer Installation för USB-kamera
Och här är ett exempel med mjpeg-streamer för raspi-cam:
MJPEG-Streamer installationen för RaspiCam
Baserat på information från den första länken (Mjpeg-Streamer för USB-kamera), här är de kommandon jag sprang för att få kameran Playstation USB kör: [disclaimer: Ja naturligtvis det fungerar första gången! efter ett hundratal försök]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -
sudo apt-get update
sudo apt-get upgrade
lsusb [bör Visa lista med USB-enheter, inklusive din kamera]
sudo lämplig-få installera subversion
sudo lämplig-få installera libv4l-dev
sudo lämplig-få installera libjpeg8-dev sudo apt-get install imagemagick
CD
pwd [(ska Visa /home/pi]
SVN co https://svn.code.sf.net/p/mjpg-streamer/code/
[ovan ska placera en katalog som heter "kod/mjpg-streamer" under katalogen /home/pi, om du vill använda min motor controller i nästa steg, vara säker på att din katalog har samma uppsättning upp]
CD-kod
pwd [bör Visa /home/pi/code]
CD mjpg-streamer
pwd [bör Visa /home/pi/code/mjpg-streamer]
göra USE_LIBV4L2 = sant rent alla
göra DESTDIR = / usr installera
[för Playstation kameran, jag hade att berätta mjpg-streamer att använda YUV format, inte mjpeg standardformatet, att göra detta, Följ dessa delsteg]:
- Nano start.sh [eller vi start.sh]
- Leta efter strängen . / mjpg-streamer utan PREFIXET A pund/hashtag [som är kommentarer]
- inom ovanstående strängen, leta efter strängen ". / input_uvc.so" [med citationstecken!] och ändra det att läsa:
- "./input_uvc.so - yuv" [med citat]
- Så linjen ska se ut som:
- . / mjpg_streamer -i "./input_uvc.so - yuv" -o "./output_http.so -w. / www"
- Spara filen
- Exit
./start.sh [mjpg-streamer bör starta och du kan se felmeddelanden om inte kunna styra ett icke-existerande stativ, dessa fel kan ignoreras]
Utdata visas på min Raspi, när start mjpg-streamer via kommandot./start.h, enligt följande:
- PI ~/code/mjpg-streamer $./start.sh
- MJPG Streamer Version: svn rev: 3:172
- i: använda V4L2 enhet.: / dev/video0
- i: önskad upplösning: 640 x 480
- i: stommen Per andra.: 5
- i: format...: YUV
- i: JPEG kvalitet...: 80
- Att lägga till kontroll för Pan (relativa) UVCIOC_CTRL_ADD - fel: olämpligt ioctl för enhet
- Att lägga till kontroll för Tilt (relativa) UVCIOC_CTRL_ADD - fel: olämpligt ioctl för enhet
- o: www-folder-path...:. /www/
- o: HTTP TCP port...: 8080
- o: username:password.: inaktiverat
- o: kommandon...: aktiverad
Sedan pekade jag min webbläsare från en annan dator i samma nätverk på Raspberry Pi med port 8080.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OBS:
I ett försök att minimera den bandbredd som används för Egors kamera, skrev jag också en UDP-ögonblicksbild överföringsmekanism som jag slutade inte behöver på grund av att sätta Egor i hans egna privata nätverket.