Estoy tratando de convertir un archivo de audio blob al tipo .mp4 que se genera desde MediaRecorder, regresa con el tipo webm y probé otros tipos en MimeType (atributo en MediaRecorder para establecer el tipo) pero no son compatibles, así que tengo Probé la biblioteca ffmpeg npm, pero me pedía la ruta del archivo, pero no lo estoy guardando, así que tampoco funcionó para mí. Cualquier sugerencia y respuesta que ayudará!!
Así es como lo estoy grabando y está funcionando bien.
const stream = await navigator.mediaDevices.getUserMedia({ audio: true }); const mediaRecorder = new MediaRecorder(stream); const audioChunks = []; mediaRecorder.addEventListener("dataavailable", event => { audioChunks.push(event.data); }); const start = () => mediaRecorder.start(); const stop = () => new Promise(resolve => { mediaRecorder.addEventListener("stop", async () => { const audioBlob = new Blob(audioChunks,{ 'type': 'audio/wav;' }); const audiomp3 = URL.createObjectURL(audioBlob); const audio = new Audio(audiomp3); const play = () => audio.play(); resolve({ audioBlob,audio,play }); }); mediaRecorder.stop(); });