• Acerca de Motion.com.mx
  • Categoría: Flash

  • Algunos datos utiles antes de empezar con Red5

    Categoría: ActionScript 3, Flash, Guadalajara, Mexico, Server Side, rtmp | Fecha: 01.09.2010 | Leer : link

    He conocido a varias personas a travez de emails, foros y chats que en algun momento me pidieron ayuda para usar red5, muchas de las dudas no eran pequeñas sino que realmente me pedían que los guiara paso a paso por todo el proceso de creación de aplicaciones multiusuario obviamente tuve que negarme pero los entiendo, recuerdo que iniciar con red5 no es nada sencillo es un mundo de conceptos, tecnologias y apis que conocer.

    Con la intención de ayudar a todas esas personas que estan batallando con red5 aqui menciono algunos datos importantes del estado actual de red5 ya que pienso que antes de iniciar el proceso de aprendizaje en esta tecnología lo importantes es saber si cumple con las necesidades o espectativas de los programadores o de los proyectos a desarrollar.

    • Red5 actualmente puede hacer streaming de video en formato flv
    • Puede hacer streaming de h.264 pero es inestable (creo que tiene problemas cuando se hace seek)
    • Los shared object funcionan genial
    • La cantidad maxima de usuarios que red5 puede soportar es definida por las características de la maquina en la que se ejecuta (procesador, memoria, ancho de banda)
    • Red5 requiere los permisos necesarios para utilizar el puerto tcp 1935 (abrir y recibir conexiones)
    • Opcionalmente red5 puede usar RTMPS, RTMPT (tunnel)
    • Red5 puede correr a la par de apache u otros servidores
    • Es open source
    • Eclipse es el IDE mas usado para java y funciona muy bien para desarrollo red5
    • Sirve para crear aplicaciones multiusuario
    • Funciona en Win, linux, solaris y unix ya que esta hecho en java

    Desventajas :

    • La curva de aprendizaje es muy larga
    • Tiene bugs y aun no llega a la version 1.0
    • El uso de proxy de algunas redes bloquean el RTMP sobre el puerto 1935
    • Hay que saber de OOP , java y as3 para programar con red5
    • La creacion de un ambiente de pruebas es bastante dificil de lograr para los principiantes
    • Existen mejores opciones por un costo reducido
    • Generalmente red5 requiere de un servidor dedicado (no es posible instalarlo en un hosting normal)
    • La creacion de aplicaciones es a base de prueba y error, el proceso de reiniciar red5 para modificar una app hace muy tardado el proceso de debugging
    • Relativamente existen muy pocos programadores para tecnologias como red5 o servidores multiusuario, por esta razon es dificil conseguir ayuda y dar mantenimiento a una aplicacion generalmente depende de un solo programador lo que representa un riesgo para las agencias de desarrollo

    Yo soy un gran fan de red5 de hecho mas que de FMS, he trabajado con este servidor en mas de 20 proyectos  los cuales todos resultaron muy interesantes y con gran aceptación,  siempre he pensado que el futuro del internet son los sistemas en tiempo real, lamentablemente en México me he topado con una gran barrera en la que las agencias y empresas no quieren experimentar con tecnologías nuevas o emergentes, en cambio solo quieren hacer lo que los lideres en tecnología o marketing digital realizan, siempre un paso detras de los lideres.

    El mejor consejo que puedo dar es considerar las desventajas que un proyecto open source puede tener, en algunos casos ahorrarse dinero resulta en perdidas mayores, insisto soy fan de red5 y creo que funciona genial pero no lo recomiendo para principiantes a menos que esten dispuestos y tengan el tiempo para aprenderlo.

    Algunos demos que he realizado:

    http://minichat.motion.com.mx/

    http://motion.com.mx/chat3d/

    http://motion.com.mx/tests/

  • A note about when not to use sharedobjects

    Categoría: ActionScript 3, Flash, Server Side, rtmp | Fecha: 29.08.2010 | Leer : link

    This post is more like a personal note that i will like to share with other FMS or red5 developers about when in my opinion is better to use direct messages instead of sharedobjects.

    I was required to create a project where a client has to be aware about other users status and be able to invite only one user to a private chat so i tried to create a main sharedobject and each of its properties to be identified by an userID and each of these properties own an array of data (privateMessage, status, etc..), this looked like a good solution to share users status but using this single sharedobject to send an receive chat messages didnt worked mainly for 2 reasons:

    • the messages should be privated for only 2 users but my main shared object was created to be public since “it shares its data” to all clients
    • and second and most important it was sending unnecesary data to all the clients (all that private messages not destinated to them)

    And not to mention that developing AS3 code using that code structure was giving me a lot of problems wich i was trying to work around.

    So after getting away from the project for some time i came with the solution very simple and obvious :

    • Only use shared objects when you try to share data massively (at least 3 clients connected per shared object)
    • For cases where only 2 clients comunicate should use direct messages calling server methods

    Why not create sharedobjects on the fly for cases where there are only 2 clients ? well in my experience using red5 it is kind of problematic because first some of the 2 clients should order the server to create the shared object then the server should order both clients to connect to that sharedobject and then the communication is stablished but trying to connect to a newly created shared object in red5 sometimes didnt worked for some of my 2 clients, somehow red5 was creating 2 SO’s with same name so i recommend at least for now to use direct server method calls like nc.call(“sendMessageToFriend”,responder,remoteUserId).

    Hope this make sense to other red5 developers .

  • Galeria de fotos con facebook connect

    Categoría: ActionScript 3, Flash, General, Guadalajara, Mexico, facebook | Fecha: 30.06.2010 | Leer : link

    Aqui esta el link a la nueva galeria de fotos para que vean sus fotos con estilo :) :

    Galeria de fotos tipo pollaroid con facebook

    Para modificar el orden en el que las fotos aparecen se debe trazar una linea sobre  cualquier parte de la aplicacion .

    Aun me falta agregarle funcionalidad pero es un demo inicial de lo que podemos hacer en motion.mx  espero les guste y que lo compartan con sus amigos de facebook.

    Galeria de fotos con facebook

    Visualiza tus fotos de facebook con esta galeria

  • Galeria de fotos tipo pollaroid con facebook

    Categoría: ActionScript, Flash, General, Guadalajara, Mexico, facebook | Fecha: 28.06.2010 | Leer : link

    Ok siguiendo con nuestra linea de productos que integran facebook cree un demo basico de una galeria de imagenes al estilo pollaroid con algunas mejoras en la interface de usuario , la galeria toma los 2 primeros albums de la cuenta de facebook y le muestra las fotos al usuario con un poco mas de estilo :)

    Siempre me han apasionado las interfaces de usuario novedosas y este es uno de esos intentos de mejorar algo que ya existe y es muy conocido como lo son las galeria de imagenes con flash.

    Aqui esta el video , otro dia posteare el link a la aplicacion misma.

    Galeria de fotos facebook tipo pollaroid de motion.mx from Luis on Vimeo.

  • Desarrollando con video en vivo

    Categoría: ActionScript 3, Flash, General, Guadalajara, Mexico, Server Side | Fecha: 09.02.2010 | Leer : link

    Es extraño que no haya mencionado que me gusta mucho el desarrollo de aplicaciones en tiempo real,  generalmente dedico 2 o 3 horas de mi tiempo libre cada semana a crear una nueva aplicación que utilice video en vivo o interacción multiusuario.

    En este momento desarrollo tres aplicaciones que espero publicar pronto.

    La primera aplicacion es un videochat que permitira al usuario ver la webcam en vivo de los demás usuarios y como inovación permitira ver lo que un usuario dijo o hizo hasta 5 minutos antes basicamente como un rewind del video en vivo (a esta tecnología le llaman DVR functionality).

    La segunda aplicación es un “desktop sharing” o “screen sharing” ,  con este sistema es posible publicar lo que sucede en la pantalla de un usuario a internet de esta forma usuarios remotos serán capaces de abrir un sitio web y visualizar la pantalla del expositor remotamente usando video de alta calidad, puede ser usado en sistemas e-learning o conferencias a travez de internet.

    La tercera aplicacion esta mas relacionada en mejorar la calidad de video en vivo utilizando tecnicas de optimizacion y de encoding de video que permitiran a mis otras aplicaciones publicar o visualizar video de alta calidad (High Definition) .

    El mayor reto en las 3 aplicaciones es mantener costos relativamente bajos debido a que cualquiera de estos sistemas funcione se necesitan grandes cantidades de recursos en linea , tecnologías un tanto costosas y los tiempos de desarrollo son mayores a los normales, aun asi creo que he mantenido los costos de desarrollo en un nivel aceptable utilizando tecnologías open source y optimizando recursos.

    Si alguien necesita contactarme mi email  es contactomotion.com.mx  , este email solo es para contacto con clientes , si necesitan ayuda sobre como programar algo utilicen los comentarios de los posts donde intentare responderles u otros usuarios lo harán.

  • ajustar tamaño simetricamente (resize constrains proportions)

    Categoría: ActionScript, ActionScript 3, Flash, General, Mexico | Fecha: 17.08.2009 | Leer : link

    Necesitaba crear una funcion para ajustar dinamicamente el tamaño de un movieclip y tenia que ser muy al estilo Drag&Drop asi que cree este codigo para hacerlo , aun tiene algunos problemitas como pueden ver en el ejemplo pero en general da la idea clara de como hacer el resize y creo que es una aproximacion diferente a muchos de los ejemplos que hay en internet.

    CODIGO :

     

    var clickX
    var clickY

    resizer.addEventListener(MouseEvent.MOUSE_DOWN , onResizerPress )

    function onResizerPress (e:MouseEvent) {  
     clickX = this.x + this.width  – this.parent.mouseX
     clickY = this.y + this.height – this.parent.mouseY 
     this.parent.setChildIndex( this , this.parent.numChildren-1);
     addEventListener(Event.ENTER_FRAME ,     onResizerFrame )
     resizer.addEventListener(MouseEvent.MOUSE_UP , onResizerRelease )
     this.parent.stage.addEventListener(MouseEvent.MOUSE_UP , onResizerRelease )
    }

    function onResizerRelease (e:MouseEvent) {  
      if( hasEventListener(Event.ENTER_FRAME) ){
        removeEventListener(Event.ENTER_FRAME , onResizerFrame )
      }
      if( resizer.hasEventListener(MouseEvent.MOUSE_UP ) ){  
       resizer.addEventListener(MouseEvent.MOUSE_UP ,onResizerRelease )
      }
      if( this.parent.stage.hasEventListener(MouseEvent.MOUSE_UP  ) ){
       this.parent.stage.removeEventListener(MouseEvent.MOUSE_UP , onResizerRelease )
      }
    }
    function onResizerFrame (e:Event) { 
     
     var w   =  this.parent.mouseX – this.x + clickX
     var h   =  this.parent.mouseY – this.y + clickY
     
     width  =  w
     scaleY  =  scaleX 
        
    }

     

     

    El codigo va dentro de un movieclip y dentro del movieclip debe existir otro movieclip llamada “resizer” , espero convertir a una clase este codigo pero lo dejo pendiente por ahora.

    EJEMPLO:

  • Nuevo chat 3d en español (hecho con papervision3d)

    Categoría: 3d, ActionScript, ActionScript 3, Flash, General, Guadalajara, Mexico, PaperVision 3d | Fecha: 25.07.2009 | Leer : 6

    Por fin tuve tiempo de trabajar un poco en proyectos personales y logre terminar este chat que habia estado trabajando desde hace un buen rato.

    Chat 3d en español

    Algunas de las caracteristicas de este chat :

    • Posibilidad de seleccionar nickname y avatar
    • Controles de avatar con las flechas del teclado
    • Interaccion en tiempo real con otros usuarios de internet
    • 2 posibles posiciones para la camara, angulo de tercera persona y angulo panoramico (tecla control)
    • mensajes de texto dentro del ambiente 3d
    • desarrollado con papervision3d
    • desarrollado con red5
    • fisicas basicas dentro de un ambiente 3d (friccion, aceleracion, limites, easings, masa, inercia)
    • Iconos creados por www.tutorial9.net
    • librerias utilizadas:Tweener, papervision3d, SWFProfiler y framework motion.com.mx
    • posibilidad de agregar el numero que sea de bots (personajes simulados)
    • posibilidad de definir paredes y techo
    • posibilidad de permitir a los avatares moverse dentro del espacio 3d (es posible volar pero lo limito a 2 dimensiones por el momento para evitar mareos :D      )

    Planeo agregar mi componente socialis (invitador de amigos)

    y tal vez investigar la integracion con la api de facebook para usar fotos de personas en lugar de avatares.

    Los veo en el chat !!

    www.motion.com.mx/chat3d/

  • obtener la extension del nombre de un archivo

    Categoría: ActionScript, ActionScript 3, Flash, General | Fecha: 20.07.2009 | Leer : link

    Este es un snippet de codigo que se me ocurrio hace poco para obtener la extension del nombre de un archivo :

    var nombreDelArchivo:String = “foto_1.jpg”;
    var pedazos:Array = nombreDelArchivo.split(“.”);
    var extension:String = pedazos[pedazos.length-1]; //extension tendra el valor “jpg”

  • Chats gratuitos motion.com.mx para México

    Categoría: ActionScript, Flash, General, Guadalajara, Mexico | Fecha: 12.05.2009 | Leer : 6

    Desde hace tiempo tengo instalados 2 chats en motion.com.mx pero no los habia promovido por eso se ven abandonados.

    Los invito a usar los chats para que se relajen un rato y conozcan amigos en México.

    Las direcciones son :

    Videochat      http://www.motion.com.mx/tests/chat2/

    Chat experimental :   http://www.motion.com.mx/tests/

    Solo tengan paciencia mientras mas gente se va enterando de estos chats  :)    o  pueden invitar amigos.

    video chat motion.com.mx red5chat

  • 3d para internet – O3D Unity Flash

    Categoría: 3d, ActionScript 2, Flash, General, Guadalajara, Mexico, Uncategorized | Fecha: 22.04.2009 | Leer : link

    Flash ha dominado internet en cuanto animaciones y presentacion de informacion en forma dinamica en la web pero siempre ha tenido limites en cuanto a la cantidad de calculos y memoria usada. Por esa razon era muy dificil crear animaciones 3d usando actionscript 2 , despues llego actionscript 3 que mejoro el rendimiento de flash pero aun asi cuando se intenta crear animaciones 3d se debe de optimizar bastante el codigo para tener animaciones fluidas.

    Hace poco tiempo aparecio Unity3d que basicamente es un motor 3d para crear videojuegos que puede funcionar en varios dispositivos y en la web , al parecer esta basado en Javascript , la ventaja que tiene contra flash es que se especializa en la creacion de animaciones 3d y de verdad que lo hace mejor , el contra que tiene Unity3d es que se tiene que pagar .

    Hoy me entere que existe un proyecto que se llama O3D que parece ser muy similar a Unity3d (por lo menos los demos se ven muy parecidos) con la diferencia que este proyecto es Open Source.
    Lo unico que queda esperar es la respuesta de Adobe a estas tecnologias que de verdad podrian desbancar el plugin “flash player”.
    Espero tener un poco de tiempo libre para experimentar con alguna de estas dos tecnologias que por el momento se ven como el futuro de la web.
    Estos son unos videos de unity3d y de OD3 :

