UTNianos

Versión completa: Duda Programacion Web
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Páginas: 1 2
Bueno, tengo un proyecto que anda dando vueltas en mi cabeza, pero como nunca me interese en el desarrollo web wall
me cabe la duda de si sera posible hacer algunas cosillas.

Un DVR es el aparatillo que se usa para hacer los sistemas de seguridad con cámaras, básicamente le conectas las cámaras guarda todo en un disco y tiene una salida rj45 que conectándolo a una pc y entrando a la ip de el DVR podes ver las cámaras en la red con una interfaz web que ya trae el DVR
Mi pregunta es: Puedo desde esta computadora tomar la imagen de las cámaras y usarlas a mi gusto? pasarlas a un servidor web privado mio? o manipularlas y mostrarlas en una aplicación .net de escritorio o en una app web que yo tenga en mi servidor?

Mi idea es hacer esto con una Raspberry PI sera posible?
Seguramente si, habra que ver que tan complejo sea hacer eso. Si la app que te ofrecen las camaras puede hacerlo, vos tambien =P
(20-10-2014 00:44)Adriano escribió: [ -> ]Seguramente si, habra que ver que tan complejo sea hacer eso. Si la app que te ofrecen las camaras puede hacerlo, vos tambien =P

¿la raspberry como para que?
si tenes acceso lan al dvr probablemente te ofrezca una interfaz con la cual te podes conectar desde tu compu de escritorio.

si aclaras un poc mas la idea podriamos asesorarte mejor sobre que poner en el medio para lograrlo
en chrome, en el video, toca boton derecho -> inspeccionar elemento y fijate que te dice. En una de esas te tira una URL donde esta streameando directamente el video y listo, hace que tu app acceda directamente a esa url =P. Es uno de los conceptos de las arquitecturas REST, que vos puedas agregar capas arriba y consumirlas desde otra app.
Si. Yo me imagine que puede darme la url pero esto esta hasteado en el dvr y esta en la red local y yo quiero accederlo desde fuera de la LAN.

Perdon doy mas detalles. El dvr me da un programa para acceder de la pc de mi red. Mi idea es con la raspberry pasarlo a un servidor externo pago y poder acceder a los vídeos desde cualquier pc por internet
yo el dvr que uso lo tengo conectado a la red y le di forward al puerto q usa en el router y directamente entro por la web, no seria lo mismo?
Si.. podría ser pasa q lo tengo q hacer con una raspberry y lo mas importante tengo que poder manipular los datos. Ponerlos en otra interfaz , me hago entender ?

A ver en realidad no importa con que el punto es que yo con una 3g conectada al dvr , tengo que poder acceder a las cámaras remotamente y armar una interfaz de usuario para esta. Por eso pense en una raspberry con modulo gsm
No entendi como es a conexion del dvr. Es punto a punto por cable de red? o puede ir directo a una red?

No especificaste, pero me imagino que es la segunda.
Debes tener 2 posibilidades. O un puerto serparado para cada una de las camaras del DVR. O un servidor que contra solicitud crea un streaming (corriendo en el dvr). Cualquiera de las posibilidades es facil de implementar.

Si tu configuracion es asi:
DVR -> Servidor -> Cloud -> Cliente.

Transformala en esta:
DVR->Servidor->OtroServidor* ->Cliente.
El otro (OtroServidor*) servidor lo programas de dos formas.
O que saque instantaneas cada X segundos y contra solicitud las envie.
O que saque la instantanea contra solicitud envia.


Salvo que quieras enviar el streaming del video por 3g... lo cual en la argentina es medio inviable en buena calidad de video.
Por lo que vas a tener que crear un "encoder" para bajarle la resolucion al video.

Hacer streaming de video es facil, ya esta todo resuelto.

Fe de erratas:

Me parece que no tenes claro como funcionan las cosas y por eso no las podes explicar bien.

Tene varios inconvenientes.
Si vas a usar un nodo 3G, vas a tener el problema de que no vas a conocer la direccion IP.
Tenes un par de formas de solucionar esto.

Teniendo en cuenta eso que puse de (OtroServidor*), tenes que imaginartelo como un conjunto. Puede ser solamente la raspberry, o la rasp + un server con direccion fija.

Si vas a usar la raspberry sola, tenes que tener la seguridad de que podes mandar (y recibir) un mensaje de texto ademas de usar la conexion de internet. Por dicha comunicacion por sms, tenes que intercambiar la suficiente info para configurar los dos extremos del nodo para que pueda lograrse la comunicacion.

Si no, va a necesitar un host, que acute como servidor, esta es la unica conexion que tenes, y tanto la raspberry como el celular, son clientes del mismo, con la diferencia de que la raspberry brinda informacion (las imagenes) y el celular obtiene informacion.


RASPBERRY ===(1)===> SERVER <====(2)====> CELULAR

donde 1:
Es un socket udp ponele, donde mandas un streaming de video, o una imagen cada X segundos.

