Two questions from the same forum, ten years apart. In 2007 someone asks "what techniques or how do you maximise ledgibility when using a vocoder or talkbox". In 2017 someone else is "looking for a vocoder that would keep my enunciation intelligible".

The first gets tips with no cause behind them: mix the sibilants back in above 8 kHz, use a brighter carrier. The second gets a shopping list.

Neither gets the mechanism, and the mechanism decides everything. So here it is in three lines, in the order that matters.

  • Your consonants are the problem, not your vowels. A vocoder is very good at vowels and structurally bad at consonants, and consonants are what tell words apart.
  • Your envelope followers are throwing away the words. A slow release is a lowpass filter sitting exactly on the modulation rates that carry speech.
  • Your carrier has holes in it. The synthesis bank can only turn up energy that is already there.

Band count is not on the list. It is the first thing people buy and close to the last thing that matters.

If you have not read the source-filter piece, that is the background: a voice is a source going through a filter, and the two are independent. This article is about what happens when you try to give that filter to a different source.

What a vocoder actually transmits

Strip away the presets and a vocoder is three blocks.

Apple's description of the EVOC 20 is as clean as any: the analysis input "passes through the analysis filter bank, where it is divided into bands", then "an envelope follower is coupled to each filter band", and those control signals "are then sent to the synthesis filter bank, where they control the levels of the corresponding synthesis filter bands."

That is the whole device. Measure how loud your voice is in each band. Apply those loudnesses to the same bands of another sound.

Notice what crosses from your voice to the carrier: a handful of numbers, updated slowly. Not your pitch. Not your noise. Not your timing, except as far as those numbers can move. Homer Dudley built the first one at Bell Labs to squeeze speech down a telephone line, and the whole point was that you could throw away almost all of it. A vocoder is a lossy codec from 1939 that we kept because it sounded good.

So the question is never "is my vocoder good enough". It is "does what survives the crossing still contain the words".

Why band count is the wrong lever

The received wisdom is stated plainly in Sound On Sound's review of the Moog Spectravox: "Crudely, the more bands a vocoder has the more intelligibly speech and other articulate signals will be rendered when used as a program input: some digital vocoders offers hundreds of bands."

It is the intuitive answer. More bands, finer picture of your voice, clearer words. And it is close to irrelevant in the range where real vocoders live.

We know this because speech researchers ran the experiment properly. Noise-vocoded speech, developed by Bob Shannon's group in 1995 to simulate what a cochlear implant delivers, cuts speech into a small number of bands and replaces each one with noise carrying only that band's envelope. It is a vocoder with the worst carrier imaginable. The demonstration page from the MRC Cognition and Brain Sciences Unit in Cambridge puts the result in one sentence: "sentences synthesised with fewer than 4 bands are extremely difficult to understand. Sentences synthesised with 10 or more bands can be readily understood with very little practice."

Ten. With noise as the carrier and nothing else going for it.

Your vocoder has at least sixteen. The Spectravox has ten and Sound On Sound still found that "intelligibility of speech or singing is very poor indeed". Something other than band count is doing the damage, and going from 20 bands to 64 will not touch it.

There is a real difference between 8 bands and 20. There is almost none between 20 and 200, and what difference there is shows up as tone, not as words.

Culprit 1: consonants do not survive being measured in bands

Vowels are periodic, loud, and slow. A vowel holds still for 100 ms or more and has clear peaks, so a bank of envelope followers describes one accurately. This is why every vocoder you have ever heard does vowels beautifully.

Consonants are none of those things, and they come in two flavours that break in different ways.

Fricatives are turbulent airflow. Allard Jongman's survey of fricative phonetics describes them as "a turbulent airflow produced by a severe but not complete constriction" of the vocal tract. There is no pitch in there at all, just noise with a shape.

Two facts about that noise decide the whole problem.

First, it sits high. Jongman gives /s/ and /z/ a primary spectral peak "around 4 to 5 kHz", with /ʃ/ and /ʒ/ lower, "around 2.5-3 kHz". Now look at where a classic vocoder stops measuring. The Spectravox's ten bands sit at 230, 320, 560, 830, 1200, 1700, 2300, 3200, 4500 and 5400 Hz. The information that distinguishes an s lands in the top one or two bands, at the very edge of the analysis, and above that edge there is nothing at all.

Second, the quiet ones are much quieter. Jongman again: sibilant /s/ and /ʃ/ have "a substantially greater (10-15 dB) amplitude than non-sibilant /f, θ/". So f and th are already 10 to 15 dB down on s before anything is processed. In a band whose level is being tracked and reapplied, that is the difference between a consonant and nothing.

