in frontend/src/hooks/useAudio.ts [79:99]
async function stopRecording() {
await wavRecorder.current?.pause();
const dataArrays = audioChunks.current.map((chunk) => {
return new Int16Array(chunk);
});
const totalLength = dataArrays.reduce(
(acc, chunk) => acc + chunk.length,
0
);
const mergedAudio = new Int16Array(totalLength);
let offset = 0;
dataArrays.forEach((chunk) => {
for (let i = 0; i < chunk.length; i++) {
mergedAudio[offset + i] = chunk[i];
}
offset += chunk.length;
});
return mergedAudio;
}