[Jde-dev] ejemplo ice+gstreamer

David Lobato dav.lobato en gmail.com
Jue Nov 5 23:10:55 CET 2009


SIp, perdona, se me olvido decirte que era el ejemplo 5.



2009/11/5 Roberto Calvo <rocapal en libresoft.es>

>
> David,
>
> entiendo que es esta ¿verdad?
>
>
> http://svn.jde.gsyc.es/jde/jdec/branches/5.0/examples/ice/example5/varcolorviewgtkmm.cpp
>
>
> El jue, 05-11-2009 a las 13:53 -0500, David Lobato escribió:
> > He subido al branch 5.0 el ejemplo modificado sin la clase application
> > en el cliente. Mira a ver si te haces con ello.
> >
> >
> > Probaste a modificar los parámetros de la cámara?
> >
> >
> > Un saludete.
> > David.
> >
> > 2009/10/23 David Lobato <dav.lobato en gmail.com>
> >
> >
> >         2009/10/23 Roberto Calvo <rocapal en gsyc.es>
> >
> >                 El mar, 20-10-2009 a las 00:42 +0200, David Lobato
> >                 escribió:
> >                 >
> >                 >
> >                 >
> >                 >         Genial, también esta compilada una nueva
> >                 versión de ffmpeg.
> >                 >         Comprueba si
> >                 >         funciona correctamente el gst-launch con
> >                 gstreamer-ffmpeg que
> >                 >         es el
> >                 >         pluginque más dudas tengo que rule bien.
> >                 >
> >                 > He probado un pipe con ffmpegcolorspace, y
> >                 funcionaba bien. Veremos si
> >                 > funciona correctamente si hacemos alguna
> >                 codificación, aunque de
> >                 > momento no creo que lo usemos.
> >                 >
> >                 >
> >                 >         Ayer envié el correo y se lo quedó la lista,
> >                 y en ese momento
> >                 >         no estaba
> >                 >         gstreamer0.10-ffmpeg, pero ahora mismo si lo
> >                 has instalado si
> >                 >         está. El
> >                 >         único que me queda es gstreamer0.10-nice que
> >                 justo tiene que
> >                 >         ver con
> >                 >         ICE.
> >                 >
> >                 >
> >                 > No tengo ni idea de que hay dentro de ese paquete...
> >                 has visto algo
> >                 > interesante??
> >                 >
> >
> >
> >                 Estas librerías, casi na :-)
> >
> >                 /usr/lib/gstreamer-0.10/libgstffmpeg.so
> >                 /usr/lib/gstreamer-0.10/libgstffmpegscale.so
> >                 /usr/lib/gstreamer-0.10/libgstpostproc.so
> >
> >
> >
> >
> >
> >
> >         Pues va a ser que las necesitamos... ;)
> >
> >
> >                 >
> >                 >         > No me gusta mucho el asunto de tener que
> >                 compilar todo eso,
> >                 >         pero bueno. De momento tiramos así y si
> >                 vemos una manera mejor
> >                 >         pues lo cambiamos.
> >                 >
> >                 >
> >                 >         Ten en cuenta que es de la mejor forma que
> >                 se pueden hacer
> >                 >         estas cosas (al menos que yo conozca). Lo
> >                 que cuesta es el
> >                 >         hecho de compilar, pero eso ya está
> >                 hecho :-) Aunque sea
> >                 >         costoso este metodo, ganamos en que
> >                 controlamos todos los
> >                 >         paquetes y decidimos qué actualizar y qué
> >                 no.
> >                 >
> >                 >         Es mejor compilar 70-80 paquetes y tener un
> >                 sistema estable
> >                 >         (lenny), a tener 600 paquetes de testing :-)
> >                 Además, al ser
> >                 >         lenny muy reciente, no hay excesivos
> >                 problemas para compilar.
> >                 >
> >                 >
> >                 > Ok, me parece bien. Si tu no ves problema. Yo es que
> >                 es oir compilar
> >                 > cosas y me entra la pereza... Aunque entiendo que
> >                 con debian es mas o
> >                 > menos automático.
> >
> >
> >                 Si, si la pereza no nos la quita nadie. Sería
> >                 diferente a si tuviéramos
> >                 que generar nosotros los paquetes y compilar. Pero con
> >                 debian, te bajas
> >                 las fuentes, lanzas dpkg-buildpackage y cruzas los
> >                 dedos :-)
> >
> >
> >
> >
> >         No se hablé mas.
> >
> >
> >
> >
> >                 >
> >                 > Te adjunto el ejemplo que nos traemos entre manos.
> >                 Ahora se saca el
> >                 > video directamente en YUV2 de la webcam y se
> >                 transmite así. El visor
> >                 > hace una transformación básica a escala de grises.
> >                 >
> >                 > Resultados, el servidor no sube del 2% y el cliente
> >                 convirtiendo se
> >                 > pone al 15% y sólo recibiendo al 2%.
> >                 > Pruebalo cuando tengas un momento en la pico.
> >
> >
> >                 El servidor arrancado, consume del 2% al 5% a
> >                 640x480 :-)  y si conecto
> >                 el cliente en otra máquina, el consumo llega hasta el
> >                 12%-15%
> >
> >
> >
> >         Perdona, los porcentajes que envié los saqué a 320x240 a
> >         30fps. Probando a 640x480 30fps obtengo resultados parecidos.
> >
> >                 Por cierto, en el cliente la imagen la obtengo con un
> >                 poco de LAG, pero
> >                 visualmente si me parece que va cerca de los 25fps,
> >                 sin embargo la GUI
> >                 muestra 7-8 (creo que es imposible).
> >
> >
> >
> >         Si, yo también veo una latencia importante. Creo que gstremer
> >         tiene algo para ajustar estas cosas. De todas formas, bajando
> >         los fps a 15 es aceptable, no creo que transmitamos a 30fps,
> >         no?
> >
> >
> >         El contador de la GUI es mas robusto ahora, debería dar la
> >         cuenta bien. Prueba a cambiar las condiciones de luz de la
> >         cámara y fijaté si varían los fps. Te sugiero que pruebes el
> >         modo de exposición automático, ajustandolo con el paquete que
> >         envié. Cambios?
> >
> >
> >
> >                 El cliente ejecutado en la pico rondaba el 35% pero no
> >                 es muy fiable,
> >                 porque lo ejecuto a través de vnc y el rendimiento
> >                 gráfico así es
> >                 penoso. Aunque tampoco importa mucho cuanto consume el
> >                 cliente en la
> >                 pico, porque normalmente no se va a ejecutar.
> >
> >
> >         La mayor parte de CPU se va en transformación YUV->RGB.
> >         Podemos evitar este paso usando la extension Xv del servidor
> >         X, que permite usar YUV directamente (está pensada para
> >         mostrar stream de video con alto rendimiento). Aunque no he
> >         dado con la manera buena de hacerlo con GTK.
> >
> >
> >                 Creo que es una muy buena aproximación la que has
> >                 hecho David :-)
> >
> >                 Me gustaría saber cuanto de costoso es en el cliente,
> >                 pasar a RGB
> >                 mediante una tabla estilo libcolorspaces (o incluso
> >                 hacer esta
> >                 conversión en el servidor). Por que si por ejemplo, si
> >                 en el servidor
> >                 convertimos a RGB utilizando libcolorspaces, y eso
> >                 sube un 5%, creo que
> >                 es asumible para que todos los componentes trabajen
> >                 con RGB.
> >
> >                 ¿Cómo lo ves?
> >
> >
> >
> >
> >
> >         Veo que habría que justificar que necesitamos RGB, ya que por
> >         el momento YUV nos da alguna ventaja. La mas destacable es que
> >         YUV2, el formato que saca la cámara directamente, usa un 33%
> >         menos de datos que RGB para transmitir la misma información
> >         (la cámara no da RGB directamente), ya que obtenemos 2 pixels
> >         RGB (6bytes) por cada 4bytes YUV.
> >
> >
> >         Esto en local quizá no importe, pero si transmitimos por la
> >         red creo que es mejor solución.
> >
> >         Lo dicho, habrá que ver los beneficios/contras de usar cada
> >         uno de los formatos.
> >
> >
> >
> >
> >         David.
> >
> >
> >
> >
> >
> >                 >
> >                 > Saludetes,
> >                 > David.
> >                 >
> >                 >
> >                 >
> >                 >
> >                 >
> >                 >         >
> >                 >         > Te comento cuando haga mas pruebas.
> >                 >         >
> >                 >         > David.
> >                 >         >
> >                 >         > 2009/10/15 Roberto Calvo <rocapal en gsyc.es>
> >                 >         >         David,
> >                 >         >
> >                 >         >         Ya tengo algo, no lo tengo
> >                 completo pero puedes
> >                 >         hacer pruebas.
> >                 >         >
> >                 >         >         Los tienes en [1] y con la
> >                 siguiente linea lo añades
> >                 >         al
> >                 >         >         source.list
> >                 >         >
> >                 >         >         deb http://jde.gsyc.es/apt/ lenny
> >                 gstreamer
> >                 >         >
> >                 >         >         Como ves, hay casi 50 paquetes
> >                 debian, ha costado el
> >                 >         jodido
> >                 >         >         backport, es
> >                 >         >         la recursividad llevada al limite
> >                 jeje. Lo único que
> >                 >         me
> >                 >         >         preocupa es que
> >                 >         >         he tenido que compilar también la
> >                 glib2.0, pero ha
> >                 >         compilado
> >                 >         >         correctamente.
> >                 >         >
> >                 >         >         Únicamente me queda por hacer el
> >                 backport de:
> >                 >         >
> >                 >         >           * gstreamer0.10-nice: tengo que
> >                 buscar una
> >                 >         dependencia que
> >                 >         >         tiene, que
> >                 >         >         no logro encontrar el paquete :-O
> >                 >         >
> >                 >         >           * gstreamer0.10-ffmpeg: Este va
> >                 a tener jaleo,
> >                 >         porque
> >                 >         >         depende de
> >                 >         >         todas las librerías de ffmpeg pero
> >                 creo que se puede
> >                 >         >         conseguir.
> >                 >         >
> >                 >         >
> >                 >         >         un saludo!
> >                 >         >
> >                 >         >         [1]
> >                 >
> >
> http://jde.gsyc.es/apt/dists/lenny/gstreamer/binary-i386/
> >                 >         >
> >                 >         >
> >                 >         >         El mié, 14-10-2009 a las 12:41
> >                 +0200, Roberto Calvo
> >                 >         escribió:
> >                 >         >
> >                 >         >
> >                 >         >         > El mar, 13-10-2009 a las 18:20
> >                 +0200, David Lobato
> >                 >         escribió:
> >                 >         >         > > Ya tengo un debian lenny
> >                 andando para empezar
> >                 >         con pruebas.
> >                 >         >         > > Roberto, sacaste los paquetes
> >                 de gstreamer para
> >                 >         lenny?? Si
> >                 >         >         los tienes
> >                 >         >         > > ponlos por algún lado para
> >                 ponermelos.
> >                 >         >         > >
> >                 >         >         >
> >                 >         >         > Los he conseguido compilar en
> >                 lenny, pero
> >                 >         justamente al
> >                 >         >         final falla a la
> >                 >         >         > hora de generar los paquetes
> >                 debian.
> >                 >         >         >
> >                 >         >         > Dejame echarle un ojo más, a ver
> >                 si veo algo.
> >                 >         >         >
> >                 >         >         > un saludete!
> >                 >         >         >
> >                 >         >         >
> >                 >         >         > >
> >                 >         >         > > Saludetes.
> >                 >         >         > >
> >                 >         >         > > 2009/10/6 Roberto Calvo
> >                 <rocapal en gsyc.es>
> >                 >         >         > >
> >                 >         >         > >         Grachie David!
> >                 >         >         > >
> >                 >         >         > >         Hemos estado haciendo
> >                 unas pruebas con
> >                 >         David en la
> >                 >         >         picoITX
> >                 >         >         > >         (sobre SID),
> >                 >         >         > >         recordad que es un
> >                 procesador de 1Ghz.
> >                 >         >         > >
> >                 >         >         > >
> >                 >         >         > >         Component
> >                 Frames
> >                 >         >         Resolution
> >                 >         >         > >          Porcentaje CPU
> >                 >         >         > >
> >                 >         >
> >                 >
> >
> -----------------------------------------------------------------------
> >                 >         >         > >         varcolorserver
> >                 25fps
> >                 >         320x240
> >                 >         >         > >         20-25%
> >                 >         >         > >         varcolorserver + envio
> >                 25fps
> >                 >         320x240
> >                 >         >         > >         28-32
> >                 >         >         > >
> >                 >         >         > >         varcolorserver
> >                 25fps
> >                 >         640x480
> >                 >         >         >
> >                 >         >         > >         95 %
> >                 >         >         > >
> >                 >         >         > >
> >                 >         >         > >         Hemos visto que el
> >                 problema parece estar
> >                 >         en que
> >                 >         >         gstreamer
> >                 >         >         > >         siempre hace
> >                 >         >         > >         una recodificación si
> >                 lo que queremos
> >                 >         obtener es
> >                 >         >         RGB (cosa que
> >                 >         >         > >         no
> >                 >         >         > >         debería ya que
> >                 video4linux2 no lo hace),
> >                 >         >         > >
> >                 >         >         > >         La buena noticia es
> >                 que hemos visto que
> >                 >         utilizando
> >                 >         >         gstreamer y
> >                 >         >         > >         obteniendo las
> >                 imágenes en YUV (320x240
> >                 >         y
> >                 >         >         640x480), el
> >                 >         >         > >         procesamiento de
> >                 >         >         > >         la CPU ronda entre 3%
> >                 y 6%
> >                 >         >         > >
> >                 >         >         > >         Los siguientes pasos
> >                 serán ver si se
> >                 >         puede
> >                 >         >         optimizar el
> >                 >         >         > >         pipeline de
> >                 >         >         > >         gstreamer para obtener
> >                 RGB con un bajo
> >                 >         coste de
> >                 >         >         CPU, y
> >                 >         >         > >         estudiar la
> >                 >         >         > >         posibilidad de
> >                 trabajar siempre en YUV.
> >                 >         >         > >
> >                 >         >         > >         un saludete!
> >                 >         >         > >
> >                 >         >         > >         El mar, 06-10-2009 a
> >                 las 13:05 +0200,
> >                 >         David Lobato
> >                 >         >         escribió:
> >                 >         >         > >
> >                 >         >         > >         > Roberto,
> >                 >         >         > >         >
> >                 >         >         > >         > Te adjunto el
> >                 ejemplo del que
> >                 >         hablabamos. Una
> >                 >         >         vez compilado
> >                 >         >         > >         genera dos
> >                 >         >         > >         > ejecutables,
> >                 varcolorserver y
> >                 >         varcolorviewgtkmm.
> >                 >         >         > >         > Ejecutalos pasando a
> >                 cada uno su
> >                 >         configuracion
> >                 >         >         con
> >                 >         >         > >         >
> >                 --Ice.Config=<fichero>
> >                 >         >         > >         > Usa los cfg con los
> >                 mismos nombres que
> >                 >         los
> >                 >         >         ejecutables.
> >                 >         >         > >         >
> >                 >         >         > >         > Si tienes cualquier
> >                 problema
> >                 >         comentamelo.
> >                 >         >         > >         >
> >                 >         >         > >         > Saludetes.
> >                 >         >         > >
> >                 >         >         > >         >
> >                 >
> >                 _______________________________________________
> >                 >         >         > >         > Jde-developers
> >                 mailing list
> >                 >         >         > >         >
> >                 Jde-developers en gsyc.es
> >                 >         >         > >         >
> >                 >         >         > >
> >                 >         >
> >                 >
> >
> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers
> >                 >         >         > >
> >                 >         >         > >
> >                 >         >         > >         --
> >                 >         >         > >         Roberto Calvo
> >                 Palomino          | Libre
> >                 >         Software
> >                 >         >         Engineering
> >                 >         >         > >         Lab (GSyC)
> >                 >         >         > >         Tel: (+34) 91 488 85
> >                 23         |
> >                 >         Universidad Rey
> >                 >         >         Juan Carlos
> >                 >         >         > >         Tel: (+34) 91 488 81
> >                 05         | Edif.
> >                 >         >         Departamental II -
> >                 >         >         > >         Despacho 116
> >                 >         >         > >         rocapal en gsyc.es
> >                 |
> >                 >         c/Tulipán s/n
> >                 >         >         28933 Móstoles
> >                 >         >         > >         (Madrid)
> >                 >         >         > >         http://libresoft.es/
> >                 >         >         > >
> >                 >         >         > >         GPG-KEY:
> >                 >         http://gsyc.es/~rocapal/rocapal.gpg
> >                 >         >         > >
> >                 >         >         > >
> >                 >         >         > >
> >                 >         >         >
> >                 >         >         >
> >                 >         >         >
> >                 _______________________________________________
> >                 >         >         > Jde-developers mailing list
> >                 >         >         > Jde-developers en gsyc.es
> >                 >         >         >
> >                 >         >
> >                 >
> >
> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers
> >                 >         >
> >                 >         >
> >                 >         >         --
> >                 >         >         Roberto Calvo Palomino          |
> >                 Libre Software
> >                 >         Engineering
> >                 >         >         Lab (GSyC)
> >                 >         >         Tel: (+34) 91 488 85 23         |
> >                 Universidad Rey
> >                 >         Juan Carlos
> >                 >         >         Tel: (+34) 91 488 81 05         |
> >                 Edif.
> >                 >         Departamental II -
> >                 >         >         Despacho 116
> >                 >         >         rocapal en gsyc.es                 |
> >                 c/Tulipán s/n
> >                 >         28933 Móstoles
> >                 >         >         (Madrid)
> >                 >         >         http://libresoft.es/
> >                 >         >
> >                 >         >         GPG-KEY:
> >                 http://gsyc.es/~rocapal/rocapal.gpg
> >                 >         >
> >                 >         >
> >                 >         >         --
> >                 >         >         Roberto Calvo Palomino          |
> >                 Libre Software
> >                 >         Engineering
> >                 >         >         Lab (GSyC)
> >                 >         >         Tel: (+34) 91 488 85 23         |
> >                 Universidad Rey
> >                 >         Juan Carlos
> >                 >         >         Tel: (+34) 91 488 81 05         |
> >                 Edif.
> >                 >         Departamental II -
> >                 >         >         Despacho 116
> >                 >         >         rocapal en gsyc.es                 |
> >                 c/Tulipán s/n
> >                 >         28933 Móstoles
> >                 >         >         (Madrid)
> >                 >         >         http://libresoft.es/
> >                 >         >
> >                 >         >         GPG-KEY:
> >                 http://gsyc.es/~rocapal/rocapal.gpg
> >                 >         >
> >                 >         >
> >                 >         >
> >                 >
> >                 >
> >                 >
> >                 >         --
> >                 >
> >                 >         Roberto Calvo Palomino          | Libre
> >                 Software Engineering
> >                 >         Lab (GSyC)
> >                 >         Tel: (+34) 91 488 85 23         |
> >                 Universidad Rey Juan Carlos
> >                 >         Tel: (+34) 91 488 81 05         | Edif.
> >                 Departamental II -
> >                 >         Despacho 116
> >                 >         rocapal en gsyc.es                 | c/Tulipán
> >                 s/n 28933 Móstoles
> >                 >         (Madrid)
> >                 >         http://libresoft.es/
> >                 >
> >                 >         GPG-KEY:
> >                 http://gsyc.es/~rocapal/rocapal.gpg
> >                 >
> >                 >
> >                 >
> >
> >
> >
> >                 --
> >
> >                 Roberto Calvo Palomino          | Libre Software
> >                 Engineering Lab (GSyC)
> >                 Tel: (+34) 91 488 85 23         | Universidad Rey Juan
> >                 Carlos
> >                 Tel: (+34) 91 488 81 05         | Edif. Departamental
> >                 II - Despacho 116
> >                 rocapal en gsyc.es                 | c/Tulipán s/n 28933
> >                 Móstoles (Madrid)
> >                 http://libresoft.es/
> >
> >                 GPG-KEY: http://gsyc.es/~rocapal/rocapal.gpg
> >
> >
> >
> >
> >
>
>
> --
> Roberto Calvo Palomino          | Libre Software Engineering Lab (GSyC)
> Tel: (+34) 91 488 85 23         | Universidad Rey Juan Carlos
> Tel: (+34) 91 488 81 05         | Edif. Departamental II - Despacho 116
> rocapal en gsyc.es                 | c/Tulipán s/n 28933 Móstoles (Madrid)
> http://libresoft.es/
>
> GPG-KEY: http://gsyc.es/~rocapal/rocapal.gpg
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://gsyc.escet.urjc.es/pipermail/jde-developers/attachments/20091105/005473ea/attachment-0001.htm 


More information about the Jde-developers mailing list