Plosives are worse, and they break for a different reason. A p, t or k is a silence, then a burst a few milliseconds long, then the way the formants bend into the next vowel. Almost none of that is a band level. It is timing, and timing is the next culprit.

This is why every vocoder that takes speech seriously has a separate path for unvoiced sounds, instead of trying to push them through the filter bank. Logic's EVOC 20 has U/V detection, where a Sensitivity knob determines "how responsive U/V detection is", and a Mode menu chooses "the sound source used to replace the unvoiced content in the input signal" out of Noise, Noise plus Synth, or Blend. The Spectravox does it in hardware: "white noise replaces the Carrier signal fed to filter bands 9 and 10 when they're triggered by fricatives, sibilance and other 'unvoiced' elements in the Program signal." Waves OVox has a sibilance control that allows "unpitched sounds such as sibilance to be passed unprocessed, to improve intelligibility".

Three different companies, three different implementations, one shared admission: the filter bank cannot carry consonants, so we route around it.

Which gives you the single most useful trick in this article, and it works on any vocoder ever made, including one with no unvoiced path at all. High-pass a copy of your dry vocal at around 4 kHz and mix it in underneath the vocoder. You are not adding brightness. You are putting back the band where the consonants live, unprocessed, because that band was never going to make it through.

That is the cause behind "mix the sibilants back in above 8 kHz". Now you know why, and why 4 kHz is usually a better place to start.

Culprit 2: the envelope followers are a lowpass on your diction

This is the part almost nobody says out loud, and it is the one with real numbers.

An envelope follower is a rectifier followed by a smoother. That smoother, with a release time constant, is a lowpass filter applied to the modulation. A one-pole smoother with time constant τ has a corner frequency of 1 / (2πτ). Put numbers in it:

  • Release time constant 100 ms, corner at about 1.6 Hz.
  • Release 30 ms, corner at about 5.3 Hz.
  • Release 10 ms, corner at about 16 Hz.

Now compare that to the modulation rates that actually carry speech. The Speech Transmission Index, the standard measure of intelligibility in a room, is built on the modulation transfer function, which "describes to what extent the modulation m is transferred from source to receiver, as a function of the modulation frequency F", and it evaluates the range 0.63 to 12.5 Hz. That range is not arbitrary. It is where syllables and phonemes live.

Chart on a logarithmic modulation frequency axis from 0.5 to 25 Hz. A shaded band marks the speech intelligibility range from 0.63 to 12.5 Hz. Three bars show what each release setting lets through: 100 ms stops at 1.6 Hz and covers almost none of the band, 30 ms stops at 5.3 Hz and covers about half, 10 ms stops at 16 Hz and covers all of it
Release time as a lowpass on the modulation. The band is where the words are. Click for full size.

Put the two together. A vocoder set to a 100 ms release is passing modulation up to 1.6 Hz. It is deleting nearly the entire band that carries the words, and keeping only the slow swell of the phrase. That is precisely the sound people describe as smooth, lush, and completely unintelligible.

Set the release to 10 ms and you are passing the whole intelligibility range. It will sound grittier and less flattering, and you will understand it.

One caveat on the numbers. Not every plugin labels release as a time constant. Many show a 10 to 90 percent rise time, which is about 2.2 times longer, so a displayed 100 ms can mean a corner nearer 3.5 Hz than 1.6. The order of magnitude does not move, and neither does the conclusion.

Attack matters for the same reason, and it hits plosives hardest. The burst in a t is a few milliseconds. An attack slower than that does not soften the t, it removes it.

If your vocoder has one control worth automating, it is release. Fast for the verse where the words matter, slow for the pad section where they do not.

Culprit 3: your carrier has nothing to turn up

The synthesis filter bank does not create anything. It is a set of gain cells applied to whatever you feed it. If the carrier has no energy at 3 kHz, then band 3 kHz of your voice gets multiplied by nothing and you hear silence there.

This is why the advice is always some version of harmonically rich. Sound On Sound's OVox review asks for a carrier "harmonically rich and fairly consistent in level, but other than that pretty much anything goes", and the Spectravox review specifies "a harmonically rich signal like a pulse-wave tone".

Four practical consequences that nobody spells out.

A sine is the worst possible carrier. It has energy at one frequency. One band works, the rest are muted. A triangle is barely better.

Play low. Harmonics of a low note are closely spaced, so every band finds something to turn up. Play the same saw two octaves higher and the harmonics spread out, leaving gaps between them in the upper bands, which is exactly where your consonants were already struggling.

Do not filter the carrier. A lowpass on the synth patch you are using as a carrier is a mute switch on the top half of the vocoder, and the top half is where intelligibility lives. Filter after the vocoder if you want it darker.

