Commit Graph
51 Commits
Author SHA1 Message Date
jonsd 4a670d0f57 [1.47.08]
Add API function: espeak_TextToPhonemes().


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@349 d46cf337-b52f-0410-862d-fd96e6ae7743
2013-04-26 22:33:46 +00:00
jonsd 271448af9c [1.47.07b]
Reinstate language "az" (Azerbaijani) as a test voice.
Language changes: ga, hy, pt, sk.
Generate character names for subscript and superscript letters and digits.
 

git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@347 d46cf337-b52f-0410-862d-fd96e6ae7743
2013-04-25 21:28:32 +00:00
jonsd 83bc87a000 [1.46.40]
Command line option --ipa can have option to include Tie or ZWJ characters to disabmiguate multi-letter phoneme names.
Recognize and ignore UTF8-BOM byte sequence at the start of phoneme definition files.
Languages changes: ta, nl, pt.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@306 d46cf337-b52f-0410-862d-fd96e6ae7743
2013-03-03 12:27:43 +00:00
jonsd 9172b74343 [1.46.36]
espeakedit: Prosody window now shows the FMT() or WAV() filename
and the standard length of the selected phoneme.

Added the ability to produce speech at different sample rates.
To use rates other than the default 22050Hz, the phoneme data must
be recompiled.  This needs the "sox" program to be available.
(sox.sourceforge.net).

espeakedit: Added menu option to compile the phoneme data at a
specified sample rate (rather than the default 22050Hz).

phondata: Includes the value of the sample rate at which the data was compiled.

Language changes: pt.



