Home > cvnodestreaming

cvnodestreaming

Cvnodestreaming is a project mainly written in C++ and C, it's free.

Streaming de video utilizando Node.js, OpenCV y Thrift

Este proyecto es una prueba de concepto para lograr video streaming de datos procesado con OpenCV.

La idea es poder capturar frames desde una camara utilizando OpenCV para después realizar algún procesamiento y finalmente poner el resultado de este procesamiento en un sitio web, como si de video en vivo se tratara.

¿Por qué hacer el streaming a una web? Para que así puede ser accedida por cualquier dispositivo sin la necesidad de crear clientes para cada plataforma.

Una approach anterior fue utilizar Gstreamer, pero no logré transmitir a un sitio web.

Cualquier duda, comentario.. no dudes en contactarme.

Funcionamiento:

main.cpp contiene lo necesario para hacer la captura desde una camara utilizando OpenCV, cuando un frame es captura (y procesado) este es enviado al servidor Node.js utilizando Thrift.

El servidor Node.js escucha en 2 puertos, uno (8080) para la web y en el 9090 para thrift.

Cuando el servidor nodejs+thrift recibe una imagen envia una señal a la sección que maneja el servicio web (con express) para que escriba el frame recién recibido utilizando multipart/x-mixed-replace .. generando un stream como el que se puede ver en camaras ip (mjpeg).q

Previous:demo_app