Sådan udføres videostreaming ved hjælp af Raspberry Pi?

Raspberry Pi er en billig computer i lommestørrelse, der kræver noget grundlæggende udstyr til at lave fascinerende projekter, der kan bruges i vores daglige liv for at gøre vores liv enklere. En SD kort indlejret i kortsporet på tavlen fungerer som Harddisk til Raspberry Pi. De nyeste Raspberry Pi-modeller har normalt tre til fire USB-porte (Universal Serial Bus), en Ethernet-port og en High Definition Multimedia Interface (HDMI). Det kan gøre alt, hvad du forventer, at en arbejdsstation skal gøre, som at afspille en video af overlegen kvalitet, lave regneark, FM-radiostationer og spil osv. Live streaming videokameraer kan bruges til sikkerhed eller individuelle formål. Webcams, videokameraer, DSLR'er og spejlfrie kameraer til live video streaming er let tilgængelige på markedet, men de er dyre. I dette projekt laver vi et live streaming kamera med Raspberry Pi, der er en økonomisk enhed, der kan tilgås over trådløst internet også. Vi ville være i stand til at se live-videostreaming på vores mobiltelefoner, tablets og stationære pc'er.

Sådan konfigureres Pi-kamera til live streaming?

Den bedste metode til at starte ethvert projekt er at lave en liste over komponenter, fordi ingen vil holde sig midt i et projekt bare på grund af en manglende komponent.

Trin 1: Nødvendige komponenter

Trin 2: Valg af Raspberry Pi-modellen

Valget af Raspberry Pi er en meget teknisk opgave, og det skal udføres omhyggeligt, så du ikke lider i fremtiden. Raspberry Pi Zero foretrækkes ikke, fordi det er den ældste model, der er tilgængelig på markedet med en begrænset mængde specifikationer, og at oprette et netværk på det er et meget trættende job. De nyeste modeller som 3A +, 3B + kan købes. Raspberry Pi 3 er den hurtigste og mest dominerende gadget, som Raspberry Pi Foundation hidtil har frigivet. Så i dette projekt bruger vi Raspberry Pi 3B +.

Trin 3: Opsætning af Raspberry Pi

Der er to muligheder for opsætning af Raspberry Pi. For det første er den ene at forbinde din Pi med LCD og forbinde alle nødvendige perifere enheder og begynde at arbejde. Den anden er at oprette Pi med den bærbare computer og få adgang til den eksternt. Det afhænger af tilgængeligheden af ​​LCD, hvis du har det derhjemme, kan du indstille din Pi ved hjælp af en LCD. Tilslut LCD'et til Raspberry's HDMI-port ved hjælp af HDMI til VGA-adapter. Hvis du ønsker at få adgang til din Pi eksternt, skal du følge min artikel, der hedder “Sådan får du adgang til grafisk brugergrænseflade (GUI) til Raspberry Pi ved hjælp af SSH og VNC Viewer?”.I denne artikel beskrives en detaljeret opsætning af Pi med en bærbar computer, og efter login skal du være i stand til at få fjernadgang til Pi.

Trin 4: Sørg for, at Raspberry Pi er opdateret

Efter oprettelsen af ​​Raspberry Pi ville vi sikre, at vores Pi fungerer fint, og at alle de nyeste pakker er installeret på den. Åbn kommandovinduet, og skriv følgende to kommandoer for at opdatere Pi.

sudo apt-get opdatering

Derefter,

sudo apt-get opgradering

Hvis der er installeret opdateringer, skal du trykke på Y og tryk derefter på Gå ind for at fortsætte med at downloade opdateringer.

Trin 5: Aktivering af Raspberry Pi-kameramodulet

Vi er nødt til at aktivere Raspberry Pi-kameramodulet, før vi bruger det. Luk kommandovinduet efter opdatering af pakkerne og klik på hindbær-ikonet i øverste venstre hjørne af skrivebordsskærmen. Rul ned til Raspberry Pi-indstillinger, klik på indstillingen Grænseflader og aktiver Kamera derfra.

Det kan også aktiveres ved at skrive følgende kommando i Terminalvindue:

sudo raspi-config

Efter at have skrevet denne kommando, ser vi, at Raspberry Pi softwarekonfigurationsværktøj åbnes, rul ned til Interfacing Options, og tryk på Gå ind.

En ny skærm vises, og vi ser Kamera nævnt øverst. Tryk på Enter:

Efter at kameraet er aktiveret, skal Pi genstartes for at ændringerne kan træde i kraft. Vi genstarter vores Pi, inden du fortsætter videre, og det kan gøres ved at skrive følgende kommando.

sudo genstart

Trin 6: Notering af IP-adresse til Pi

Vi har brug for adgang til videostreaming-webserveren senere, derfor skal vi kende den IP-adresse, der er tildelt Raspberry Pi. Da vi allerede har fundet ud af IP-adressen, mens vi opretter vores Pi, noterer vi den og fortsætter videre. Der er også en alternativ måde at finde ud af IP-adressen på, og det er at skrive følgende kommando i terminalvinduet efter opsætning af Wifi på vores Pi.

ifconfig

I mit tilfælde er IP-adressen tildelt min Pi "192.168.1.14“.

Trin 7: Tilslutning af kameramodulet