git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@302 d46cf337-b52f-0410-862d-fd96e6ae7743
2013-02-20 13:58:44 +00:00
jonsd 62e163701b [1.46.35]
Added error detection in espeak_Synchronize().
Compile Phonemes: fixed resampling of WAV files to eSpeak's sample rate (needs 'sox').
Language changes: pt, en, fa.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@301 d46cf337-b52f-0410-862d-fd96e6ae7743
2013-02-14 22:23:32 +00:00
jonsd 4d64bf10a1 [1.46.15]
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@280 d46cf337-b52f-0410-862d-fd96e6ae7743
2012-04-12 00:12:09 +00:00
jonsd 5513c61919 [1.46.02] release version
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@279 d46cf337-b52f-0410-862d-fd96e6ae7743
2012-01-06 17:39:50 +00:00
jonsd d18532991a [1.45.45]
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
2011-10-07 12:47:46 +00:00
jonsd 9e73010621 [1.45.43]
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
2011-09-16 20:21:50 +00:00
jonsd b9611e1fb6 [1.45.37]
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
2011-08-09 17:49:17 +00:00
jonsd fc0bd7fe79 [1.44.42]
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
2011-03-13 13:30:04 +00:00
jonsd b89d8bde63 [1.44.18]
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
2010-12-03 17:42:02 +00:00
jonsd 3bf61040b9 [1.43.52]
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
2010-07-05 09:01:28 +00:00
jonsd a9fedd94db [1.43.48]
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
2010-06-28 15:50:12 +00:00
jonsd aaa5d61737 [1.43.02 release]
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
2010-03-09 00:31:31 +00:00
jonsd 2698461aa4 [1.42.42]
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
2010-02-13 11:14:41 +00:00
jonsd e404310b8f [1.42.02]
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@231 d46cf337-b52f-0410-862d-fd96e6ae7743
2009-11-30 13:54:30 +00:00
jonsd 0fc12016fa [1.40.21]
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
2009-05-29 11:48:39 +00:00
jonsd 396c1af678 [1.40.09]
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
2009-03-11 13:39:31 +00:00
jonsd 7758b77459 [1.39.42]
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
2008-12-17 12:17:53 +00:00
jonsd b053a790df Program restructure and tidy-up.
Change Translator from Class to Struct, so avoiding use of Classes in eSpeak.
Make more functions and variables "extern".


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@209 d46cf337-b52f-0410-862d-fd96e6ae7743
2008-12-13 10:54:41 +00:00
jonsd f90a4e369e [1.39.36]
*_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
2008-12-03 16:57:41 +00:00
jonsd 04fa12b60c [1.39.29]
Allow combining accent characters inside a word (don't cause the word to be spelled).
Add command line options:  --path    --phonout


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@204 d46cf337-b52f-0410-862d-fd96e6ae7743
2008-11-23 13:46:27 +00:00
jonsd 1150d1d8da [1.39.28]
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
2008-11-22 22:25:29 +00:00
jonsd 75970b147a [1.39.18]
*_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
2008-11-07 19:43:53 +00:00
jonsd a7bb7cb6b4 [1.39.04]
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
2008-09-20 01:02:37 +00:00
jonsd 2524376f0f [1.36]
espeak_Key(key_name)  If key_name is a single character, it speaks the character name. Otherwise it speaks key_name as a text string.  This is the same behaviour as <say-as interpret-as="tts:key">
Fix: SAPI5 was restricted to 360 wmp.  Now the top speed (390 wpm) is allowed.
Fix error in phoneme translation data for mbrola "cr1" Croation voice.
*_list files: Allow word groups which have no phoneme translation, so that just attributes can be set. The words are considered as a single hyphenated word.
Fix: $textmode in *_list files, allow replacement by a word which is also translated in the *_list file.
lang=pl: many additions to pl_rules, pl_list


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@165 d46cf337-b52f-0410-862d-fd96e6ae7743
2008-03-09 22:52:22 +00:00
jonsd e5ada07055 [1.31.06]
espeakEVENT_PHONEME, fix audio position of vowel when it follows a voiced consonant.
Ensure enough space in the event list when espeak_Initialize() is called with a small buffer size.
Tone languages: set the final stressed syllable to stress=7 so that it can be longer.
lang=zh: adjust vowels


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@136 d46cf337-b52f-0410-862d-fd96e6ae7743
2008-02-05 17:03:06 +00:00
jonsd ee4cb049f5 Fixed <say-as interpret-as="tts:key> to speak all single characters, and ignore _ and - after an alphabetic character.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@123 d46cf337-b52f-0410-862d-fd96e6ae7743
2008-01-14 15:45:50 +00:00
jonsd 18a4e534e2 git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@122 d46cf337-b52f-0410-862d-fd96e6ae7743 2008-01-14 02:34:54 +00:00
jonsd dd9fd5f27a [1.30.05]
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
2008-01-11 00:36:01 +00:00
jonsd af575bc1db [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
2008-01-07 20:06:32 +00:00
jonsd dc09dd11f1 [1.30] Add option for a pause between words: command option -g or espeak_SetParameter(espeak_WORDGAP)
Add different intonation styles (attribute "intonation"  in voices files).


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@114 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-12-31 15:56:11 +00:00
jonsd 531de957cd [1.29.15] Fix compiler warning, conversion from string constant to 'char *'.
espeakedit: Change compile_report file to include the phoneme name as well as phoneme table which uses each data file.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@95 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-11-01 19:09:27 +00:00
jonsd 40d4adadbf [1.29.02] lang=af: updated af_rules and af_dict
Changes to voice selection code to accept  voice+variant  voice names in SSML tags.
Changes to voice change code to use function DoVoiceChange().
lang=pt: Don't reduce phoneme [&~] to the more open [&] in unstressed syllables.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@83 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-09-10 10:04:14 +00:00
jonsd 5019e65842 [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
2007-08-17 12:58:34 +00:00
jonsd d4ff77a7d5 [1.28.04] Don't join [v][z] to a liquid [l][r][w][j] across a word boundary.
Changes voice variant file names in espeak_data/voices/!v  from !variant12 etc to !varnt12  for DOS 8 character filename limit.
Use a separate phoneme translation file for Swedish voice mbrola "sw2".
Updates languages dictionaries "af", "sv"


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@73 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-08-15 16:30:47 +00:00
jonsd 810fb2404d [1.28.03] Added macro in speech.h for max. length of the espeak-data path.
Added language: "bs" Bosnian.
Fix to speak_lib.h for Windows dll version.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@69 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-07-31 09:17:13 +00:00
jonsd 0def252307 [1.27.09] Fix for --punct option when used with <say-as>.
lang=hu, shorten "ll". Test: remove differences in vowel lengths depending on the following phoneme.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@64 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-07-12 21:39:42 +00:00
jonsd 0c3b856173 [1.27.07] Fixed crash when espeak_Initialize() is called after espeak_Terminate()
espeakedit: setlocale(LC_NUMERIC,"C") before opening spectrum.dat file.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@62 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-07-09 11:08:12 +00:00
jonsd 3303246b80 [1.27.03] Windows, look for env variable ESPEAK_DATA_PATH.
espeakedit, fix crash in Compile_phoneme_data when there is no voices directory.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@58 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-07-03 11:32:43 +00:00
jonsd 05aeea7858 [1.27] Only keep one primary stress when adding prefixes.
Add stress_rule=4, altepenultimate stress.
Change license to GPL version 3.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@56 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-06-30 12:31:21 +00:00
jonsd 5414063759 [1.26.10] Lengthen phoneme [n] slightly.
Internationalization of Windows espeak and espeakedit installers.

git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@54 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-06-23 16:47:37 +00:00
jonsd 6a325e7781 [1.26.06] Fixed check for dot in abbreviations, for multibyte characters.
Defined a Revision number macro in speak_lib.h for interface changes.
Changes to formant rate smoothing so that it's proportional to frequency.
Add phoneme translations for mbrola "it3" "it4" Italian voices.
Added rule in *_rules files for "word starts with capital letter".


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@49 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-06-18 12:12:25 +00:00
jonsd e35e573490 [1.26.01 Add "options" parameter to espeak_Initialize.
Add callback event: espeakEVENT_PHONEME


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@39 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-06-08 13:37:07 +00:00
jonsd 97b217c26a [1.25.15] Callback in AUDIO_OUTPUT_PLAYBACK mode gives a zero-terminated list of events.
espeak_SetSynthCallback() can be called either before or after espeak_Initialize().


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@31 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-06-01 18:00:19 +00:00
jonsd 42303257fd Fix indentation.
git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@24 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-05-25 14:51:04 +00:00
jonsd 863f1f1048 [1.25.08] Fix to uft-8 recognizer.
lang=hu, set no secondary stress; [e:] [E] are closer, 
Don't consider mbrola voices during voice selection.
Fix voice variant not being set from SSML.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@23 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-05-25 09:58:46 +00:00
jonsd ae4ae76802 [1.25.04] Windows, look in Registry to find location of dictsource.
Add lang=is Icelandic.
Adopt Phoneme [R] from experimental Croatian [R2].
lang=hu, add vowel_pause.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@20 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-05-23 10:34:28 +00:00
jonsd 2a5c9b6748 Lang=fr change to phonemes [o] [O] [A~] [O~] [R]
Added new phonemes [s.] and [z.] (as common phonemes), use in Lang=ru, Lang=sv, Lang=hi
Remake WAV files for [s;] and [z;] phonemes.
espeak_Terminate(), set pointers to NULL after free().
espeak_Initialize(), returns EE_INTERNAL_ERROR (-1) if fails to allocate memory.
Change to the default tone setting (array: tone_points in voices.cpp).


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@5 d46cf337-b52f-0410-862d-fd96e6ae7743
2007-05-08 08:02:15 +00:00