Pregunta

He estado buscando en Google alrededor y todavía no puedo conseguirlo. Algunas personas dicen: aquí tienes, sólo lo utilizan. Otros afirman que tiene ciertas limitaciones que no permiten utilizar p2p la forma que desee en Flash.

Así pues, aquí es una simple pregunta:? ¿es posible implementar una aplicación Flash10, que utiliza algunos de los archivos torrent existentes para transmitir vídeo audio derecho / en el navegador del usuario

Si no - ¿por qué? ¿Hay alguna posible solución para este 'no'? Si es así - ¿cuáles son las dificultades de la puesta en práctica y por qué no tienen a nadie en realidad hecho todavía

?
¿Fue útil?

Solución

La respuesta es casi ninguna ... bueno, es sólo que no, para ser honesto.
@drudru señaló la tecnología adecuada para p2p flash, es decir, estratos.

Flash p2p se basa en RTMFP, que se basa en UDP. En realidad, el flash no se une un puerto, pero esto viene de las partes internas. No hay una API para hacerlo manualmente.

RTMFP permite básicamente dos cosas:

  1. Transmisión de UDP (no fiable, pero rápido) para vídeo y audio. Desde el lado de flash sólo se puede publicar su cámara y micrófono corriente. Desde el servidor, casi nada.
  2. Hacer llamadas remotas al otro extremo de la conexión P2P. Esto puede ser usado para transferir datos. Esta comunicación está asegurada, es decir, el orden y la integridad del paquete es mantenido por el jugador flash.

El P2P se basa en NAT punchthroughs. Stratus en sí es el servidor de introducción. Además, para fines de seguridad, una conexión P2P también significa, tanto para clientes tiene que tener un TCP ralentí (si no recuerdo mal) conexión con el servidor. Supongo, un bit de datos se transmite por supuesto, pero no la carga útil.

Sin embargo, el protocolo torrente es muy diferente de este. Por lo tanto, esto no es una opción. Se puede construir un protocolo equivalente en la parte superior de RTMFP, ingeniería inversa el servicio estratos (o espere hasta que sea de código abierto). Esto podría, por supuesto, también se pueden utilizar clientes sin flash. Pero, de nuevo, que no sería capaz de ver los datos transmitidos en forma de vídeo, ya que se obtiene es como un parámetro al que algunos llaman al cliente de su NetStream, probablemente un ByteArray. Y no se puede reproducir ByteArrays. Se podría escribir clientes que no son flash, que publican vídeos como una corriente, pero eso sería muy lejos de lo que quería, supongo.

Si usted realmente quiere hacer algo por el estilo, necesita Java. Puede firmar applets de Java, y si el usuario acepta el certificado, tienen acceso prácticamente sin restricciones, por ejemplo, usted podría obligar a los puertos. Dado que Java puede hacer UDP, usted podría tener un applet de Java, que hace el torrenting (tal vez sólo tiene que utilizar el código base Vuze) y si realmente desea que se muestre en flash (que a su vez requiere FLV), entonces se podría imitar un local " flash Media Server" y publicar el video en localhost: someport. Pero en realidad, el bit de flash parece ridículamente complicada e inútil para mí. Más bien tratar de reproducir con Java, que es de esperar tiene una opción para hacerlo de forma nativa.

Otros consejos

Flash no permite que usted pueda escuchar en un socket para conexiones entrantes. Esto sería hacen que sea muy difícil trabajar con torrentes existentes. Teniendo en cuenta los problemas de seguridad alrededor de esto, no veo que esto ocurra.

Adobe, sin embargo, ha comenzado su propia versión de un sistema P2P llamado Stratus. Se puede leer sobre eso aquí http://labs.adobe.com/technologies/stratus/

Toda esta información no está actualizado ahora.

Hmmm ... eso es una propuesta interesante, sólo para mantener el archivo descargado en la memoria flash. Creo que es ciertamente posible, pero probablemente lento y que se limitaría a unos pocos cientos de megabytes.

EDIT:. No es posible porque no se puede escuchar a los puertos usando sólo Flash, el navegador no tiene ese tipo de capacidad

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top