export async function processAudio(file: File): Promise { const ffmpeg = new FFmpeg(); await ffmpeg.load();
// Load the input audio file into FFmpeg's virtual filesystem ffmpeg.writeFile("input", await fetchFile(inputFilePath));
// Run FFmpeg to convert the audio to 16kHz mono WAV await ffmpeg.exec(["-i", "input", "-ar", "16000", "-ac", "1", "output.wav"]);
// Retrieve the converted audio from FFmpeg's virtual filesystem const output = await ffmpeg.readFile("output.wav");
// Decode the WAV file in memory to a Float32Array const decoded = await wav.decode(Buffer.from(output));
return decoded.channelData[0]; // Return the first channel as Float32Array }
async function main() {
const audioData = await processAudio(
"~/desktop/Neil deGrasse Tyson Teaches Scientific Thinking and Communication Official Trailer MasterClass.mp3"
);
console.log("Processed audio data:", audioData);
// Pass audioData
to whisper-turbo
}
main().catch(console.error);