Voice synthesizer
Vox (now using the public moniker Вокс) is a singing-voice synthesizer based on vocal tract modeling, rather than on spectral vocoding using a hidden Markov model (HMM) or deep neural nets with AI (DNN). This makes it more versatile (and probably less fake-human) than say, Nagoya Institute of Technology’s free Sinsy, Yamaha’s Vocaloid or Dreamtonic’s Synthesizer V.
Similar to Sinsy, and unlike the very slick, GUI-based methods of the other two systems, Vox uses plain text to directly encode all details of the voice, which can vary note-by-note if desired. This approach is familiar to programmers, perhaps less so to music producers, but at the very least offers the accessiblity & manipulation provided by text editors. In addition, Vox has a large range of phonemes which can be combined to recreate any language (or accent) which uses them. So instead of singing words, it strings sounds together in a manner more purely musical and less linguistically bound than other systems.
Scoring
At this time, users can play with the system via the Sandbox below. Each line of plain text encodes a note, with the format:
pitch notelength weight word *mods ;comment
Anything after semicolon ; is ignored. Pitch can be either in Hz or Scientific Pitch Notation (so middle C is either 60 or C4). Note length is a number or fractions of beats, where beat duration is given by the BPM (don’t forget that). Weight is a loudness from 0 to 10. The word for each note is a sequence of phonemes, spelt according to the list below and without spaces. A star * is the prefix for an optional modifier. Example:
G3 0.8 5 ahmee *fAb0 ;perhaps "army"
Voice modifiers
Phonemes
You may like to check my summary of the IPA International Phonetic Alphabet. In any case, descriptions of phonemes may differ from our familiar dialect and usage, especially vowels, so by all means experiment with alternatives. The hyphen is necessary where ambiguous combinations may arise, for example mishap [mɪs.hæp] would need mis-haep and not mishaep, which would be parsed as [mɪ.ʃæp].
| Letters used | IPA | Sounds like |
|---|---|---|
| ee | i | ee in feet |
| y | j | y in yes |
| eu | y | u in Fr. lune |
| i | ɪ | i in fit |
| e | e | e in men |
| E | ɛ | ea in bear |
| ae | æ | a in man |
| a | a | a in It. Napoli |
| V | ʌ | u in but |
| ah | ɑ | a in father |
| aw | ɔ | aw in awe |
| / | ɜ | er in tern |
| uh | ə | u in purr |
| ' | ə | a in parole |
| U | ʉ | oo in moon |
| W | ɯ | u in J. kudasai |
| o | o | o in off |
| u | ʊ | u in put |
| oo | u | u in It. Turino |
| w | w | w in wonder |
| l | l | l in love |
| r | ɹ | r in run |
| R | ɹ: | r in pirate [arrr] |
| . | (...) | silence, pause |
| Letters used | IPA | Sounds like |
|---|---|---|
| m | m | m in mother |
| M | m: | m in hmmm |
| p | p | p in push |
| b | b | b in bush |
| f | f | f in few |
| v | v | v in view |
| n | n | n in nice |
| s | s | s in sue |
| z | z | z in zoo |
| sh | ʃ | sh in shore |
| ch | tʃ | ch in chore |
| zh | ʒ | s in leisure |
| j | dʒ | dg in ledger |
| ng | ŋ | ng in sing |
| h | h | h in hello |
| - | . | (separates letters) |
Sandbox
Please note that, while the web interface is more-or-less complete, not all phonemes are available yet, and many of the ones that are, are not quite finished. Enquiries or encouragement can be sent to editor@skyknowledge.com. When this yellow sign goes, it’s complete :)
Report
Postscript
Вокс is based on my earlier program Vox which was written in Java. I rewrote it in C++, which gave me the speed and resolution of coding detail I required. Also, what seemed like an impossible task (solving programming problems which had caused me to abandon earlier versions, let alone bringing the system online for public access) was made easier under the private tutelage of ChatGPT. I’m using the Russian moniker (pronounced [voks]) or Latin BOKC to avoid clashing with other vocal products out there. New artwork by Stephen Horvath.
※