合并多个ArrayBuffer场景及方法示例
作者:旅图灬
这篇文章主要为大家介绍了合并多个ArrayBuffer方法示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
需求场景
小程序通过socket传输的录音 Buffer数据,想拿到最终的完整的或者片段合并buffer,生成pcm
音频文件。
mergeArrayBuffers(arrayBuffers) { // 计算新的ArrayBuffer的总长度 let totalLength = 0; for (const buffer of arrayBuffers) { totalLength += buffer.byteLength; } // 创建一个新的ArrayBuffer const mergedBuffer = new ArrayBuffer(totalLength); // 创建一个Uint8Array以便操作新的ArrayBuffer const uint8Array = new Uint8Array(mergedBuffer); let offset = 0; // 逐个复制ArrayBuffer到新的ArrayBuffer中 for (const buffer of arrayBuffers) { const sourceArray = new Uint8Array(buffer); uint8Array.set(sourceArray, offset); offset += sourceArray.length; } return mergedBuffer; }
以上就是合并多个ArrayBuffer方法示例的详细内容,更多关于合并多个ArrayBuffe的资料请关注脚本之家其它相关文章!