javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > 合并多个ArrayBuffe

合并多个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的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文