Se usa getUserMedia para acceder al micrófono y MediaRecorder para grabar. El resultado se envía como FormData con fetch.
getUserMedia
MediaRecorder
FormData
fetch