/ / Strumień emisji obrazu przez socket.io-stream - javascript, node.js, sockets, stream, socket.io

Przesyłanie strumieniowe obrazu przez socket.io-stream - javascript, node.js, gniazda, stream, socket.io

W tej chwili mam kod, który wysyła obraz lub dowolnyinny plik z przeglądarki na serwer, serwer następnie emituje strumień do wszystkich innych gniazd. Wszystko działa dobrze, ale częścią, której nie mam pojęcia, jak zaimplementować, jest odbierający koniec przeglądarki.

Wysyłanie z przeglądarki:

var file = files[0]
var stream = ss.createStream()
ss(socket).emit("file", stream, { size: file.size })
ss.createBlobReadStream(file).pipe(stream)

Serwer:

ss(socket).on("file", function(stream, data) {
stream.pipe(fs.createWriteStream("file.jpg"))

var newStream = ss.createStream()

ss(socket).emit("file", newStream)
stream.pipe(newStream)
})

Przeglądarka odbiera:

ss(socket).on("file", function(stream, data) {
// Implement this
})

Nie jestem do końca pewien, co zrobić z przychodzącymprzesyłaj strumieniowo i użyj właśnie przesłanego obrazu, wyświetl go lub dowolne inne zadanie. Doceniam każdą pomoc, jaką możesz mi w tej sprawie udzielić, lub wskazać na coś złego w tym kodzie. Z góry dziękuję.

Odpowiedzi:

0 dla odpowiedzi № 1

Możesz uzyskać tablicę uint8, nasłuchując zdarzeń danych w przeglądarce. Wciąż jednak nie wiem, co robić.

ss(socket).on("file", function(stream, data) {
stream.on("data",function(uint8array){ //do something })
})

Inne zdarzenia, których nie spodziewałem się zobaczyć w strumieniu otrzymanym przez klienta.