« Siguiente

Contacto

Requieres un desarrollo de sistemas ?
contactanos Contactar a Motion.com.mx



Buscar en el blog


Quienes somos

  • Acerca de Motion.com.mx

Proyectos Motion

  • Reklama
  • Video chat
  • Chat motion color
  • Galria carrusel
  • Augmented Reality basic
  • Augmented Reality espejo
  • comecome web
  • face track
  • interface face track
  • webcam recording
  • pv3d particles
  • enjambre 3d
  • papervision flip
  • papervision sphere
  • componente 3d
  • pizarra multiusuario
  • efecto rayo
  • fractal
  • minisitio
  • wiimote
  • papervision cubos

Comentarios recientes

  • admin dijo : Asegurar un servidor red5 contra el uso de extraños
  • miguel dijo : Asegurar un servidor red5 contra el uso de extraños
  • via dijo : Pizarra de dibujo multiusuario con red5
  • admin dijo : Mover la camara de papervision3d con Tweener
  • Ernestrod dijo : Mover la camara de papervision3d con Tweener

Lo anterior

  • September 2010
  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • April 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • September 2009
  • August 2009
  • July 2009
  • June 2009
  • May 2009
  • April 2009

Enlaces

  • paginador 3d de imagenes con flash player 10
  • sitio web comecome
  • Realidad Aumentada ( augmented reality )
  • Desarrollo web motion.com.mx
  • Mexico haz algo !
  • Chat experimental motion.com.mx
  • wwf global network
  • grabador de webcam online
  • Videochat mexicano motion.com.mx
  • Silvia Diseño Gráfico profesional
  • Arte en software
  • componente pila con ppv3d

Motion.com.mx is proudly powered by WordPress. Vivee WP Theme created by Vivee.info & Water Design

RSS