y 2:
una interfaz web, donde contra logeo de usuario y contraseña, generas un socket de streaming o envias al celular las imagenes.

y por favor, usa alguna que otra " , " porque es dificil leerte.
No hace falta que envie un mensaje de texto... se me ocurre que puede enviar un mail con cada ip nueva que vaya teniendo.

O si no, algo onda IFTTT: https://ifttt.com/android_notifications (sigue siendo tu idea de "tener un server fijo", solo que tu server fijo no es tuyo =P). Con IFTTT podes hacer magia.

No entiendo lo de "esta hasheado en la red local". Si el aparato te da una interfaz web, vos vas a poder conectar cualquier cosa a los datos de esa interfaz. Tal vez es sencillo, tal vez lo hicieron un poco tedioso, pero podes extraer la info.
Claro imakuni ese es mi miedo. Tendría que buscar un dvr bien genérico para ver si me es mas fácil extraer la info que en los hikvision.

Seba , la idea es esa , usar un host donde la rb suba la info y mi interfaz web la utilice , la duda no estaba ahí sino en que sea posible tomar la info de las 4 cámaras que viene el el rj45 bajarle la calidad y pasarlas al host.

En fin , en la semana consigo un dvr y les cuento como me fue.
fijate en aparatos chinos. Normalmente vienen con un pdf que te comenta el protocolo que manejan (no esperes un manual espectacular, solo te va a decir como envia la info, como espera recibir info, algun que otro dato tecnico necesario para conectarte y listo).
Gracias!! Pruebo y paso a comentar resultados.


Off-topic:
Vale aclarar que claramente no estoy sumergido en el tema sebas por eso mismo paso por aca a que me tiren una punta para poder ponerme a investigar.
Para la conexion lan te sobra la anchura de banda para 4 camaras analogicas.
Los problemas los vas a encontrar en el procesamiento de imagenes al convertir videos (se va a quedar corta la rb) y en el streaming sobre la conexion que manejan los celulares, no porque no den los protocolos, sino por la tasa real que se maneja en la argentina.

Si tenes la posibilidad de acceder al procesamiento que te brinda el DVR, (muchos no son mas que una simple computadora con una capturadora de N puertos, es mas, el chip muchas veces es el bt878 para los dvr comunes, salvo que sea uno bien pijudo) ahi podrias armarte un software que comprima el video en un pseudo tiempo real cambiandole el codec de video. A grandes razgos, la relacion es inversamente proporcional, mientras mas chico el video resultante, mayor es el procesamiento necesario para generarlo, y sobre un mismo micro, mas tiempo tardas en realizar la accion.

O, en una de esas, podes hacer un pasamanos, y distribuir un poco el procesamiento (con bastante perdida de calidad, que es otro factor), comprimir a un codec balanceado (que no tarde mucho en realizarlo) en el DVR y en el host, volver a reducirlo dependiendo de la conexion del cliente... pero son mas horas culo en programacion.

O hacer una seguidilla de imagenes, si capturas a 25 fps, mandar al celular 10fps, se pierde la fluidez, pero se entiende el video.

Hay miles de tecnicas, cual aplicar, depende de que resultado final estas buscando.
Cualquier cosa pregunta, que tengo un par de laburos sobre DVRs.
Si yo creo que lo mejor va a ser cortar los fps, aparte quizás este dvr se encuentre con poca señal 3g aveces y me va a cortar los stream.

Con respecto a bajarle la calidad al vídeo aunque gaste tiempo procesarlo si este lo hace del lado del dvr y rb no pasa nada por que en todo caso voy a tener un delay en lo que estoy viendo cosa que no me preocupa.


En mi cortisima experiencia, nunca trabaje con un dvr ni con un nodo 3G, pero bueno esa es la parte mas jugosa de la experiencia.
lo que tenes que averiguar de entrada, es que tipo de DVR vas a usar. Eso es lo principal.
Que sistema operativo tiene.
Que chip capturador tiene.
Que formato de imagen te entrega, Puede ser video crudo, como video ya comprimido... si es crudo puede ser RGB o YUYV, lo cual te da un indicio de cuanto va a pesar el video como para hacer cuentas de antemano y definir que entorno necesitas.
Si es RGB, son Width * Height * 3 * FPS = Tamaño de video por segundo.
Si es YUYV es Width * Hegiht * 2 * FPS = Tamaño de video por segundo.

Si queres transformar a otro codec, vas a tardar mas en pasarlo de YUYV a Otro, que de RGB a otro.

Tambien tener en cuenta si es necesario mandar los 4 videos al mismo tiempo, porque es mucha info, por ahi es mejor mandar uno solo contra peticion y en buena calidad, que 4 videos diminutos y todos pixelados.

Y otra cosa, averigua cuanto sale un modem 3g, por ahi te sale mas barato que una rb + modulo GSM. y es mucho menos desarrollo (Aunque mas aburrido JAJAJA son entretenidas las rb, arduinos y todas esas cosas lindas xD)
Páginas: 1 2
URLs de referencia