이상한 경험이 있습니다. 이 배열 버퍼 설정의 데이터를 보낼 때 :JSON은 websocket을 통해 보낼 때 Float32Array 버퍼 크기를 여러 번 늘립니다.
var f32s = Float32Array(2048);
for (var i = 0; i < f32s.length; i++) {
f32s[i] = buffer[i]; // fill the array
ws.send(f32s[i]);
}
다른 끝에있는 버퍼 크기는 8192 바이트입니다. 하지만 노호처럼 JSON 형식 버퍼 chunck를 보낼 때
var obj = {
buffer_id: 4,
data: f32s[i]
};
var json = JSON.stringify({ type:'buffer', data: obj });
ws.send(json);
I은 55 타단 팽창에있어 버퍼 크기,에 충전 데이터 바이트 17하여 XXX 바이트 xxx는 데이터가 입력되지 않았습니다.
왜 이런 일이 발생하고 버퍼 크기를 낮게 유지해야합니까? 다른 끝에서 렌더링 할 때 스트림이 고르지 않기 때문에이 작업을 수행하려고합니다.
감사합니다.
나는 이것을 잘 이해하지 못한다. 그러나 상상할 수있다. 데이터가 손실되지 않고 Float32Array를 압축하는 방법이 있습니까? – ket
Float32Array는 사용자가 수행하는 작업에 관계없이 항목 당 4 바이트를 사용합니다. 그러나 서버에서 gzip 압축을 사용하면 데이터를 효율적으로 압축하여 전송할 수 있습니다. – Nat