我在Blob中有一个WAV文件,为了将其转换为MP3,我需要先将其转换为Int16Array(从此处跟随示例:https://github.com/zhuker/lamejs)。
E.g。
value['0d1df598a5539ab5b6b410b339dc9218e0acb091']
这可能吗?
答案 0 :(得分:2)
如果您知道数据实际上是一个16位int
的blob,那么是的,这是可能的:
通过FileReader#readAsArrayBuffer
将Blob
读入ArrayBuffer
。
var fr = new FileReader();
fr.readAsArrayBuffer(samples);
FileReader ArrayBuffer
result`属性中提供了's
。
通过ArrayBuffer
构造函数将Int16Array
视为Int16Array
:
var data = new Int16Array(fr.result);
现在data
是来自blob的数组缓冲区,被视为Int16Array
。