Intento usar aws amplificar las predicciones.
El ejemplo está en este sitio al final:
https://docs.amplify.aws/lib/predictions/transcribe/q/platform/js/#set-up-the-backend
let buff = await file?.arrayBuffer() await Predictions.convert({ transcription: { source: { bytes: buff } } }).then(({ transcription: { fullText } }) => console.log({ fullText }))Dice
puede transcribir un búfer de bytes de audio PCM a texto, como una grabación del micrófono.
Pero este ejemplo no funciona.
file es un archivo mp3.
Cuando lo paso a bytes , mi resultado es una cadena vacía ""
Supongo que lo tengo.
let buffer = await file.arrayBuffer() let context = new AudioContext() context.decodeAudioData(buffer, async res => { let output = res.getChannelData(0) await Predictions.convert({ transcription: { source: { bytes: output } } }).then(({ transcription: { fullText } }) => console.log({ fullText })) }) Necesitas usar AudioContext . Usted decodifica su búfer y luego obtiene los datos del canal y los pasa a su transcripción