Do not stop playing. A vocoder is silent when the carrier is silent, no matter how well you enunciate. Legato, held chords, and no gaps between notes on the words that matter. This is the one that makes people think their vocoder is broken.

A carrier that fixes all four at once: a detuned saw or pulse stack, played low and legato, unfiltered, with a touch of noise mixed in to fill the top. The noise is what gives the fricatives something to modulate.

What to actually do, in order

  1. Fix the carrier. Rich waveform, low register, legato, no lowpass, a little noise on top. This costs nothing and is usually the biggest single improvement.
  2. Drop the release. Aim for something in the 5 to 20 ms range on the vocal bands. If your plugin gives you one number, this is the one to move.
  3. Put the consonants back. Use the unvoiced or sibilance path if there is one. If there is not, high-pass a copy of the dry vocal around 4 kHz and mix it under the vocoder.
  4. Perform for the device. Slow down, over-articulate, and rewrite the line if it is full of plosives. Vocoders reward diction that sounds silly in the room.
  5. Then, and only then, think about bands. If you are above 16 and still unintelligible, the bands were never the problem.

If you want to hear the whole argument in thirty seconds: put a vocoder on a spoken phrase with a sine as the carrier and a 200 ms release. Then switch the carrier to a low saw and bring the release down to 10 ms. Nothing about the band count changed.

Where this leaves the tools

Once you have the mechanism, the tool categories separate cleanly.

A talkbox is more intelligible than a vocoder for a reason that has nothing to do with quality. The filtering is done by your actual mouth, continuously, with no bands and no envelope followers in the path. Nothing is being quantised. You pay for it with a tube in your mouth and a signal chain that leaks into every microphone in the room.

A vocoder needs two inputs and a real voice. It transfers band levels. Everything above applies.

A formant filter needs one input and no voice at all. It imposes resonances you choose, which is the imposing side of operation 3 in the previous article. It cannot make anything say words, because there are no words going into it. What it can do is make material that never had a vowel sound like it has one, which is the case a vocoder handles badly and a talkbox cannot handle at all.

That last category is what I build. Vowel Blender is a formant filter: 10 vowels, 4 formants, 7 voice models, and you move through the vowel space as a gesture rather than typing frequencies. It will not make anyone's diction clearer, and I would not sell it as a vocoder replacement. Two of its controls are relevant to this article for a different reason: Breath adds "a noise component shaped by the same vowel filter", which is the fricative problem solved from the other end, and the envelope follower lets the input's own level drive the vowel, which is the talkbox gesture without the tube. The manual has the routing, and the product page has audio.

Frequently asked questions

Why are the words in my vocoder unintelligible?
Because a vocoder only transmits how loud your voice is in each band. Consonants are the part of speech that a band level cannot describe: fricatives are noise with no pitch, plosives are bursts a few milliseconds long. Vowels survive the crossing, consonants do not, and consonants are what tell words apart.

How many bands does a vocoder need to be intelligible?
Fewer than you would think. Research on noise-vocoded speech shows that fewer than four bands is extremely difficult to understand, and ten or more can be readily understood with very little practice. Past that, extra bands change the tone rather than the intelligibility.

What is the best carrier signal for a vocoder?
Something harmonically rich and steady in level: a saw or a pulse, played low and legato, not lowpassed. The synthesis bank can only turn up energy the carrier already has, so any gap in the carrier spectrum is a band where your voice goes silent. A sine is the worst possible choice.

Why do the s and t sounds disappear in a vocoder?
The main peak of an s sits around 4 to 5 kHz, at or above the top band of a classic ten band vocoder. And f and th are 10 to 15 dB quieter than s and sh, so they fall below the level where the envelope followers do anything. That is why serious vocoders have a separate noise path for unvoiced sounds.

Do faster attack and release times make a vocoder clearer?
Yes, and it is the most underrated control on the panel. A one pole release with a 100 ms time constant only passes modulation up to about 1.6 Hz, while speech intelligibility lives up to roughly 12.5 Hz. A 10 ms release reaches about 16 Hz and keeps it.

Is a vocoder the same as a talkbox?
No. A talkbox lets your real mouth filter the carrier, so nothing is quantised into bands, which is why it is usually more intelligible. A vocoder measures your voice in a fixed number of bands and reapplies those levels electronically.

Is a formant filter a vocoder?
No. A vocoder needs a real voice as one of its two inputs. A formant filter imposes vowel resonances you choose onto a single input. It can make a sound vowel-like, but it cannot make it say words.

Sources

Joy to use, joy to hear.

Ben, UB DSP