Cutting filler words without flattening the delivery
Filler word removal is the feature every transcript-based editor advertises, and the demo always looks the same: a paragraph of text with the ums highlighted, one click, they disappear. Forty-one fillers removed. Very satisfying.
Then you listen to the result and the person sounds slightly wrong in a way that is hard to name.
Detection is the easy half
Finding fillers is close to solved. They are a small, closed vocabulary - um, uh, er, and depending on your settings the discourse markers like, you know, I mean, sort of. A transcript with word-level timings gives you their positions directly.
The problem is that a filler is not just a sound. It occupies time, and the time it occupies is doing work.
When someone says "the thing is, um, we never tested it", the um is a pause with a noise in it. Remove the sound and keep nothing in its place and the sentence becomes "the thing is we never tested it" delivered at a speed no human uses before a significant admission. The words are right. The rhythm says something different from what the speaker meant.
Do that forty-one times across a video and the cumulative effect is someone speaking with an evenness that reads, to a listener who cannot say why, as synthetic.
It is a timing problem
The fix is not better detection. It is deciding what to leave behind.
A filler removal that sounds natural is really three decisions per instance:
How much silence to keep. Not zero. Usually not the full original duration either, because part of that duration was the speaker deciding what to say. A proportion of the original gap, rather than a fixed value, tends to survive contact with real speech better - long hesitations were long for a reason.
Whether to cut at all. A filler at a genuine rhetorical pause is doing something. A filler in the middle of a fluent clause is noise. These are not the same and treating them identically is what produces the flattened result.
Where exactly to cut. Speech does not have clean boundaries. The um bleeds into the word before and after it, and cutting on the transcript's stated boundary will often clip a consonant. Crossfading over a few milliseconds is the difference between an invisible edit and an audible click.
None of these are hard individually. They are just three more decisions than "delete the highlighted words", and the tools that skip them produce demos that are more impressive than their output.
Why the transcript still helps
This might read as an argument against transcript editing for this task. It is the opposite.
Doing this work on a waveform means finding forty-one small regions by eye and ear, which nobody does, which is why filler words survive in most published video. The transcript is what makes the task tractable at all. It just needs to be the input to a set of timing decisions rather than a list of things to delete.
The related point from transcript-first editing applies here too: the value is not that each edit is faster. It is that a piece of polish which was previously too tedious to do becomes cheap enough to be worth doing properly.
A reasonable default
If you are evaluating tools, the thing to test is not whether filler removal exists. It is what the result sounds like on your own footage, specifically:
- Play the before and after of a passage where you hesitated and meant it
- Listen for clipped word beginnings, which is the most common artefact
- Check whether a long hesitation and a short one are treated differently
Rooster is a Mac editor built around a transcript, with the speech work running locally. It is in active development, so this is a description of the problem we are designing against rather than a claim about a shipped feature. We would rather write down what makes this hard than demo the easy half.