¿Cómo realizar la transmisión de video con Raspberry Pi?'''claseStreamingOutput(objeto):def__en eso__(yo):yo.marco=Ningunayo.buffer=yo.BytesIO()yo.condición=Condición()defescribir(yo,soplo):Sisoplo.comienza con(b' xff xd8'):# Nuevo marco, copie el contenido del búfer existente y notifique a todos# clientes está disponibleyo.buffer.truncar()conyo.condición:yo.marco=yo.buffer.obtener valor()yo.condición.notificar_todos()yo.buffer.buscar(0)regresoyo.buffer.escribir(soplo)claseStreamingHandler(servidor.BaseHTTPRequestHandler):defdo_GET(yo):Siyo.camino=='/':yo.enviar respuesta(301)yo.send_header('Ubicación','/index.html')yo.end_headers()elifyo.camino=='/index.html':contenido=PÁGINA.codificar('utf-8')yo.enviar respuesta(200)yo.send_header('Tipo de contenido','texto / html')yo.send_header('Largancia de contenido',len(contenido))yo.end_headers()yo.wfile.escribir(contenido)elifyo.camino=='/stream.mjpg':yo.enviar respuesta(200)yo.send_header('Años',0)yo.send_header('Cache-Control','sin caché, privado')yo.send_header('Pragma','no-cache')yo.send_header('Tipo de contenido','multipart / x-mixed-replace; límite = MARCO ')yo.end_headers()tratar:mientrasCierto:consalida.condición:salida.condición.Espere()marco=salida.marcoyo.wfile.escribir(b'--MARCO r n')yo.send_header('Tipo de contenido','imagen / jpeg')yo.send_header('Largancia de contenido',len(marco))yo.end_headers()yo.wfile.escribir(marco)yo.wfile.escribir(b' r n')exceptoExcepcióncomoes:Inicio sesión.advertencia('Cliente de transmisión eliminado% s:% s',yo.dirección_cliente,str(es))más:yo.enviar error(404)yo.end_headers()claseStreamingServer(servidor de sockets.ThreadingMixIn,servidor.HTTPServer):allow_reuse_address=Ciertodaemon_threads=Ciertoconpicamera.PiCamera(resolución='640x480',cuadros por segundo=24)comocámara:salida=StreamingOutput()cámara.iniciar la grabación(salida,formato='mjpeg')tratar:habla a=('',8000)servidor=StreamingServer(habla a,StreamingHandler)servidor.serve_forever()finalmente:cámara.para de grabar()
Después de pegar el código en el nuevo archivo creado, presione Ctrl + X, tipo Y y presione Entrar.
Paso 10: Ejecución de la transmisión de video
Después de guardar el script lo ejecutaremos usando Python3 escribiendo el siguiente comando:
python3 rpi_video_streaming.py
Después de escribir este comando, nuestro script comenzará a ejecutarse y ahora podemos acceder a nuestro servidor web en http://:8000 . Abriremos el navegador y pegaremos el enlace en él y usaremos la dirección IP que el enrutador asigna a nuestro Pi. Podemos acceder a la transmisión de video a través de nuestro teléfono celular, tableta, etc que tiene un navegador instalado y está asociado a una red similar a nuestra Pi. Escribí, “192.168.1.14:8000” para ejecutar la transmisión de video.
Paso 11: Dar los toques finales
Como probamos nuestra cámara Pi y supimos que funciona bien, estamos listos para instalarla en un lugar adecuado. Puede instalarse cerca de la puerta de la casa para que podamos monitorear a todas las personas que entran o salen de la casa. Todo lo que necesitamos es poder EN nuestra cámara usando el adaptador y sería mejor ponerla dentro de una carcasa y dejar el lado de la cámara abierto para la transmisión de video.
Aplicaciones
Se puede instalar en viviendas por motivos de seguridad.
Se puede utilizar en oficinas para monitorear el movimiento de los empleados.
Se puede instalar en centros comerciales, estaciones de tren, etc. y puede ser accedido por el personal de administración para tener control y balance en un área específica.