Open the app — Sound Editor

Have you ever installed a whole program just to cut the first few seconds off a recording?

You install it, make an account, and hunt for [Trim] among a wall of buttons.
Then the thing you actually came to do takes thirty seconds.
And the next time you need it, you can’t even remember where you installed it.

There are web services that do it for you, but uploading a recording of your own voice to someone else’s server is not a comfortable thought either.

This tool runs entirely inside your browser.
The file never leaves your device, and editing keeps working even if your connection drops.
Open, select, cut, save. That’s it.

How to use

The basic order

  1. Press [Open file], or drag a file onto the waveform area.
  2. Drag across the waveform to select the part you want to work on.
  3. Use the buttons below to cut, or apply an effect from the right.
  4. Press [Save], pick a format, and download.

If this is your first time, press [Sample track].
A short song loads. You need real music to hear what an edit actually does.

It reads wav · mp3 · flac · m4a · ogg — or more precisely, whatever your browser can decode, which varies a little between browsers.

Read the file info first

When a track loads, a line appears above the waveform.

Hometown Spring @Yu Eunji.mp3 (5.62MB) MP3 none (lossy) 256 kbps 44.1 kHz stereo 03:03.520

The name and size are written plainly; the rest sit in pills.
Hover over any of them to see what the value is.

The one to watch is bit depth.
If it says 16-bit, that track carries only as much detail as 16 bits can hold.
Save it as 24-bit without knowing that, and the file grows by half while the sound stays exactly the same.

Lossy formats (mp3, aac and friends) have no bit depth at all, so it says none and shows the bitrate instead.

These values come from reading the file header directly.
Once the browser decodes audio, the result is 32-bit float no matter what went in — the original depth is gone by then. So it is read before decoding.

Selecting

ActionWhat it does
DragSelect a range
Shift+ClickExtend the selection
Double clickClear the selection
WheelMove left and right
Ctrl+WheelZoom
← →Move (larger steps with Shift)
+ -Zoom
SpacePlay / pause

The thin strip above the waveform is the overview.
When you zoom in, the part you are looking at is highlighted there, and you can drag that window around.

While zoomed in, the view follows the playhead during playback.
Without that, you end up hearing sound while the screen shows nothing — which is just confusing.

Watching the level

A mixer-style column of lights stands to the left of each channel.

  • The column — the level going past right now. It jumps up instantly and slides down slowly. Drawn raw it would flicker sixty times a second and hurt to look at.
  • The white line — the highest point reached so far.
  • The number under Max. — the loudest level (dB) up to the playhead.
  • The red lamp on top — the sound hit 0 dB and clipped somewhere. Once lit it stays lit until the meter resets, because a moment of clipping is easy to miss.

The scale beside it reads 0 / -6 / -12 / -24 / -36 dB, and the column measures down to -48 dB.
Two red segments over three amber ones, in the same order a mixer uses.

If the lamp lights, pull it down a little with [Amplify], or set it again with [Normalize].

Seeing the frequencies

Have you ever wondered, mid-song, “what frequency is that hiss, anyway?”
When you try to cut a harsh sound with an EQ and don’t know which band it lives in, all you can do is sweep the knob around and hope.
And judging frequency by ear alone takes a long time to learn.

The screen below the waveform answers that.
It draws which frequencies the sound at the current spot carries, and how strongly.
Frequency runs across, level (dB) runs up. Low sounds on the left, high sounds on the right.

Pause and the moment stays

During playback the graph moves with the sound, constantly.
But it is hard to point at “that sound just now” on a graph that won’t hold still.

So when you pause, the graph from that exact moment stays on screen.
A yellow dotted line marks the spot on the waveform and the overview, and pressing play again picks up from there.
Listen a little, pause, listen again — it is a good way to close in on the sound you are after.

When nothing is playing, click the waveform and you see the frequencies at that spot right away.
Pressing [■] lets go of the paused spot and returns to the start (or the start of the selection).

Reading the top line

Paused 00:56.720 · Peak 147.1 Hz · D3 +4¢ · -21.1 dB · ↔ 632.5 Hz · D#5 +28¢ · -55.4 dB

WhereMeaning
Far leftWhich moment you are looking at. Playing (orange) · Paused (yellow) · Cursor
Middle (Peak)The strongest frequency. An orange dot marks it on the graph too
Right (↔)The value under the mouse pointer