Nu er vi klar til at tilslutte vores kameramodul til Pi, men inden du gør det, skal du være opmærksom på, at kameraet kan blive beskadiget af elektricitet produceret via statiske opladninger. Før du tager kameraet ud af den grå pakke, skal du sikre dig, at du har afladet dig selv ved at røre ved noget jordingsmateriale. Under installation af kameraet skal du lukke Pi'en og slutte kameraet til CSI porten på Pi, og sørg for, at kameraet er forbundet i den rigtige retning med de stribeblå bogstaver vendt opad som vist i figuren nedenfor.

Trin 8: Leder du efter passende format til webstreaming

Det er en smule hård opgave, fordi der ikke er nogen videoformater, der er universelt understøttet af alle webbrowsere. HTTP blev oprindeligt designet til at betjene websider, og siden lanceringen er der blevet tilføjet mange tilføjelser til cateringfildownloads, live streaming osv. Derfor vil vi holde dette billede i betragtning, og vi vil streame vores video i et simpelt format med navnet MJPEG. Koden, der er nævnt i næste trin, bruger den indbyggede http.servermodul til at gøre videostreaming meget lettere. Et passende format med kode kan findes på embedsmanden Picamera internet side.

Trin 9: Skrivning af scriptet til videostreaming

Vi skal skrive scriptet til videostreaming, og det kan findes på den officielle PiCamerainternet side. For det første skal du oprette en ny fil med navnetrpi_video_streaming.py ved at skrive følgende kommando i terminalvinduet:

sudo nano rpi_video_streaming.py

Efter oprettelse af filen kopier koden nævnt nedenfor eller download koden herfra. Hvis du downloader koden fra linket, skal du rulle ned på websiden og kontrollere 4.10. Web-streaming en del.

import io import picamera import logging import socketserver fra threading import Betingelse fra http import server PAGE = "" "\   picamera MJPEG streaming demo   

PiCamera MJPEG Streaming Demo

"" "klasse StreamingOutput (objekt): def __init __ (selv): self.frame = Ingen self.buffer = io.BytesIO () self.condition = Tilstand () def skriv (self, buf): hvis buf.startswith (b '\ xff \ xd8'): # Ny ramme, kopier den eksisterende buffers indhold og underret alle # klienter, det er tilgængeligt self.buffer.truncate () med self.condition: self.frame = self.buffer.getvalue () self.condition .notify_all () self.buffer.seek (0) returner self.buffer.write (buf) klasse StreamingHandler (server.BaseHTTPRequestHandler): def do_GET (self): if self.path == '/': self.send_response (301 ) self.send_header ('Location', '/index.html') self.end_headers () elif self.path == '/index.html': content = PAGE.encode ('utf-8') self.send_response ( 200) self.send_header ('Content-Type', 'text / html') self.send_header ('Content-Length', len (content)) self.end_headers () self.wfile.write (content) elif self.path == '/stream.mjpg': self.send_response (200) self.send_header ('Age', 0) self.send_header ('Cache-Control', 'no-cache, private') self.send_header ('P ragma ',' no-cache ') self.send_header (' Content-Type ',' multipart / x-mixed-substit; grænse = FRAME ') self.end_headers () prøv: mens True: med output.condition: output.condition.wait () frame = output.frame self.wfile.write (b' - FRAME \ r \ n ') selv .send_header ('Content-Type', 'image / jpeg') self.send_header ('Content-Length', len (frame)) self.end_headers () self.wfile.write (frame) self.wfile.write (b '\ r \ n') undtagen Undtagelse som e: logging.warning ('Fjernet streamingklient% s:% s', self.client_address, str (e)) andet: self.send_error (404) self.end_headers () klasse StreamingServer (socketserver.ThreadingMixIn, server.HTTPServer): allow_reuse_address = True daemon_threads = True med picamera. PiCamera (opløsning = '640x480', framerate = 24) som kamera: output = StreamingOutput () camera.start_recording (output, format = 'mjpeg ') prøv: adresse = (' ', 8000) server = StreamingServer (adresse, StreamingHandler) server.serve_forever () endelig: camera.stop_recording ()

Efter indsættelse af koden i den nye oprettede fil skal du trykke på Ctrl + X, type Y og tryk på Gå ind.

Trin 10: Kørsel af videostreaming

Efter at have gemt scriptet, kører vi det ved hjælp af Python3 ved at skrive følgende kommando:

python3 rpi_video_streaming.py

Efter at have skrevet denne kommando, begynder vores script at køre, og nu kan vi få adgang til vores webserver på http: //:8000. Vi åbner browseren og indsætter linket i den og bruger den IP-adresse, der er tildelt vores Pi af routeren. Vi kan komme til videostreaming via vores mobiltelefon, tablet osv., Der har en browser installeret i den og er forbundet med et lignende netværk som vores Pi. Jeg skrev, “192.168.1.14:8000” til at køre videostreaming.

Trin 11: Giv sidste hånd

Da vi har testet vores Pi-kamera og fik at vide, at det fungerer fint, er vi klar til at installere det på et passende sted. Det kan være installeret nær porten til huset, så vi kunne overvåge enhver person, der kommer ind eller forlader huset. Alt, hvad vi har brug for, er magten vores kamera ved hjælp af adapteren, og det ville være bedre at placere det i et kabinet og bare lade kamerasiden være åben til videostreaming.

Ansøgninger

  1. Det kan installeres i hjem af sikkerhedsmæssige årsager.
  2. Det kan bruges på kontorer til overvågning af medarbejderbevægelsen.
  3. Det kan installeres i indkøbscentre, jernbanestationer osv. Og administrationspersonalet kan få adgang til det for at få kontrol og balance i et bestemt område.
Facebook Twitter Google Plus Pinterest