SOUNDGENERATOR.APP
50% - - idle

Voice & files · microphone capture

Voice Recorder

Record from your microphone in the browser, watch the live input waveform as you speak, and keep as many takes as you like. Each take can be played back or downloaded as a 16-bit PCM WAV file. The audio never leaves your device.

Recordings are processed entirely in your browser and are never uploaded. Record in a quiet room, and if your speakers are audible to the microphone you will capture echo or feedback - use headphones.

Recorder idle
00:00.0
Input level · live

Ready. Press record to ask for microphone access.

Takes

No takes yet. Recordings appear here.

Reference How a browser recording becomes a WAV

Four steps happen every time you press record and then stop, all of them on your machine.

1 · Permission and capture

getUserMedia({ audio: true }) asks the operating system for the microphone. On success you get a MediaStream - a live pipe of audio samples. The same stream is split: one branch goes to a MediaRecorder to be saved, another to an AnalyserNode so the page can draw the waveform without disturbing the recording.

2 · Encoding on the fly

Browsers almost never hand you raw PCM. The MediaRecorder compresses the stream as it arrives, typically to WebM/Opus, because that format is built for streaming and small files. The result is a Blob you can already play back.

3 · Decoding for export

To produce a WAV, the page reads that Blob with arrayBuffer() and feeds it to decodeAudioData(), which hands back the uncompressed samples as an AudioBuffer.

4 · Encoding the WAV

Those samples are written into a 44-byte WAV header and 16-bit little-endian PCM data, then offered as a download. That is a genuine WAV file any audio editor will open - not the compressed capture under a different name. If decoding fails, the page says so and offers the original file instead.

FAQ Questions people actually ask
Where does my recording go?

Nowhere. The microphone stream is captured, drawn and encoded entirely inside this page in your browser. There is no upload step and no server to upload to - the site is a static collection of files. When you close the tab, the recording is gone unless you have downloaded it.

Why is the downloaded file a WAV and not a WebM?

Browsers capture with MediaRecorder, which usually produces a compressed format such as WebM/Opus because it is built for streaming. To give you a WAV, the page decodes that captured audio and re-encodes it as uncompressed 16-bit PCM before downloading. If decoding fails on your browser, it falls back to downloading the original file in its real format rather than pretending it is a WAV.

Why can no one hear me, or my recording is full of echo?

Two common causes. First, the wrong input device: check the system or browser microphone picker and select the right one. Second, echo: if your speakers are loud, the microphone hears them, and the recording picks up a delayed copy of itself or a feedback howl. Wear headphones when recording, or lower the speaker volume and record in a quiet room.

The page refuses to start recording - why?

Microphone access requires a secure context (HTTPS or localhost) and your explicit permission. If you denied permission earlier, the browser remembers it; reset it in the site settings. If no microphone is connected, or it is disabled at the OS level, the browser reports that no input device exists.

More tools Related tools