On a narrow screen this splits into two lines, and while you point at the graph the pointer value takes the peak’s place.

The note name next to a frequency is the closest musical note and how far off it is.
The offset is in cents (¢), and 100 cents make a semitone. The reference is A4 = 440 Hz.
You can read “that’s around D3” in musical terms straight away, which makes it handy for ear training as well.

Picking only the biggest of the computed bins could be off by a whole bin width (about 5.4 Hz).
So it fits a curve through the neighbouring bins to find the value between bins. A 440 Hz sine wave reads as 439.9 Hz.

One thing to keep in mind: the strongest frequency is not always the pitch.
Instruments carry overtones at two, three times the fundamental, and on some instruments an overtone is louder than the fundamental itself.
If the peak reads an octave high, look for a lower hump further left on the graph.

The scale

The frequency marks are 16 · 31.5 · 63 · 125 · 250 · 500 · 1k · 2k · 4k · 8k · 16k Hz.
These are the octave-band centre frequencies from the international standard ISO 266, used in acoustic measurement and graphic EQs.
Each step is exactly double — one octave — so every gap is the same width.
The 20 · 50 · 100 · 200… marks you often see in mixing plugins mix steps of 2× and 2.5×, so their gaps come out uneven. This reads more easily.

If the screen is too narrow for every label, it skips octaves evenly. The grid lines are all still drawn.

The visible range runs from 10 Hz to 24 kHz.
Human hearing is usually given as 20 Hz – 20 kHz; the range is widened a little on both sides so you can see what lies outside it too.
Below 20 Hz and above 20 kHz are shaded slightly darker, to show they are outside what we hear.
On some devices the right edge stops at 22.05 kHz instead. The reason is under When the sample rate looks different.

The vertical axis runs from 0 dB down to -100 dB. A single sine wave at the loudest possible level reaches 0 dB.

How it measures

It does not listen to the playback output.
It cuts 0.19 seconds around that moment straight out of the file and breaks it into frequencies (an FFT).

Measuring the playback output would lose the value the instant you pause, and could never show a spot you haven’t played.
Measuring from the file means the graph stays when you pause, and you can look at any spot you click.
It is also unaffected by the volume knob — you see the level that is actually in the file.

The 0.19-second window is fairly long on purpose, to tell low notes apart.
A longer window makes the frequency bins finer, and down low a semitone is only a few hertz wide.
The trade-off is that a very short, sharp sound may appear blended with what comes before and after it.

The left and right channels are averaged.
Pick one channel with the [L] or [R] label and you see that channel alone — useful for tracking down noise that sits on one side only.

Working on one channel

Sometimes only one side picked up noise, or only one side came out quiet.

Click the [L] or [R] label to the left of the waveform to work on that channel alone.
The L and R keys do the same. Press the same one again to go back to both, or hold Shift to pick several.

Once you do, the screen changes:

  • Channels you are not touching are dimmed.
  • The selection shading is painted only on the channel you are working on.
  • On the untouched channel the range edges are drawn as a dotted line — you can see where the range is, but it tells you the work will not reach there.

Edits that change the length cannot be done on one channel.
Cut one side alone and everything after it drifts out of sync with the other.
So Cut, Paste, Delete and Keep-only-selection are disabled while a single channel is picked.

To empty just one channel, use [Silence].
It fills the range with zeros, so the length stays exactly the same.

Cutting and pasting

ButtonWhat it doesShortcut
CutLifts the range out into the clipboardCtrl+X
CopyCopies without removingCtrl+C
PasteInserts at the cursorCtrl+V
DeleteRemoves the rangeDel
Keep only selectionThrows away everything else
SilenceFills the range with zeros
ReverseTurns the range back to front

Undo is Ctrl+Z, redo is Ctrl+Shift+Z.

Undo brings back more than the sound: the selection, the cursor and the view you were looking at come back too. That is what makes it feel like returning to the exact spot you were at.

You can step back forty times, but there is also a cap on how much audio the history holds.
With a long track that cap is reached first — about five or six steps for a four-minute song.

Effects

There are eleven of them in the right-hand panel.
With a range selected they apply to that range; with nothing selected they apply to the whole track.

