2011-01-19 20 views
7

Sto cercando di capire se HTMl5 è adatto per la parte client di un sistema di conferenza online. Il client deve essere in grado di:
1. visualizzare il video in diretta fornito dal server, utilizzando il tag video.
2. Simile per l'audio dal vivo, utilizzando il tag audio.
3. Il sistema supporta anche messaggi di testo. Qui possiamo usare websockets
4. C'è anche una funzione di condivisione del desktop. Per questo tipo di flusso di dati pensavo anche alle web socket. Ma questo è dati binari, può essere codificato in base64 prima di inviarlo. Quindi nel client html5, deve essere decodificato, elaborato (è un protocollo proprietario) e usando un oggetto canvas (?!) Lo disegna sullo schermo.
Sistema audio/videoconferenza in linea in html5

La webapp può elaborare questa quantità di dati nello stesso tempo?
HTML5 è pronto per questo?

risposta

13
  • Le webapp possono elaborare questa quantità di dati?

  • HTML5 è pronto per questo? Non ancora, ma presto

Queste sono tutte le aree che HTML5 sta lavorando per affrontare. Tuttavia, alcuni dei gruppi di lavoro sono più distanti rispetto ad altri e le funzionalità hanno diversi livelli di implementazione nei browser. Ericsson sta facendo molto in quest'area. Hanno un patched version of webkit che consente a una quantità sufficiente di queste tecnologie di effettuare videoconferenze e audio utilizzabili.

In termini di condivisione del desktop, noVNC (client VNC in un browser) dimostra che ciò è possibile. noVNC (disclaimer: Ho scritto noVNC) esegue la decodifica e il rendering RFB/VNC nel browser utilizzando Javascript e Canvas. Usa WebSockets per inviare e ricevere i dati e codificare/decodificare base64 sul cavo poiché WebSockets non supporta ancora i dati binari. Utilizza un proxy WebSockets per TCP websockify per comunicare con i server VNC. Funziona abbastanza bene.

Qui sono legati quindi alcune delle norme pertinenti lavoro:

Il posto migliore per vedere che cosa lo stato delle varie tecnologie legate HTML5 è: http://caniuse.com

+0

quello che hai fatto con noVNC è impressionante Buon lavoro. Informazioni su audio/video, l'attuale implementazione nei browser consente di visualizzare un live streaming? o solo un file può essere fornito nel tag audio/video? – confsys

+0

Lo streaming live viene eseguito da una combinazione di Stream API e File API. Ho aggiunto un link all'API File. L'API Stream è nata dall'utilizzo dell'API del dispositivo. In sostanza, consente di gestire un flusso di contenuti multimediali in modo simile all'API File. Cioè puoi accedere ai contenuti non elaborati e passare i flussi come se fossero file agli elementi che li accettano (audio/video). – kanaka

+0

Questa demo mostra un modo di utilizzare la tela con il video: http://people.mozilla.com/~prouget/demos/DynamicContentInjection/play.xhtml – kanaka