Speak names of characters U+2800 to U+28FF, Braille dot symbols.
Language option to speak numbers which use characters '0' to '9' with the English voice.
Add some more characters to the vowel and consonant lists for Indian languages.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@284 d46cf337-b52f-0410-862d-fd96e6ae7743
Add --version command-line option.
Allow hexadecimal numbers for UTF-8 bytes in rules in *_rules files.
wave_pulse.cpp, ensure wave_close is not called again while waiting.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@278 d46cf337-b52f-0410-862d-fd96e6ae7743
Fixed crash on re-initializing libespeak.
lang=hu, experimental, if the last two words of a clause (before punctuation) both have capital letters, then make the last word unstressed. This is useful for people names, but may be wrong for other cases.
lang=en-us, distinguish phonemes [aI@] and [aI3] (compare "diet", "tired").
lang=de, fix automatic devoicing of word-final 'b', 'd', 'g'.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@276 d46cf337-b52f-0410-862d-fd96e6ae7743
Fixed bug where SSML voice change didn't remember an initially specified Klatt variant.
Removed some unused variables and redundant initializations.
Patch to fix a spike from Klatt function setzeroabc()
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@275 d46cf337-b52f-0410-862d-fd96e6ae7743
Added runtime detection of pulseaudio, with fallback to portaudio if pulse is not running. Use build option "AUDIO=runtime" in the makefile.
Phoneme programs. Added condition "isTranslationGiven" to test whether a phoneme has been specified explicitly for a word in *_list.
*_rules files. Suffix rules are now considered only if there is a previous vowel in the word.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@274 d46cf337-b52f-0410-862d-fd96e6ae7743
Keep the original voice variant across SSML xml:lang changes.
Use the original language sub-type (eg. en-sc) when SSML xml:lang changes to a compatible language.
SSML <emphasis>, increase volume for "strong" and "x-strong".
Fix bug where </emphasis> was ignored at end of clause.
Fix: $dot attribute was ignored for multi-word entries in *_list files.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@269 d46cf337-b52f-0410-862d-fd96e6ae7743
Amplitude changes now apply also to mbrola voices.
"voicing" attribute is now used in mbrola voice files to set the voice loudness.
SSML commands such as <mark> and <prosody> were ignored if they were inside a multiword group (defined in *_list). This is now fixed so that the command is processed at the end of the group.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@267 d46cf337-b52f-0410-862d-fd96e6ae7743
-x command-line option. Fixed possible buffer overflow when writing phoneme output.
Slavic languages, changed behaviour of [v] during voiced/unvoiced propagation.
When looking for a word boundary when breaking long clauses, allow for greater word size (Southern Indian languages have big words 3-byte UTF-8 character codes).
$combine. Don't combine with the nerxt word if it is translated using a different language.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@262 d46cf337-b52f-0410-862d-fd96e6ae7743
lang=Turkish, fix pronunciation of suffixes, fix suffixes after names.
Windows: command option --stdout caused spurious 0x0d bytes to be included in speech output (CR/LF problem).
Fixed crash which could occur when a clause starts with a hyphen.
espeakedit: New input format for Bulgarian lexicon.
lang=de: Fix important pronunciation error (editing error) for "sage".
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@259 d46cf337-b52f-0410-862d-fd96e6ae7743
Phoneme definitions.
New keyword "prevoice", always add murmer before a voiced stop, not only after a vowel.
Fixed bug in nextVowel() condition.
Fixed bug is condition "isRhotic".
Command line options.
On Windows, -- means don't treat following arguments as options.
--help output now should the espeak-data path.
Tools->Lexicon. Redesign Lexicon processing for Russian and Bulgarian.
Numbers. Fixes for Hungarian ordinal numbers.
Fixed bug where double .. was ignored.
Fixed bug in reporting word event lengths in callbacks.
Fixed bug in reporting marker event positions in callbacks, when non-ascii text.
SSML.
Allow single as well as double quotes around strings.
Fix bugs in SSML "prosody rate".
Speed.
Only use Sonic speedups greater than x2.
Use custom eSpeak speed settings when Sonic speedup is used.
Mbrola. Look for Mbrola voice also at /usr/share/mbrola/xx/xx
espeakedit. Try "aplay" and then "play" to play sound.
Languages:
Kannada (kn) now in official release.
Esperanto (eo) change prosody.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@257 d46cf337-b52f-0410-862d-fd96e6ae7743
Change in format of *_dict files. 'Word-boundary' at the start of a rule from *_rules is not implied by a new rule type RULE_PRE_ATSTART.
espeakedit: Improvements to Tools->Process Lexicon->Italian which makes the file dictsource/it_listx.
lang=hu, fixes for ordinal numbers.
Speed-up, add files sonic.cpp, sonic.h
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@255 d46cf337-b52f-0410-862d-fd96e6ae7743
Speed increase. Added the "sonic" routines by Bill Cox to reduce the length of eSpeak's sound output data, so as to make the speaking speed faster.
Ordinal numbers: Some languages (el,es) use the ordinal form of hundreds and tens part of a number, as well as the units part. Added language option NUM2_MULTIPLE_ORDINAL.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@254 d46cf337-b52f-0410-862d-fd96e6ae7743
Fix: crash with very long numbers.
Very long nubers ( > 14 digits) now spoken as individual digits.
Fix: bracket was interfering with recognizing last-word in a clause.
Lang=el fix: all words were spoken as individual letters.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@252 d46cf337-b52f-0410-862d-fd96e6ae7743
Phoneme definitions. Add "equivalents" table to translate phonemes from a foreign language (eg. English) into the equivalant phonemes of this language. This is used when *_rules and *_list files indicate that a word uses pronunciation rules from a different language.
Unpronouncable words can be recognised by rules in *_rule files. This feature is now used for en, de, es.
Lang=ta, hi. Letter-names for combining vowel characters are distinguished from stand-alone vowel characters by a preceding beep.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@251 d46cf337-b52f-0410-862d-fd96e6ae7743
Indicate language changes in IPA phoneme output.
Phoneme definitions FMT(), second parameter is amplitude percentage.
Phoneme definitions CALL(), If phoneme type is not defined, copy the static attributes from the called phoneme.
Unpronouncable word check: stop when an apostrophe is reached.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@250 d46cf337-b52f-0410-862d-fd96e6ae7743
espeakedit --compile also compiles the intonation data
Added feature to produce phonemes as International Phonetic Alphabet.
phoneme definitions: Added "ipa" instruction to specify IPA phoneme name.
When spelling as individual characters, calculate the stress position for each character name.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@249 d46cf337-b52f-0410-862d-fd96e6ae7743
Add mbrowrap.cpp to emulate the mbrola library which is available in Windows, but not on Linux. mbrola voices in command-line espeak and libespeak now call mbrola directly rather than generating phoneme information as text. Mbrola phonemes as text is still available with the new --pho command-line option.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@248 d46cf337-b52f-0410-862d-fd96e6ae7743
Fix: Speak punctuation option also caused text after [[ to be spoken as phoneme codes even if espeakPHONEMES flag is not set.
Speak sequences of letters and dots as individual letters, and don't speak 'dot', eg. "u.s.a."
Don't announce punctuation in the alternative text inside <audio ... </audio>
Vowelcharts, show the positions of multiple FMT() in vowel phonemes definitions.
Phoneme definitions:
New attributes: flag1, flag2, flag3
New attribute: nopause. Prevents the insertion of a short pause when this phoneme starts a word which follows a vowel.
New conditions: isFlag1, isFlag2, isFlag3, isSibilant.
New statement: InsertPhoneme()
Phonemes: improve syllablic [m-] [n-] [N-]
*_rules: add attributes $p_alt .. $p_alt3, $w_alt .. $w_alt3
*_list: add attributes: $sentence, $atstart
klatt synthesizer: implement echo.
espeakedit, Prosody display: Indicate stressed and secondary-stress syllables.
espeakedit: remember window size and position.
Intonation:
New file, 'phsource/intonation' to define 'tunes' which can be used from voice files.
espeakedit: add Compile -> Intonationm data
Speed: Increase range to 80 to 450, with default=175.
Improve speaking at high speeds.
lang=en: Reduce consecutive unstressed syllables to 'diminished' stress, only in unstressed words.
lang=de: Change 'r' phoneme.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@244 d46cf337-b52f-0410-862d-fd96e6ae7743
*_list files: added attribute $sentence.
*_rules files: added attributes $w_alt, $p_alt.
phoneme definitions: added attribute no_pause.
-X command-line option: Show the matching of multiple-word entries in *_list files.
espeakedit: Add menu option to compile the intonation data file (the data is not yet used).
Start language: Bulgarian.
lang=bg (Bulgarian): Add feature in espeakedit to make bg_listx from a lexicon of words which have stress position mark-up.
espeakedit: Change the frame-length field from Spin Control to Text Control to allow better access from screen-readers.
Language options: add an option to the Regressive Voicing option to de-voice the final consonant of words.
Don't speak "dot" if an ellipsis is followed by a dot.
Intonation: change the internal pitch unit to give finer control, and align with the values displayed in the espeakedit Prosody window.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@243 d46cf337-b52f-0410-862d-fd96e6ae7743
Language improvements include Danish rules.
Fixed phoneme [n^] for Klatt synthesizer, was producing noise burst.
espeakedit: Display error details after Compile Dictionary.
espeakedit: Fix: After speaking a word which changes language, Compile
Dictionary may compile the wrong dictionary.
Don't consider multiple spaces as thousands separator (eg. 2 000 )
Lang=Hungarian, don't allow dot as thousands separator.
Lang-Hungarian, Fix suffixes -a, -e, -az, -ez, -azt, -ezt after numbers.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@239 d46cf337-b52f-0410-862d-fd96e6ae7743
Don't recognize space as a thousands separator if it's tab, newline, or multiple spaces.
Don't recognuze space as a thousands separator if not followed by exactly 3 digits.
Unrecognized HTML tags should not add a space (eg. <font> <b> inside a word).
lang=hu: fixes for when numbers are ordinal.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@236 d46cf337-b52f-0410-862d-fd96e6ae7743
Allow .txt release for *_rules and *_list files.
Rules lookup, consider multi-byte characters when calculating matchign points.
Fix bug in Roman Number translation.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@232 d46cf337-b52f-0410-862d-fd96e6ae7743
lang=hu, ordinal number fixes
--punct, changes to intonation of punctuation names.
Add language option: don't stress second part of hyphenated words.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@230 d46cf337-b52f-0410-862d-fd96e6ae7743
*_list: Changed name to $combine (from $alt2) for the attribute which indicates that a word should combine with the next word.
Voices files: Added attribute "speed", which specified a percentage change to the speaking speeds which are used for this voice.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@229 d46cf337-b52f-0410-862d-fd96e6ae7743
lang=it, added dictsource/it_listx with corrections for stress position and open/close vowel type.
Changes to allow compilation on WinCE (Windows Mobile), with notes in platforms/windowsMobile.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@219 d46cf337-b52f-0410-862d-fd96e6ae7743
Changed -b option to include an option for 16 bit character input.
numbers.cpp: Added option for vigesimal number systems for tens+units.
Fixed problems with word-length indications in callback events.
-m option now ignores XML comments.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@216 d46cf337-b52f-0410-862d-fd96e6ae7743
*_list files. Ad feature for ordinal numbers (for some languages).
*_list files. Allow hyphenated word groups to start with a number.
*_list files. Allow "words" of symbols to contain brackets (move check for bracket characters to after the *_list lookup).
--punct option. Fix some unnecessary pauses when speaking punctuation names.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@215 d46cf337-b52f-0410-862d-fd96e6ae7743
Fix lettergroups: Sort items to longest first.
Lang en-us: Use rhotic [3] in place of [@] when [r] follows.
Voice files: add attribute "fast-test" to experiment with faster talking speeds.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@212 d46cf337-b52f-0410-862d-fd96e6ae7743
Languages which use non-Latin alphabets will automatically speak a word of Latin characters as English (or another specified language) without the need for entries in its *_rules file.
synthesize.cpp, SynthOnTimer(): Ensure the sound channel is open if there items still to be spoken, to prevent sound output lock-up.
Reduce warning messages from compilers.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@211 d46cf337-b52f-0410-862d-fd96e6ae7743
*_list files: add attribute $max3 to limit repetitions of a symbol to 3.
-v command option, if the voice-name is not found, lookup using it as a language name.
Windows: allow longer path names for espeak-data.
-m option: Ignore text within <script> and <style> tags.
Reduce default pitch to 80-117.
WavegenCloseSound() check if there remain items to be spoken and re-open the sound channel.
Reduce voicing before voiced plosives.
Corrections to mbrola translation for lang=hi.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@205 d46cf337-b52f-0410-862d-fd96e6ae7743
Added experimental Klatt synthesizer.
Klatt phonemes use a new format of phoneme data.
espeakedit, new dialog fields and layout for Klatt phonemes.
Added Klatt versions of English phonemes.
Fixed some compilation warnings on Windows.
Fixed bug in Lettergroups > L10
Increased amplitude of harmonics below F1 peak, to increase bass.
Allow 5 (up from 4) pairs of values in "tone" command in voice files.
Default to slightly wider pk_shape1.
If words are separated by hyphens, don't add word-gap, and don't pass new-word flag onto phoneme processing.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@203 d46cf337-b52f-0410-862d-fd96e6ae7743
Added languages: ca (Catalan) lv (Latvian)
Numbers: allow for languages which have numbers for 100,000 and (or not) 10,000,000 (eg. hi, sw)
Phoneme [ts] new files in phsource/ustop
*_rules: fix crash for lettergroups numbers greater than 10, and better error reporting.
Languages: eo, jbo: adjust syllable lengths.
Language: en, fix "1st, 2nd, 3rd, 5th". But a full ordinal number feature is still needed.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@202 d46cf337-b52f-0410-862d-fd96e6ae7743
*_list files, allow words in all-capitals which imply $allcaps attribute.
Voices: Look for voices also in espeak-data/voices/test.
lang=eo: Adjust syllable lengths. Use break between word (word_gap=1).
wave.cpp: Fixes to copyBuffer(), wave_write().
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@201 d46cf337-b52f-0410-862d-fd96e6ae7743
*_list Allow Hyphens in multi-word entries (aa-bb). This will only match a pair of words which are hyphenated.
*_list Fix abbreviations of the form a.b.cde
Recognise Armenian punctuation, allow and process Armenian punctuation inside words (affects intonation type, and marks the focus word of the clause).
Mbrola: add a delay so that SAPI5 events better follow the speaking.
Mbrola: generate phoneme events, and hence SAPI5 viseme events.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@200 d46cf337-b52f-0410-862d-fd96e6ae7743
Reduce pause when announcing punctuation.
Fix crash for list of numbers in some languages, eg: "22,23,24,25,26,27..."
Recognise XLL (etc) is not a valid Roman number.
espeak_Cancel(), reset punctuation echo.
Don't permanently change option_phoneme_input after using [[ ]] internally.
lang=af: Only recognise word "'n" as [@] when followed by a space.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@193 d46cf337-b52f-0410-862d-fd96e6ae7743