When applied to a range, both edges are blended briefly into the original. Otherwise the sound jumps at the moment the effect starts.

Level

Normalize — raises the whole range by one factor until its loudest point reaches the target.
Loud and quiet parts keep their relationship. The target defaults to -0.3 dB: aiming at exactly 0 dB can spill over during encoding, so a little room is left.

Amplify — a plain multiplication, from -40 dB to +24 dB.
If any sample lands outside -1 to 1, it counts them and tells you how many. Miss that and you save clipped audio without knowing.

Compressor — presses down only the loud parts so the quiet ones come through. Especially useful for recorded speech.

ControlMeaning
ThresholdEverything above this gets pressed
RatioHow hard (4:1 means 4 dB over becomes 1 dB over)
AttackHow long before it starts pressing
ReleaseHow long before it lets go again
KneeHow gently it crosses the threshold
Make-upRaises the whole thing back by what was pressed

With a single channel picked, the compressor is calculated for that channel alone.
Run over both and copied back for one, the result would carry the pressing caused by the other side.

Shaping

Fade — raises or lowers across the range. Four curves to choose from.

CurveFeel
LinearSteady
ExponentialGentle start, quick finish
LogarithmicQuick rise, slow finish
Equal powerS-curve. Natural when two sounds overlap

Smooth both ends — takes just 5 ms at each edge up from zero and back down.
Cutting where the wave is not at zero leaves a click, and this removes it. Reach for it when an edit sounds harsh.

Tone — a low cut plus bass and treble.
Voice recordings sit on top of rumble below 100 Hz: fans, air conditioning, footsteps, wind.
Put the low cut around 100 Hz and that muddiness disappears while speech gets clearer. The voice itself lives higher up, so nothing goes thin.

Length

Trim silence — two buttons.

  • [Trim both ends] — removes the empty sound before the start and after the finish. Half of all recording cleanup is this one job.
  • [Shorten gaps] — shortens long silences in the middle down to a length you set.

Silence defaults to anything below -50 dB.
Leave is how much room to keep around the sound. Cut flush at zero and the first word feels chopped, so the default is 100 ms.

Since the length changes, this cannot be done on one channel. With a range selected it only looks inside that range.

Speed — from 0.25× to 4×.
The samples are re-read faster or slower, so the pitch moves with the speed. Faster means higher.
Changing tempo while holding the pitch takes an entirely different kind of calculation, so it is not here.

Space

Echo — repeats the sound slightly delayed and layers it. Delay, repeats and mix.
The tail is cut off at the end of the range, since the track cannot get longer on its own.

Reverb — puts the sound in a room.
Long and slow sounds like a hall; short and quick sounds like a small room.

The reverb tail is made on the spot. Instead of shipping a recording of a real room (an impulse response), it imitates one with noise that fades away. Nothing to download, and length plus fade speed alone cover everything from a booth to a hall.

Character

Radio — the sound of an old telephone or a megaphone.
It keeps only the middle band where the voice sits, cuts away above and below, and roughens what is left.

The 400 Hz – 3 kHz default is not arbitrary.
Telephone lines carried 300 Hz – 3.4 kHz, and that neighbourhood is what sounds most like a phone.
Narrow the band further and it turns into a small speaker.

Channels — stereo width, swap L/R, merge to mono.
Width at 0 % makes both sides identical, so it sounds like mono; 200 % pushes them further apart.
Merging to mono changes the track itself, so it always applies to the whole of it.

Why the level does not jump

Tone, Radio, Echo and Reverb all match their result back to the original peak.

Narrowing a band makes things quieter; roughening or adding a tail makes them louder.
Left alone, the level would lurch every time you applied something, and could cross 0 dB and clip.
So the loudest point is measured before and after, and the difference is put back. The colour changes, the level stays.

Amplify, Normalize and Compressor exist to change the level, so they are left alone.

Saving

Press [Save] and a small window appears. Pick a format, press [Save] again, and it downloads.

Saving always covers the whole track. To keep only a part, trim it first with [Keep only selection].

Choosing a format

FormatNatureSize
WAVLossless, uncompressedLargest
FLACLossless, packedAbout half a WAV
MP3LossySmallest

For anything you are keeping, FLAC is the one to pick. It throws nothing away and lands at about half the size.
Higher packing levels only take longer; the sound is identical.

