fileformer
search⌘KtranslateENexpand_moreupload_fileConvert
Converters8 file families · 44 direct conversions
What changes in a conversionarrow_forward
home/audio-tools/voice-recorder

Record your voice, check the level, save the take.

Press record and speak. The meter shows whether you're too quiet or distorting while you talk. Keep several takes, listen back, and download the one you want as WAV or a small compressed file. Audio never leaves your device.

ready0:00.0
−60 dB−25−70 dB
pausemic
mic_off
microphone processing · set before recordingNoise suppressionRemoves steady background hum, fans and traffic.Echo cancellationStops speaker sound feeding back into the mic.Auto gainTurns the volume up and down to keep speech even.
For speechall onFor musicall off
Saved in the browser’s own format (usually Opus, ~24 KB per 10 s). WAV is lossless, about 1 MB per 10 s.
takesnone yet
graphic_eqEach recording appears here with a player and download buttons. Takes stay until you close the page.
downloadWAV · · delete
~/reading-the-meter

Aim for the green. Red can't be fixed later.

Digital audio has a hard ceiling at 0 dB. Anything louder is cut flat, and that crackle stays in the file. Too quiet is safer, but turning it up later also turns up the hiss. The three zones on the meter mean this:

Too quietbelow −25 dBSpeech will be hard to hear and boosting it later brings up room noise and hiss.Move closer, 10-20 cm from the mic.
Good−25 to −7 dBLoud enough to be clean, with space left for a laugh or a raised voice.Keep this distance and speaking level.
Too loudabove −7 dBPeaks near 0 dB are clipped: the tops of the waves are cut off, and it crackles.Back off or turn the input level down.
the zone you’re in lights up while recording
~/voice-or-music

The same three switches, set for four jobs.

Your browser's microphone processing was designed for video calls. It makes voices clearer, but it can squash music and room sound. Click a job to apply its settings above.

record_voice_overVoice note
noiseonechoonautoon
Clearest speech with no setup. Fine for messages and reminders.
podcastsPodcast or voiceover
noiseonechooffautooff
Keep noise suppression but set your own level, so quiet pauses don’t pump up the hiss.
pianoMusic or singing
noiseoffechooffautooff
All off. Suppression treats sustained notes as noise and chops them.
forestRoom or nature sound
noiseoffechooffautooff
All off, to capture the space as it is. Expect a lower level.
~/what-you-asked-for-vs-what-you-got

The switches are requests. The browser decides.

When this page opens the microphone it asks for noise suppression, echo cancellation and auto gain on or off. The browser may ignore a request it can’t honour, run at a different sample rate, or record in a format of its choosing. Everything below is read from your browser now, and from each take after you record it.

Settings this browser understands
noiseSuppressionNoise suppression switchsupported
echoCancellationEcho cancellation switchsupported
autoGainControlAuto gain switchsupported
voiceIsolationNewer, stronger voice filtersupported
sampleRateAsk for a sample ratesupported
sampleSizeAsk for a bit depthsupported
channelCountMono or stereosupported
latencyAsk for low delaysupported
deviceIdChoose a specific micsupported
navigator.mediaDevices.getSupportedConstraints()
What your last take actually used
Noise suppression--
Echo cancellation--
Auto gain--
Sample rate--
Channels--
Recorded as--
Record a take above and this column fills in from MediaStreamTrack.getSettings().
Formats this browser can record
audio/webm;codecs=opusyes
audio/webmyes
audio/ogg;codecs=opusno
audio/oggno
audio/mp4;codecs=opusyes
audio/mp4;codecs=mp4a.40.2yes
audio/mp4yes
audio/mpegno
audio/wavno
audio/webm;codecs=pcmyes
Audio engine runs at 48,000 Hz · base latency 10.0 ms. MediaRecorder.isTypeSupported()
~/how-small-is-too-small

Five bitrates, one voice, measured.

A 4-second synthetic voice, a buzzing 120 Hz source through moving vowel formants, plus hissy “s” sounds up to 10 kHz: is played into five recorders at once, each asked for a different bitrate. The files are then decoded and their spectra measured. Low bitrates don’t just sound muddier: the encoder throws away everything above a cut-off frequency.

Asked forGotFileAudio up to
OriginalPCM375 KB…uncompressed WAV
6 kbps………
12 kbps………
24 kbps………
48 kbps………
96 kbps………
Rows fill in after the test. The synthetic voice is generated in your browser; no microphone is needed.
average spectrum · dB0-20 kHz
graphic_eqPress “Run codec test”, it plays a 4-second synthetic voice silently into five recorders and takes about 5 seconds.
~/reference

Inside the WAV this page writes.

A WAV file is a 44-byte header followed by raw samples. These are the exact bytes for the 4-second synthetic voice used above, decoded field by field, with the sizes other common formats would take for the same length.

52 49 46 46 24 DC 05 00 57 41 56 45 66 6D 74 20 10 00 00 00 01 00 01 00 80 BB 00 00 00 77 01 00 02 00 10 00 64 61 74 61 00 DC 05 00
OffsetBytesFieldValue
04Chunk ID“RIFF”
44Size of the rest of the file384,036 bytes
84Format“WAVE”
124Sub-chunk ID“fmt ”
164fmt chunk size16
202Audio format1 = PCM, uncompressed
222Channels1 (mono)
244Sample rate48,000 Hz
284Byte rate96,000 bytes/s
322Block align2 bytes per frame
342Bits per sample16
364Sub-chunk ID“data”
404Sample data size384,000 bytes
The same 4.0 s in other formats
Telephone8 kHz · 8-bit µ-law · mono31 KB
Speech recognition16 kHz · 16-bit · mono125 KB
This page’s WAV48 kHz · 16-bit · mono375 KB
CD audio44.1 kHz · 16-bit · stereo689 KB
Studio48 kHz · 24-bit · stereo1.2 MB
High resolution96 kHz · 24-bit · stereo2.3 MB
MP3 at 128 kbpstypical, lossy63 KB
Opus at 24 kbpstarget, lossy12 KB
Timeline
1877Edison records sound on tinfoil with the phonograph.
1928Nyquist shows a signal must be sampled at twice its highest frequency.
1937Alec Reeves invents pulse-code modulation (PCM).
1972ITU G.711 standardises 8 kHz µ-law and A-law telephone audio.
1982CD audio fixes 44.1 kHz, 16-bit stereo PCM.
1991IBM and Microsoft publish RIFF and the WAVE format.
1993MP3 (MPEG-1 Audio Layer III) is standardised.
2012Opus becomes IETF RFC 6716.
2013MediaRecorder ships in Firefox; Chrome follows in 2016.
2017WebRTC 1.0 constraints include noiseSuppression, echoCancellation and autoGainControl.
2021Safari ships MediaRecorder, recording to MP4/AAC.
2024voiceIsolation is added to the Media Capture spec as a separate constraint.