2009-09-16 11 views
5

Sto cercando la migliore soluzione possibile che mi consenta di incorporare video/audioconferenza live tra 2 utenti (solo 2 a questo punto) in una piattaforma di gioco flash. La chat video non è solo una funzione extra, è la principale.Soluzione di confronto video P2P Web

Principalmente sto guardando implementazioni open source o qualcosa che sarò in grado di implementare me stesso, ma considererò i prodotti commerciali se sono esattamente ciò di cui ho bisogno.

qui ci sono alcune cose che ho guardato, ma finora, non ho trovato abbastanza bene nessuno di loro:

  1. Flash Player funzionalità P2P 10 del suono promettente, ma sono consapevole di il fatto che Adobe non ha rilasciato nessuna informazione sul protocollo RTMFP e che non esiste un server commerciale che lo supporta a questo punto.

  2. flusso tutte le video/audio dal vivo attraverso un server Flash (non p2p), ma dalla mia esperienza personale non si ottiene una superficie liscia conversazione .
    Penso TokBox utilizza questo metodo

  3. applet Java sono una possibile soluzione troppo (per eseguire p2p), ma non mi credo che sarà una bella ed elegante soluzione combinarli nel gioco a questo punto (e richiede all'utente l'autorizzazione ). A proposito, non sono riuscito a trovare alcuna implementazione utile. Quindi, se ne conosci qualcuno, li esaminerò.

  4. Google Gmail Video Chat utilizza un personalizzato (e proprietarie) del browser plug-in, che fa il p2p e flussi video/audio nel lettore flash. Questa è una possibile soluzione , ma io preferisco non implementare l'intero stack del protocollo p2p + plug-in del browser in questa fase e concentrarsi su altri aspetti del gioco stesso. Penso che stiano usando il protocollo basato su XMPP simile a Jingle e che abbiano rilasciato uno Jingle librarby ma senza l'implementazione del confronto dei video.

  5. EDIT: In risposta a Branden:
    mi rendo conto di Adobe Stratus. Stratus è un servizio di rendezvous in versione beta che aiuta a stabilire le comunicazioni tra gli endpoint Flash Player (server RTMFP).
    Questa versione corrente dello Stratus è prerelease ed è progettata solo per scopi di valutazione . Il servizio non è definitivo.
    Non esiste la garanzia che il servizio sarà continuerà ad esistere in futuro o qualsiasi informazione sul futuro costo.
    Ecco perché non penso che possa essere utilizzato come soluzione commerciale . Almeno non ancora.

Apprezzerei i vostri suggerimenti e consigli. Grazie!

risposta

2
  1. Il server in questione è attualmente denominato Stratus. Puoi saperne di più al numero Adobe Labs.
  2. È possibile ottenere uno streaming uniforme con una soluzione basata su server con Flash, ma è necessario disporre di una larghezza di banda sufficiente per supportare tutti i flussi (4 flussi per una conversazione di due persone - 2 su e giù). Ci sono alcune opzioni qui, ma i due migliori sono probabilmente Adobe's Flash Media Interactive Server e l'opensource (e abbastanza impressionante) Red5.
  3. Sono d'accordo sul fatto che una soluzione basata su applet sarebbe inelegante, ma potrebbe essere l'unico vero modo per ottenere video p2p in questo momento.
  4. Jingle è molto bello, ma come hai detto i bit open source non supportano ancora il video. Non penso che la sua re-implementazione sia una soluzione veramente fattibile solo a causa del livello di sforzo richiesto.
+0

Branden, grazie per la vostra risposta 1. Vedere la modifica per quanto riguarda lo Stratus 2. Non ho sperimentato con Red5, poiché stavo cercando una soluzione p2p. Ne sono consapevole e sto pensando di usarlo o un altro server Flash Socket che permette lo streaming flash come ElectroServer – dtroy

+0

Nella mia esperienza ElectroServer ha scalato molto bene e ha fatto un ottimo lavoro con i dati, ma ha avuto alcuni problemi con i flussi video - ma questo era circa un anno fa. Red5 ha finito per essere la soluzione con cui sono andato. Non avevamo bisogno della sua configurazione di origine/edge per il nostro progetto, ma ho sentito che può essere usato per scalare le cose abbastanza bene. –

1

Beh, sono in ritardo per la festa su questo, ma Frozen Mountain (per chi lavoro) ha un prodotto ora chiamato IceLink che farà quello che vuoi. Userà WebRTC nativo quando il browser lo supporta e ricadrà su un'applet Java.

In risposta alle domande specifiche che hanno chiesto:

  1. RTMFP: Sì, le comunicazioni di proprietà non è divertente. Peccato che non abbiano aperto le specifiche.

  2. Non-P2P ha sicuramente un successo in termini di prestazioni. Inoltre, la scalabilità diventa un problema.

  3. Le applet Java sono l'unico modo per ottenere porte UDP pure quando il browser non ha WebRTC nativo, che è il percorso che abbiamo intrapreso.
  4. I plug-in personalizzati sono difficili, su più fronti, come notato. Le applet Java non sono grandiose, ma almeno non è un processo di download/installazione completo :)

La speranza che aiuta un po '!

Problemi correlati