2013-05-10 21 views
7

Sto provando a trasmettere un video (WebM o MP4) da Node.js a HTML5 usando websockets (la libreria websocket è Socket.IO su server e client). Il browser in uso è l'ultima versione di Chrome (versione 26.0.1410.64 m).Utilizzo di websocket per lo streaming nel tag video

Ho visto here che è possibile inserire un flusso video nel tag video da un file utilizzando l'oggetto MediaSource.

La mia idea è quella di leggere blocchi di dati dal web socket anziché da un file. Qualcuno può pubblicare un esempio usando websocket per farlo o spiegarmi come farlo?

Grazie in anticipo.

risposta

5

Oltre ai messaggi di testo (stringa), l'API WebSocket consente di inviare dati binari, che è particolarmente utile per implementare protocolli binari. Tali protocolli binari possono essere protocolli Internet standard in genere sovrapposti a TCP, dove il carico utile può essere un Blob o un ArrayBuffer.

// Send a Blob 
var blob = new Blob("blob contents"); 
ws.send(blob); 

// Send an ArrayBuffer 
var a = new Uint8Array([8,6,7,5,3,0,9]); 
ws.send(a.buffer); 

oggetti Blob sono particolarmente utili quando combinato con l'API File JavaScript per l'invio e la ricezione di file, per lo più file multimediali, immagini, il video e audio.

Anche io suggerisco di vedere WebRTC (Tecnologia associata a WebSockets) Web Real-Time Communication (WebRTC) è un altro sforzo per migliorare le capacità di comunicazione dei moderni browser web. WebRTC è la tecnologia peer-to-peer per il Web. Le prime applicazioni per WebRTC sono chat vocale e video in tempo reale. WebRTC è già una nuova e avvincente tecnologia per le applicazioni multimediali e ci sono molte applicazioni di esempio disponibili online che consentono di testare questo con video e audio sul Web. Si prega di verificare this link

Problemi correlati