-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathclient.js
More file actions
43 lines (33 loc) · 1.03 KB
/
Copy pathclient.js
File metadata and controls
43 lines (33 loc) · 1.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
var websocket = require('websocket-stream');
var socket = websocket('ws://localhost:3000');
console.log("connected");
var width = 640;
var height = 480;
var bytearray;
var ctx = document.getElementById('canvas').getContext('2d');
//video vis
socket.on('data', function (data) {
var bytearray = new Uint8Array(data);
var imgdata = ctx.getImageData(0,0, width, height);
var imgdatalen = imgdata.data.length;
for(var i=0;i<imgdatalen/4;i++){
/*
//for video feed . bytearray [r,g,b,r,g,b...]
imgdata.data[4*i] = bytearray[3*i];
imgdata.data[4*i+1] = bytearray[3*i+1];
imgdata.data[4*i+2] = bytearray[3*i+2];
imgdata.data[4*i+3] = 255;
*/
//for depth feed . bytearray [val , mult, val2, mult2, ...]
var depth = (bytearray[2*i]+bytearray[2*i+1]*255)/5;
imgdata.data[4*i] = depth;
imgdata.data[4*i+1] = depth;
imgdata.data[4*i+2] = depth;
imgdata.data[4*i+3] = 255;
}
ctx.putImageData(imgdata,0,0)
});
socket.on('end', function(){
console.log("stream ended");
socket.close();
});