Raspberry pi camera streaming

Raspberry pi camera streaming

Raspberry pi 3 modelo b

Soy nuevo en la Raspberry Pi e incluso nuevo en la cámara Raspberry Pi. He visto un montón de tutoriales en línea para la cámara Raspberry Pi, pero todavía tienen que encontrar en que me permite transmitir directamente desde la cámara Raspberry Pi como se puede con una cámara web (utilizando SimpleCV o OpenCV). Esperaba que alguien pudiera indicarme la dirección correcta.
La solución sugerida por Diego es buena salvo que es bastante lenta y tiene un enorme retardo de video ya que el vlc allí retransmite un stream del raspvid. Desde el 12/2013 hay un driver oficial v4l2 disponible: http://www.ics.com/blog/raspberry-pi-camera-module#.VJFhbyvF-b8
Este crea un stream http en el puerto 12345, puedes usar otros formatos también, como el rtcp de la respuesta de Diego. Lee más sobre esto aquí: https://web.archive.org/web/20151012014829/http://www.videolan.org:80/doc/streaming-howto/en/ch03.html
Hay varias opciones entre las que puedes elegir. En mi trabajo usamos VLC para transmitir el vídeo capturado por la cámara de la Raspberry Pi desde nuestras salas de servidores a la oficina. Una de las desventajas de esto es que hay unos 5 segundos de retraso y no he encontrado una solución a esto. La siguiente es nuestra configuración:

Raspberry pi os

from picamera import PiCamera12. Añade el objeto cámara. En la línea 4 creamos un objeto que podemos utilizar para controlar la cámara. La línea 5 configura la cámara para utilizar la resolución máxima de la cámara HQ. Si estás usando una cámara más antigua, cambia esto para reflejar tus necesidades. camera = PiCamera()
camera.resolution = (4056, 3040)13. Crea la función takepic(). En la línea 20 vemos un decorador de Python utilizado para identificar un área de código que puede ser llamado por el servidor Anvil. Este código es nuestra función «takepic», llamada cuando se hace clic en el botón. Esta función capturará una imagen y la guardará como ‘foo.jpg’, luego en la línea 23 devolvemos este archivo como un objeto multimedia que Anvil puede mostrar en la aplicación.  @anvil.server.callable

Transmisión de la cámara de la raspberry pi a través de internet

Tengo una raspberry y varias cámaras conectadas a ella, ahora quiero poder ver la imagen de la manera más efectiva. Ejecutar un xserver allí y usar vnc o algo para ver la imagen es bastante ineficaz y lento, consumiendo mucha cpu.
¿Hay alguna forma sencilla de hacer esto en el terminal? Puedo almacenar el vídeo utilizando aconv directamente a un archivo en la terminal, pero ¿qué pasa si quería conseguir la salida de la cámara accesible a través de la red para que pueda transmitir directamente / mostrar en el 3er PC (corriendo linux)? He visto algunas opciones utilizando el servidor apache, pero que parece ser ineficaz, así, necesito algo lo que come casi ninguna memoria y cpu
¡hay muchos otros métodos alternativos (rtsp, tcp, udp, o incluso la configuración de un servidor de streaming por ffserver) para la transmisión de los datos de vídeo de la cámara a su PC, pero lo que estaba luchando con, es que no me di cuenta de la versión ffmpeg era demasiado viejo para proceder datos de vídeo de la cámara!
Puedes usar ffmpeg para manipular los datos y transmitirlos. Por tu pregunta supongo que no quieres que las imágenes de la cámara estén disponibles públicamente, así que puedes mantenerlo simple con la transferencia de datos punto a punto.

Sudo

No quiero instalar ninguna aplicación extra ya que quiero aprovechar el HTML5 que está disponible. Dado que Chrome/Safari tiene decodificadores integrados para H.264, sólo quiero apuntar mi navegador a la URL y ver la transmisión.
El concepto detrás de este streaming es que segmentos cortos de archivos, de al menos 5 segundos de duración (en este ejemplo – es posible que haya nuevas formas de acelerarlo) son grabados y guardados en un archivo propio. El archivo de la lista de reproducción se actualiza con el nuevo nombre del archivo y el cliente siempre sondea esta lista de reproducción y descarga el archivo más reciente. Hay algunos mecanismos involucrados para fusionar el vídeo sin problemas en el cliente. Esto es por lo que otros desarrolladores no quieren implementar esto porque requiere mucho esfuerzo y no cumple con los estándares de HTML5 (aunque no hay un estándar adecuado de HTML5 para las transmisiones en vivo… Ehh, suspiro).
Después de instalar todo, puedes acceder al servidor HTTP en el puerto 8080. También deberías comprobar el archivo /etc/uv4l/conf y establecer si quieres mjpeg o H.264, ya que esto marca la diferencia, pero puedes ajustar algunas opciones a través del servidor web incorporado.

Acerca del autor

admin

Ver todos los artículos