• Acerca de Motion.com.mx
  • Categoría: Server Side

  • 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 .

  • 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.

  • Create basic web hacking bot in teory

    Categoría: ActionScript 3, General, Linux, PHP, Server Side | Fecha: 14.04.2009 | Leer : 1

    “This post is educational only , i dont recommend implementing the system described here since that could be considered a crime in most countries, but its not a crime to share information so here it is”

    Hi
    i was thinking how hacking bots work and i could imagine that it would be somehow easy to create one by myself.
    Here is the idea , using google alerts (google system that sends you an email when founds something in the web matching your alert criteria) i could create an alert for content wich contains the string “roundcube/bin/” and could use a email in my server to receive those alerts, and then create a CRON job to check for new email and parse the contents of those emails to extract URL’s to the sites found by google.
    Then the cron job will execute a PHP script or a perl script to scan each of the URL’s servers to find the version of the “roundcube” webmail system installed by visiting common installation dirs, then if the version matchs the version i was looking (a vulnerable one) i could send me an email so i can manually hack that server using www.metasploit.com or i could let it do by itself executing as a batch script.

    And finally after hacking 2 or 3 servers i could use them to do the entire process without using my server anymore all i need would be install a php/perl script own an account email in one of the servers and create a CRON Job.

    Now think about it, i was only talking about hacking roundcube webmail system but it could work for any system with knowns xploits , imagine creating google alerts for every single system listed in http://www.milw0rm.com/ thats scary !!

    Really, i scared myself !! haha


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

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

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

RSS