Kuinka suoratoistaa videon suoratoistoa Raspberry Pi: n avulla?

Kuinka suoratoistaa videon suoratoistoa Raspberry Pi: n avulla? '' luokassa StreamingOutput(esine): def __sen sisällä__(itse): itse.runko = Ei mitään itse.puskuri = Minä.TavuaIO() itse.kunto = Kunto() def kirjoittaa(itse, buf): jos buf.startswith(b' xff xd8'): # Uusi kehys, kopioi nykyinen puskurin sisältö ja ilmoita siitä kaikille # asiakasta se on käytettävissä itse.puskuri.katkaista() kanssa itse.kunto: itse.runko = itse.puskuri.getvalue() itse.kunto.ilmoittaa_kaikki() itse.puskuri.etsiä(0) palata itse.puskuri.kirjoittaa(buf) luokassa SuoratoistoKäsittelijä(palvelin.BaseHTTPRequestHandler): def do_GET(itse): jos itse.polku == '/': itse.send_response(301) itse.send_header('Sijainti', '/index.html') itse.end_headers() elif itse.polku == '/index.html': sisältö = SIVU.koodata('utf-8') itse.send_response(200) itse.send_header('Sisältötyyppi', 'teksti / html') itse.send_header(Sisällön pituus, len(sisältö)) itse.end_headers() itse.wtiedosto.kirjoittaa(sisältö) elif itse.polku == '/stream.mjpg': itse.send_response(200) itse.send_header('Ikä', 0) itse.send_header('Välimuistin hallinta', 'ei välimuistia, yksityinen') itse.send_header('Pragma', 'ei välimuistia') itse.send_header('Sisältötyyppi', 'moniosainen / x-sekoitettu-korvaa; raja = FRAME ') itse.end_headers() yrittää: sillä aikaa Totta: kanssa ulostulo.kunto: ulostulo.kunto.odota() runko = ulostulo.runko itse.wtiedosto.kirjoittaa(b'--KEHYS r n') itse.send_header('Sisältötyyppi', 'kuva / JPEG') itse.send_header(Sisällön pituus, len(runko)) itse.end_headers() itse.wtiedosto.kirjoittaa(runko) itse.wtiedosto.kirjoittaa(b' r n') paitsi Poikkeus kuten On: puunkorjuu.Varoitus( 'Poistettu suoratoistosovellus% s:% s', itse.asiakasosoite, str(On)) muu: itse.send_error(404) itse.end_headers() luokassa StreamingServer(pistorasiapalvelin.ThreadingMixIn, palvelin.HTTPS-palvelin): allow_reuse_address = Totta daemon_threads = Totta kanssa picamera.PiCamera(resoluutio='640x480', ruudunpäivitysnopeus=24) kuten kamera: ulostulo = StreamingOutput() kamera.Aloita nauhottaminen(ulostulo, muoto='mjpeg') yrittää: osoite = ('', 8000) palvelin = StreamingServer(osoite, SuoratoistoKäsittelijä) palvelin.serve_forever() lopulta: kamera.stop_recording()

Kun olet liittänyt koodin uuteen luotuun tiedostoon, paina Ctrl + X, tyyppi JA ja paina Tulla sisään.



Vaihe 10: Suorita videon suoratoisto

Skriptin tallentamisen jälkeen suoritamme sen Python3: lla kirjoittamalla seuraavan komennon:

 python3 rpi_video_streaming.py 

Tämän komennon kirjoittamisen jälkeen komentosarjamme alkaa toimia ja voimme nyt käyttää verkkopalvelinta osoitteessa http: //: 8000 . Avaamme selaimen ja liitämme linkin siihen ja käytämme IP-osoitetta, jonka reititin on määrittänyt Pi: lle. Voimme päästä videoiden suoratoistoon matkapuhelimemme, tablet-laitteemme jne. Kautta, johon on asennettu selain ja joka on liitetty samanlaiseen verkkoon kuin Pi. Kirjoitin, '192.168.1.14:8000' videon suoratoiston suorittamiseen.



Vaihe 11: Viimeisen kosketuksen antaminen

Kun olemme testanneet Pi-kameramme ja saaneet tietää, että se toimii hyvin, olemme valmiita asentamaan sen sopivaan paikkaan. Se voidaan asentaa talon portin lähelle, jotta voimme tarkkailla kaikkia ihmisiä, jotka tulevat taloon tai lähtevät talosta. Tarvitsemme vain voimaa PÄÄLLÄ kameramme käyttämällä sovitinta ja olisi parempi laittaa se koteloon ja jättää kameran puoli auki videon suoratoistoa varten.



Sovellukset

  1. Se voidaan asentaa koteihin turvallisuussyistä.
  2. Sitä voidaan käyttää toimistoissa työntekijöiden liikkumisen seuraamiseen.
  3. Se voidaan asentaa ostoskeskuksiin, rautatieasemille jne., Ja hallintohenkilöstö voi käyttää sitä tarkastuksen ja tasapainon saamiseksi tietyllä alueella.