JavaScript将Blob转换为Float32Array(或其他类型的数组)

时间:2017-02-26 03:56:59

标签: javascript websocket

如何将使用WebSocket二进制消息接收的blob转换为Float32Array(或其他类型化数组:Uint32,Uint16等)。

我已尝试使用FileReader,但结果是'花费太长时间才能使用。结果必须在下一个收到的WebSocket消息上可用。

如果我可以让WebSocket接收ArrayBuffer而不是Blob,那就行了。我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

找到解决方案,很容易。 WebSocket binaryType默认为' Blob',将其更改为ArrayBuffer,然后转换为其他TypedArrays是一个快照。

var ws = new WebSocket(...);
ws.binaryType = 'arraybuffer';