The MP3 and FLAC encoders are fetched once, the first time you save in that format. No reason to make WAV-only users carry them.

Match source

Format, bit depth and bitrate can each be set to [Match source].
What it will actually produce is written in the brackets, so you know the result before you commit.

Match source (FLAC) · Match source (24-bit) · Match source (160 kbps)

If the original is something this tool cannot write, like AIFF or M4A, that option is blocked and says why.
Quietly saving as something else would only be discovered later, when you open the file.

Bitrate only lights up when the value was written in the file. A figure estimated from size and duration is not solid enough to call “the same”.

You cannot save higher than the source

Saving a 16-bit original as 24-bit achieves nothing.
No detail appears out of nowhere; the file just grows by half.

So bit depths above the source are blocked outright.
Open a 16-bit file and the 24-bit and 32-bit float entries go grey and stop responding.
If 32-bit was already selected, it drops to 16-bit and tells you.

FLAC cannot hold 32-bit float, so a 32-bit float original saved as FLAC lands at 24-bit.
There is also 8-bit WAV, for the sake of 8-bit originals — matching the source needs somewhere to land.

Good to know

Nothing is uploaded

Everything happens inside the browser. Nothing is sent to a server, nothing is stored anywhere.
Once the page has loaded, editing and saving as WAV or FLAC keep working with the network off.

Reloading the page throws the edit away. Save first.

There are limits

Up to 10 minutes and 150 MB.

This is a tool for tidying a song or a recording, not for reworking an hour-long lecture.
Ten minutes of 44.1 kHz stereo becomes 212 MB once decoded, and while editing the original, the new version and the undo history are all alive at once — in practice three or four times that.

The length is measured before decoding.
File size tells you nothing about duration: a well-compressed 5 MB mp3 could be an hour long. Decode it first and you would only learn it was too long after building a buffer over a gigabyte.

When the sample rate looks different

The sample rate in the info line is the value from the original file.

But browsers often resample while decoding, to match the audio device.
You open a 44.1 kHz file and the editing happens at 48 kHz. Saving writes that value.

If you paste a piece copied from another track at a different rate, the paste is blocked with a message.
Inserted as is, the sample count would line up while speed and pitch would not.

The right edge of the frequency screen follows this value too.
The highest frequency a track can hold is half its sample rate (the Nyquist frequency): 24 kHz if it was decoded at 48 kHz, 22.05 kHz if at 44.1 kHz.
If a 44.1 kHz file was decoded at 48 kHz, everything above 22.05 kHz was never in the original, so it shows up empty.

Frequency range of MP3 and FLAC

FLAC is lossless, so surely its frequency range is wider than MP3’s?
In fact, at the same sample rate, both can hold the same range.
At 44.1 kHz, MP3 and FLAC alike top out at 22.05 kHz. The sample rate sets that limit, not the format.

The difference is in what sound is actually left.
To save space, an MP3 encoder strips away the high bands you are least likely to hear — and the lower the bitrate, the lower it cuts.
That is why an MP3 on the frequency screen often drops off like a cliff somewhere around 16 – 20 kHz.
A FLAC keeps sloping on above that, as long as the original had sound up there.

A high-resolution FLAC at 96 kHz can hold up to 48 kHz, but this tool will not show anything above 24 kHz.
The browser resamples to the device’s rate while decoding, and that is where the top part disappears.

Nothing above 0 dB survives

WAV 16/24-bit, FLAC and MP3 are integer formats with no room for values above 1.
Only 32-bit float WAV can hold them, and playback clips them anyway.

This tool presses every result back into -1 to 1.
So the red lamp on the meter does not mean “went over” — it means “hit the ceiling and clipped”.

Long jobs show a screen

Saving ten minutes as FLAC takes a few seconds.
While it runs, a cover appears with the progress on it. Encoding hands the screen back regularly, so the tab never freezes.

Quick jobs get no cover at all — it would only flash and help nobody.

Tools that go well with this

To put a title, artist or album on the file you just edited, use the Audio Tag Editor.
It opens a whole folder so you can work through several tracks at once, cover art included.

To turn a recording into text, there is Extract Text from Audio Files.
Trimming the silence and applying a low cut here first makes the recognition noticeably better.

For the other direction — text into sound — see Text to Speech.

Open the app — Sound Editor