buffer = {
let offsets = [];
let offset = 0;
const total = typedArrays.reduce( (a, v) => {
offsets.push(offset, offset + v[0].length);
offset += v[0].length + v[1].length;
return a + v[0].length + v[1].length
}, 0);
const buffer = new typedArrays[0][0].constructor(total);
typedArrays.forEach( (v, i) => {
buffer.set(v[0], offsets[i*2]);
buffer.set(v[1], offsets[i*2+1]);
});
return {"buffer":buffer, "offsets":offsets}
}