[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