Kā veikt video straumēšanu, izmantojot Raspberry Pi?

Kā veikt video straumēšanu, izmantojot Raspberry Pi? '' ' klasē StreamingOutput(objekts): def __tajā__(pats): pats.rāmis = Nav pats.buferis = Es.BytesIO() pats.stāvoklī = Stāvoklis() def rakstīt(pats, buf): ja buf.sākums(b' xff xd8'): # Jauns rāmis, nokopējiet esošo bufera saturu un paziņojiet par to visiem # klientu tas ir pieejams pats.buferis.saīsināt() ar pats.stāvoklī: pats.rāmis = pats.buferis.getvalue() pats.stāvoklī.paziņot_viss() pats.buferis.meklēt(0) atgriešanās pats.buferis.rakstīt(buf) klasē StreamingHandler(serveris.BaseHTTPRequestHandler): def do_GET(pats): ja pats.ceļš == '/': pats.send_response(301) pats.send_header('Atrašanās vieta', '/index.html') pats.end_headers() elif pats.ceļš == '/index.html': saturu = LAPPUSE.kodēt('utf-8') pats.send_response(200) pats.send_header(“Satura tips”, 'text / html') pats.send_header(“Satura garums”, len(saturu)) pats.end_headers() pats.wfile.rakstīt(saturu) elif pats.ceļš == '/stream.mjpg': pats.send_response(200) pats.send_header('Vecums', 0) pats.send_header('Kešatmiņas vadība', 'kešatmiņa, privāta') pats.send_header('Pragma', “bez kešatmiņas”) pats.send_header(“Satura tips”, 'multipart / x-mixed-aizstāt; robeža = FRAME ') pats.end_headers() mēģiniet: kamēr Patiesi: ar izlaide.stāvoklī: izlaide.stāvoklī.pagaidi() rāmis = izlaide.rāmis pats.wfile.rakstīt(b'- RĀMIS r n') pats.send_header(“Satura tips”, 'image / JPEG') pats.send_header(“Satura garums”, len(rāmis)) pats.end_headers() pats.wfile.rakstīt(rāmis) pats.wfile.rakstīt(b' r n') izņemot Izņēmums ir: mežizstrāde.brīdinājums( 'Noņemts straumēšanas klients% s:% s', pats.klienta adrese, str(ir)) cits: pats.send_error(404) pats.end_headers() klasē StreamingServer(ligzdas serveris.ThreadingMixIn, serveris.HTTPServer): allow_reuse_address = Patiesi daemon_threads = Patiesi ar picamera.PiCamera(izšķirtspēja='640x480', kadru ātrums=24) kamera: izlaide = StreamingOutput() kamera.sākuma_ieraksts(izlaide, formātā='mjpeg') mēģiniet: adrese = (', 8000) serveris = StreamingServer(adrese, StreamingHandler) serveris.serve_forever() beidzot: kamera.stop_recording()

Pēc koda ielīmēšanas jaunajā izveidotajā failā nospiediet Ctrl + X, tips UN un nospiediet Enter.



10. solis: Video straumēšanas palaišana

Pēc skripta saglabāšanas mēs to palaidīsim, izmantojot Python3, ierakstot šādu komandu:

 python3 rpi_video_streaming.py 

Pēc šīs komandas uzrakstīšanas mūsu skripts sāks darboties, un tagad mēs varam piekļūt savam tīmekļa serverim vietnē http: //: 8000 . Mēs atvērsim pārlūkprogrammu un ielīmēsim tajā saiti un izmantosim IP adresi, kuru maršrutētājs ir piešķīris mūsu Pi. Mēs varam nokļūt video straumēšanā, izmantojot mūsu mobilo tālruni, planšetdatoru utt., Kurā ir instalēta pārlūkprogramma un kas ir saistīts ar līdzīgu tīklu kā mūsu Pi. ES rakstīju, '192.168.1.14:8000' video straumēšanas palaišanai.



11. solis: Pēdējo pieskārienu piešķiršana

Tā kā mēs esam pārbaudījuši savu Pi kameru un uzzinājuši, ka tā darbojas labi, mēs esam gatavi to uzstādīt piemērotā vietā. To var uzstādīt netālu no mājas vārtiem, lai mēs varētu uzraudzīt katru personu, kas ienāk mājā vai iziet no tās. Vajag tikai varu IESLĒGTS mūsu kameru, izmantojot adapteri, un labāk būtu ievietot to korpusā un vienkārši atstāt kameras pusi atvērtu video straumēšanai.



Pieteikumi

  1. Drošības nolūkos to var uzstādīt mājās.
  2. To var izmantot birojos, lai uzraudzītu darbinieku kustību.
  3. To var uzstādīt tirdzniecības centros, dzelzceļa stacijās utt., Un administrācijas darbinieki var piekļūt tam, lai pārbaudītu un līdzsvarotu noteiktu teritoriju.