« audio video streamer en flashcom | Inicio | Estadísticas de tus aplicaciones en flashcom »

Audio Video Streamer 2.0

Bueno, pues aquí os podeis descargar ya el audiovideostreamer completo. Sus principales características son:

La plantilla onStatusTemplate contempla todos los casos para NetConnection y para NetStream ( incluso aquellos que en este ejemplo no se van a dar nunca, como puede ser NetStream.publish pero así ya la teneis )

el stream se empieza a reproducir con sólo pulsar en un título de la lista

Cuando se empieza a reproducir un stream se muestran en pantalla unos campos de texto que nos indican el título del stream, la duración del mismo y el tiempo que llevamos de stream.

Al finalizar de reproducirse el stream estos textos desaparecen. Además si se trata de un stream de video, al terminar de reproducirse se pone a _visible=false con lo que nos evitamos que se quede en pantalla el último fotograma estático que hace muy feo.

Como se ve, la longitud del stream se obtiene desde el lado servidor con stream.length ( diferente forma si es flv o mp3 ), desde lado cliente llamamos a la función de servidor que lo obtiene y con onResult obtenemos la información ( en segundos, hay que darla formato )

Muy importante. Con los tres videos que he elegido yo para hacer las pruebas, cada uno tenía un ancho y un alto diferente ( resolución del vídeo 160x120,240x180....)Si colocamos el objeto video en pantalla sin más, los vídeos se mostrarán al mismo tamaño que el objeto video no importa cual sea su resolución. Esto produce escalamientos que además no tienen proporcionalidad. El resultado es que se pierde gran calidad y que el vídeo hace efectos raros. Esto se ha solucionado con la función theSize, que le da al objeto video el tamaño de la resolución del vídeo. ( Esta resolución sólo se puede obtener desde lado cliente y una vez que ha empezado a reproducirse el video, por eso la obtenemos dentro del primer segundo de reproducción y llamamos dentro de ese espacio a theSize que lo coloca todo bien )

Ojo, el control de volúmen funciona en una película exportada ( archivo swf ) si lo ejecutais desde el IDE de flash ( control+enter )no sube o baja volúmen, una vez exportado sí. Esta forma de manejar el volúmen de un stream la he visto en la web de la universidad Ryerson ( Canadá ) . Ahí podeis encontrar más cosas sobre flashcom

Fallos, bugs.
-Hay dos sitios donde he hecho "hardcoded" por las prisas, en la próxima versión será solucionado
-El que al finalizar el stream de video se borre la pantalla, viene determinado por recibir el evento buffer.empty, este evento no siempre se recibe ( de hecho en la lista de flashcom de chattyfig hubo un hilo sobre esto. hay personas que no lo reciben de ninguna manera ) por lo que a veces se quedará el último fotograma visible.
-En la próxima versión, los datos ( títulos , nombres de los streams ,) se cargarán desde un xml que vendrá de una base de datos.

foto_reproductor.jpg

En la foto se está reproduciendo un stream de audio. Los campos de texto nos informan de cual es, tiempo, el status del stream y de la conexión.

Bueno, lo puedes descargar aquí

Creo que más o menos lo he contado todo, si se me ha pasado algo y me acuerdo luego , pues pongo un comentario o ya me espero a la versión definitiva. ¿Cuando colgaré la versión definitiva con todo funcionando perfecto? No se, cuando encuentre alguna tarde libre para dedicarme a ello. :D