French text to speech: reading number ranges and intervals aloud
2008-2012, pp. 12-15, ages 40-45, a 3-1 score: the hyphen between two numbers is a trap for a synthetic voice. The table of forms that stumble, and the writing habit that fixes them.
The hyphen is an innocent-looking character that does three different jobs. Between two words, it welds a compound. In front of a number, it can be a minus sign. Between two numbers, it almost always announces a range: in French, "2008-2012" is said "de deux mille huit à deux mille douze" (from two thousand eight to two thousand twelve). A synthetic voice that has not learned to tell these three uses apart reads the same character the same way everywhere, and that is where an otherwise correct reading starts to go wrong on a date, a page range, or a score. The problem is quiet, because a badly read range stays roughly understandable, but it is costly: it tells the ear the voice is not following the meaning.
The table of forms that trip up the voice
| Written form | Expected reading (French) | Common error |
|---|---|---|
| 2008-2012 | de deux mille huit à deux mille douze | "deux mille huit tiret deux mille douze", "deux mille huit moins deux mille douze" |
| pp. 12-15 | pages douze à quinze | "p p douze quinze", "p p douze moins quinze" |
| 40-45 ans | quarante à quarante-cinq ans | "quarante moins quarante-cinq ans" |
| 3-1 (a score) | trois à un | "trois moins un", "trois tiret un" |
| de 5 à 10 | de cinq à dix | (safe form, nothing to fix) |
| 10-12 kg | dix à douze kilos | "dix moins douze kilos" |
| 1990-2000 | de mille neuf cent quatre-vingt-dix à deux mille | "mille neuf cent quatre-vingt-dix moins deux mille" |
| chap. 4-6 | chapitres quatre à six | "chap quatre six" |
Each row is a test you can run in two minutes against any tool, ours included. The right-hand column is not theoretical: these are the readings you actually hear from generic voices that predict pronunciation with no model of what the text means.
Why this is hard for a machine
A neural voice does not understand a range, it predicts its pronunciation from what it has seen. Yet the same character, the hyphen, legitimately separates two numbers in three situations that are not said the same way. In "2008-2012" it is a range, so "à" (to). In "-5 °C" it is a sign, so "moins" (minus). In "quarante-cinq" (forty-five) it is a weld, and the number is read as one block. Nothing in the character itself settles the matter: only the context does, and context is either modelled or guessed.
That is the whole logic of the French text to speech page: what matters happens before any sound comes out, in how the text is recognised and rewritten for the voice. A beautiful voice that is poorly prepared will say "deux mille huit moins deux mille douze" without blinking; an average voice that is well prepared will say "de deux mille huit à deux mille douze". The work is not in the timbre, it is in reading the patterns.
What WeDispatch does with it, without overpromising
The most common ranges (years, pages, age brackets, everyday quantities) are handled by the normalisation applied to every article. That is the floor, and it covers the large majority of what a real text contains.
What remains are the cases that are ambiguous even for a human. "3-1" is a score in a match report, a subtraction in a maths exercise, an article reference elsewhere. No rule guesses right every time, and claiming otherwise would be dishonest. In those cases there are two levers. First, clear writing removes the ambiguity at the source, which we come to just below. Second, for a form that recurs across your content and must be read a certain way, the pronunciation lexicon lets you declare the expected reading once, with nothing to regenerate.
The writing habit that fixes almost everything
The safest form is also the most readable on the page: "de 5 à 10" (from 5 to 10). It leaves no room for doubt, for the machine or for the eye. Writing "de 2008 à 2012" rather than "2008-2012", "pages 12 à 15" rather than "pp. 12-15", already settles the case before it reaches the voice. This is not a constraint imposed by audio: it is good writing, which makes the text clearer for everyone and correct in audio as a bonus.
Where the abbreviated form has to stay (a bibliographic page range, a score, a table), the lexicon takes over for the patterns that recur, and listening to one real article does the rest of the diagnosis. The same principle applies to standalone numbers, which we covered in reading numbers aloud in French, and to dates, another area where punctuation changes everything, covered in reading dates aloud in French text to speech. Taken together, these three points rule out, by ear, most of the voices that read sentences well and stumble the moment a figure carries information.
Give your articles a voice with WeDispatch
This blog is itself voiced by WeDispatch. Curious how it sounds on your content?
Book a demo