Fix transcription sample-rate handling (#740)

Fix for #703.

Adds an optional sampleRate parameter to the decodeAudioToFloat32() function. The caption transcriber passes in a value of 16000 to prepare audio in the format Whisper expects.
This commit is contained in:
kcfancher
2026-03-28 19:06:40 +01:00
committed by GitHub
parent f2eed05d36
commit 63496d05a2
3 changed files with 13 additions and 3 deletions
+3 -1
View File
@@ -34,10 +34,12 @@ export interface DecodedAudio {
export async function decodeAudioToFloat32({
audioBlob,
sampleRate,
}: {
audioBlob: Blob;
sampleRate?: number;
}): Promise<DecodedAudio> {
const audioContext = createAudioContext();
const audioContext = createAudioContext({ sampleRate });
const arrayBuffer = await audioBlob.arrayBuffer();
const audioBuffer = await audioContext.decodeAudioData(arrayBuffer);