2009-09-16 15 views
5

Estoy buscando la mejor solución posible que me permita incorporar videoconferencia/audio en vivo entre 2 usuarios (solo 2 en este momento) en una plataforma de juegos flash. El video chat no es solo una característica adicional, sino la principal.Web P2P solución de confrence de video

Principalmente estoy buscando implementaciones de código abierto o algo que pueda implementar yo mismo, pero consideraré productos comerciales si son exactamente lo que necesito.

Estas son algunas cosas que he mirado, pero hasta ahora, no he encontrado ninguna de ellas lo suficientemente bueno:

  1. flash player capacidades P2P de 10 suenan prometedores, pero soy consciente de el hecho de que Adobe no ha publicado ninguna información sobre el protocolo RTMFP y que no hay ningún servidor comercial que lo admita en este punto.

  2. corriente todo el de vídeo/audio en vivo a través de un servidor de flash (no p2p), pero desde mi experiencia personal usted no recibe una conversación fluida .
    Creo TokBox utiliza este método

  3. applets de Java son una posible solución también (para realizar P2P), pero no es así creo que va a ser una solución agradable y elegante combinarlos en el juego en este punto (y requiere que el usuario los autorice). Por cierto, no pude encontrar ninguna implementación útil. Entonces, si conoces alguno, los investigaré.

  4. Google Gmail chat de vídeo utiliza un costumbre (y patentado) navegador plug-in que hace lo p2p y flujos de vídeo/audio en el reproductor de flash de . Esta es una posible solución , pero prefiero no implementar toda la pila de protocolos p2p + complemento del navegador en esta etapa y concentrarse en otro aspecto del juego . Creo que están usando un protocolo basado en XMPP similar al Jingle y han lanzado un Jingle librarby pero sin la implementación de la creación de enlaces de video.

  5. EDIT: En respuesta a Branden:
    soy consciente de Adobe Stratus. Stratus es un servicio de encuentro hospedado beta que ayuda a establecer las comunicaciones entre los puntos finales de Flash Player (servidor RTMFP).
    Esta versión actual del Stratus es y está diseñada solo para evaluación . El servicio no es definitivo.
    No hay garantía que el servicio continuará existiendo en el futuro o cualquier información sobre el futuro costo.
    Es por eso que no creo que se pueda usar como una solución comercial . Al menos no todavía.

Agradecería sus sugerencias y consejos. ¡Gracias!

Respuesta

2
  1. El servidor en cuestión se llama actualmente Stratus. Puede encontrar más información al Adobe Labs.
  2. Puede obtener absolutamente una transmisión fluida con una solución basada en servidor con Flash, pero debe tener suficiente ancho de banda para admitir todas las secuencias (4 secuencias para una conversación entre dos personas, 2 arriba y abajo). Aquí hay algunas opciones, pero las dos mejores son probablemente Adobe's Flash Media Interactive Server y el código abierto (y bastante impresionante) Red5.
  3. Estoy de acuerdo en que una solución basada en applet sería poco elegante, pero puede ser la única manera real de obtener video p2p en este momento.
  4. Jingle es genial, pero como mencionaste, los bits de código abierto aún no admiten el video. No creo que volver a implementarlo sea una solución realmente viable solo por el nivel de esfuerzo requerido.
+0

Branden, gracias por su respuesta 1. Ver la edición en relación con Stratus 2. No he experimentado con Red5, ya que estaba buscando una solución p2p. Soy consciente de ello y estoy considerando usarlo u otro servidor Flash Socket que permita la transmisión instantánea como ElectroServer. – dtroy

+0

En mi experiencia, ElectroServer se amplió realmente bien e hizo un gran trabajo con los datos, pero tenía algunos problemas con las transmisiones de video, pero esto era Hace un año. Red5 terminó siendo la solución con la que fui. No necesitamos su configuración de origen/borde para nuestro proyecto, pero escuché que se puede usar para escalar las cosas bastante bien. –

1

Bueno, llegué tarde a la fiesta en este caso, pero Frozen Mountain (para quien trabajo) tiene un producto ahora llamado IceLink que hará lo que quieras. Utilizará WebRTC nativo cuando el navegador lo admita, y recurrirá a un applet de Java.

En respuesta a las preguntas específicas que le preguntó:

  1. RTMFP: Sí, comunicaciones propietarias no es divertido. Bummer que no han abierto la especificación.

  2. Non-P2P definitivamente toma un golpe de rendimiento. Además, la escalabilidad se convierte en un problema.

  3. Los applets de Java son la única forma de obtener puertos UDP puros cuando el navegador no tiene WebRTC nativo, que es la ruta que tomamos.
  4. Los complementos personalizados son difíciles, en varios frentes, como ha señalado. Los applets de Java no son geniales, pero al menos no es un proceso completo de descarga/instalación :)

Espero que ayude un poco!

Cuestiones relacionadas