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
Fix: -g command option not working on Windows.
Fix: Text position value in events was limited to 16 bits.
[1.40.15]
espeakedit: Change formant dialog to include Klatt parameters.
espeakedit: Change the format of formant data to include Klatt parameters.
espeakedit: Fix the frequency of F7,F8 at 7800Hz,9000Hz.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@220 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
Windows SAPI5 installer: Remove the limit on the number of voices specified for inclusion in the Windows Registry.
voices.cpp: Widen formant peaks F3 F4 F5.
Reduce slightly the difference in amplitude between stressed and unstressed vowels.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@208 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
Fix SSML <prosody rate> to allow the maximum rate of 390 wpm.
Fixes to the generation of the dict_phonemes report.
Lang=en-n adjust vowel sounds.
Compile phonemes: automatically assume vowel-break marker in second keyframe of a vowel file if none is set.
Set letter group 'A' to "vowel letters only" for Indic alphabets.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@195 d46cf337-b52f-0410-862d-fd96e6ae7743
SSML: <voice>, if a language is specified, forget previously selected voice name.
Voice selection, convert language name to lower-case.
espeak-data/mbrola_ph files, allow use by both little and big-endian processors.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@149 d46cf337-b52f-0410-862d-fd96e6ae7743
intonation: changed comma intonation for intonation type 2.
intonation: adjusted exclamation (make the nuclear syllable emphasized).
intonation: split intonation table into body and nucleus parts.
lang-zh: only length tones 2,3 at end of sentence.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@137 d46cf337-b52f-0410-862d-fd96e6ae7743
<say-as tts:char>, if a character name is not defined, say its English name.
phoneme tables, added beforenotvowel2 attribure for lang=tr
lang=tr: initial draft
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@135 d46cf337-b52f-0410-862d-fd96e6ae7743
Remove pause before <say-as> if it's at the beginning of a sentence.
Added --split=<minutes> command-line option. Splits output WAV file (at sentence boundaries).
Fix: espeakEVENT_SENTENCE events were missing.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@121 d46cf337-b52f-0410-862d-fd96e6ae7743
Fix an error where vowels start too loud (too strong attack).
Added command-line option --compile-debug, which is like --compile but it includes source line information from the *_rules file, which is displayed with the -X option.
espeakedit: Added Compile->Compile_dictionary(debug),
Fixed <emphasis> which was broken in the previous version(s).
<emphasis> now reduces the previous stressed syllable to secondary stress.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@119 d46cf337-b52f-0410-862d-fd96e6ae7743
[1.30.04] SSML <audio src=""> now works without using a UriCallback() function, and works with the command-line espeak.
Pitch changes for mbrola are now applied over the first 80% of the phoneme, not over the whole length of the phoneme. This seems to give better intonation for mbrola voices.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@118 d46cf337-b52f-0410-862d-fd96e6ae7743
Moved Croatian/Bosnian/Serbian dictionary source data to hbs_rules, hbs_list.
Added data for Ancient Greek voice ("grc").
In voice files, the attribute: word n adds a short pause between words. n = 1 to 4 for increasing pause length.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@103 d46cf337-b52f-0410-862d-fd96e6ae7743
[1.28.07] Changed the format of envelope files (phsource/envelope). These are not text files which contains coordinates which define the envelope.
The compile_phoneme_data operation now produces an image file phsource/envelopes.png which shows the shape of the envelopes.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@78 d46cf337-b52f-0410-862d-fd96e6ae7743
[1.28.05] Changed names of voice variant files (espeak-data/voices/!v).
Moves "wisper" and "croak" into voices/!v.
Voice variants can now be specified as en+wisper, en+f2 (for female 2), etc.
espeak --voices=variant lists the voice variants.
Moves some lines from speech.h into other header files.
Possible fix for data version check on big-endian.
Fixed crash error iin LoadConfig().
Fixed crash in espeakedit: press Tab in enpty Prosody window.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@74 d46cf337-b52f-0410-862d-fd96e6ae7743
[1.27.04] tr_languages: replace_char substitution can do 2->1 and 1->2 characters.
espeakedit: set and save path for master phonemes file.
espeakedit: added delete_phoneme and import_phoneme actions in phoneme files.
espeakedit: improve data in log_espeakedit, include phoneme names.
espeakedit: only write to log_espeakedit for speak from text window, not when playing vowel files.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@59 d46cf337-b52f-0410-862d-fd96e6ae7743
[1.24.12] Produce dictsource/dict_phonemes, a list of which phonemes are used by each language's *_rules and *_list files.
Fix crash with -X option when spelling words (acronyms).
Rules files: added special character X meaning "no vowel until the word boundary". Used for lang=no.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@14 d46cf337-b52f-0410-862d-fd96e6ae7743
Write version_phdata number to phondata file so that the byte order is correct for both little and big-endian processors.
Adjust phoneme [R].
Lang=ru Revert to phonemes [S] and [Z] instead of [s.] and [z.].
Lang=ru Remove rule to give 1st syllable a secondary stress if the second syllable has a primary stress.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@9 d46cf337-b52f-0410-862d-fd96e6ae7743