Skip to content

Releases: espeak-ng/espeak-ng

1.51

02 Apr 19:43
2e9a5fc
Compare
Choose a tag to compare

new features:

  • Add support for speechPlayer.
  • Add more tests to check the various parts of espeak-ng.
  • Various changes to clean up the codebase (Juho Hiltunen)
  • Remove support for l_length_mods language option
  • Restructure "option brackets" language option to "brackets" and "bracketsAnnounced"
  • Restructure "stressLength" and "stressAdd" language option
  • New Language option: "lowercaseSentence" for ending a sentence if a period is followed by a lower case letter
  • Add voice variants
  • Rename zh to cmn (Mandarin)
  • Rename zhy to yue (Cantonese)
  • cmn (Mandarin) now assumes all latin characters all English text
    Use cmn-latn-pinyin for interpreting latin characters as pinyin
  • Update list of voice varants for Android application
  • Add Chromium extension (guest271314)
  • Replace ieee80.c by a free software implementation (Ulrich Müller)

bug fixes:

  • Fix reading malformed SSML (Christopher Brannon)
  • Fix memory allocation (Christopher Brannon)
  • Fix building and phoneme compilation (John Bowler)
  • Fix build scripts for Android (Peter Vágner, Minas Tirith Citizen)

documentation:

  • Add documentation about voice and language options.
  • Add documentation about dictionary flags.

updated languages:

  • ar (Arabic) -- king-dahmanus
  • ba (Bashkir) -- boracasli98, Valdis Vitolins, Juho Hiltunen
  • cmn (Mandarin) -- Silas S. Brown, Rongcui Dong, Icenowy Zheng, Juho Hiltunen
  • de (German) -- Karl Eick, Henry Krumb
  • el (Modern Greek) -- Reece Dunn (support for variant Greek letter forms)
  • en (English) -- Steven Presser, Ben Talagan
  • eo (Esperanto) -- AlsoScratch
  • eu (Basque) -- agonzalezd
  • fa (Farsi/Persian) -- Shadyar Khodayari
  • ga (Gaelic (Irish)) Chen, Chien-ting
  • grc (Ancient Greek) -- Reece Dunn (support for variant Greek letter forms)
  • hak (Hakka Chinese) -- Juho Hiltunen
  • haw (Hawaiian) -- Juho Hiltunen
  • ka (Georgian) -- Juho Hiltunen
  • kok (Konkani) -- Juho Hiltunen
  • nb (Norwegian Bokmål) -- Juho Hiltunen
  • nci (Classical Nahuatl) -- Juho Hiltunen
  • hy (Armenian) -- tigransimonyan
  • ia (Interlingua) -- nesrad
  • it (Italian) -- Christian Leo
  • ja (Japanese) -- fukuen, Juho Hiltunen
  • jbo (Lojban) -- Juho Hiltunen, xunsku
  • lv (Latvian) -- Valdis Vitolins
  • mi (Māori) -- boracasli98
  • py (Pyash) -- Andrii Logan Zvorygin
  • shn (Shan Tay Yai) -- ronaldaug
  • tr (Turkish) -- boracasli98, SeanTolstoyevski
  • ur (Urdu) -- Ejaz Shah
  • uz (Uzbek) -- boracasli98, Valdis Vitolins, Andiv06
  • yue (Cantonese) -- Andiv06

new languages:

  • be (Belarusian) -- Sergei B
  • chr (Cherokee) -- Michael Conrad
  • cv (Chuvash) -- boracasli98, Valdis Vitolins
  • en-us-nyc (English, New York City) -- Richard Calvi
  • haw (Hawaiian) -- Valdis Vitolins
  • he (Hebrew) -- boracasli98, Valdis Vitolins
  • io (Ido) -- José Miguel López, Valdis Vitolins
  • lb (Luxembourgish) -- Marco Barnig, Valdis Vitolins
  • ltg (Latgalian) -- Valdis Vitolins
  • nog (Nogai) -- boracasli98, Valdis Vitolins
  • piqd (Klingon) -- Valdis Vitolins
  • qu (Quechua) -- Valdis Vitolins
  • qdb (Lang Belta) -- Da Def, Valdis Vitolins
  • qya (Quenya) -- Lucas Werkmeister
  • sjn (Sindarin) -- Lucas Werkmeister
  • smj (Lule Saami) -- Katri Hiovain, Sebastien Le Maguer
  • th (Thai) -- Valdis Vitolins
  • tk (Turkmen) -- boracasli98, Valdis Vitolins
  • ug (Uyghur) -- boracasli98, Valdis Vitolins
  • uk (Ukrainian) -- Valdis Vitolins

1.50

02 Dec 12:34
1.50
Compare
Choose a tag to compare

1.50

  • Add a --disable-rpath option to prevent libtool hardcoding rpaths in the executable.
  • Renamed the hy-arevmda language to hyw, following the 2018-03-30 change to the
    BCP 47 language subtag registry making the newly registered hyw language code the
    preferred value for hy-arevmda. This change keeps support for detecting the
    hy-arevela and hy-arevmda language tags.
  • Support any length replacement rule strings for the source part of the rule (replacing
    from the 'source' string to the 'target' string).
  • Add more tests to check the various parts of espeak-ng.
  • Various changes to clean up the codebase.
  • Fix various compiler warnings (-Winitialized, -Wmissing-prototypes, -Wreturn-type,
    and -Wunused).

security:

  • Fix several crashes in the emoji support.
  • Fix several static analysis issues detected by Coverity Scan.
  • Fix several static analysis issues detected by Microsoft Visual C++ /analyze.
  • oss-fuzz support for the SSML logic.
  • Fix running make check with -fsanitize=address (LLVM AddressSanitizer).

documentation:

  • document the Kirshenbaum phoneme transcription scheme (used as the basis of espeak phonemes).
  • document the X-SAMPA phoneme transcription scheme.
  • document the Conlang X-SAMPA phoneme transcription scheme.

emoji:

  • Update the emoji to Unicode 11.0.
  • Update the emoji translations to CLDR 33.1.
  • gd (Scottish Gaelic)
  • sd (Sindhi)
  • yue (Chinese (Cantonese))

new languages:

  • ba (Bashkir) -- tc-dl, Valdis Vitolins
  • hak (Hakka Chinese) -- Chen Chien-ting
  • ht (Haitian Creole) -- Valdis Vitolins
  • kk (Kazakh) -- boracasli14, Valdis Vitolins
  • py (Pyash) -- Logan Streondj
  • quc (K'iche') -- Valdis Vitolins
  • ru-lv (Russian Latvia) -- Valdis Vitolins
  • shn (Shan Tay Yai) -- ronaldaug
  • uz (Uzbek) -- Valdis Vitolins

updated languages:

  • af (Afrikaans) -- Christo de Klerk
  • ar (Arabic) -- Valdis Vitolins, Mark Readdie, Hesham Assabahi
  • cmn (Chinese Mandarin) -- materia-cccp
  • de (German) -- Reece Dunn, Karl Eick
  • en (English) -- Reece Dunn
  • fa (Farsi/Persian) -- Shadyar Khodayari
  • fi (Finnish) -- Juho Hiltunen
  • fr (French) -- Shallowmallow, Karl Eick, maiido, Reece Dunn
  • ku (Kurdish) -- rojanu
  • it (Italian) -- chrislm
  • lv (Latvian) -- Valdis Vitolins
  • my (Myanmar/Burmese) -- Min Maung
  • ru (Russian) -- Valdis Vitolins, Reece Dunn
  • sd (Sindhi) -- Ejaz Shah
  • ur (Urdu) -- Ejaz Shah
  • vi (Vietnamese) -- Anh Hoang Nguyen

1.49.2

24 Sep 09:37
1.49.2
Compare
Choose a tag to compare
  • Provide more validation when reading phoneme tables and voice/language files.
  • Removed support for phoneme equivalence tables. These were disabled in the
    French and German language files.
  • Allow pre- as well as post-jump rules in dictionary files.
  • Support building the Windows version with Visual Studio 2013.
  • Use language and accent names consistently across the language files.
  • Group the encoding handling into a single place with a clean interface and tests.
  • Support all ISO 8859 encodings.
  • Support for multi-word text replacements in language dictionaries.
  • Support compiling _emoji dictionary files if present.

bug fixes:

  • Fix running make clean ; make.
  • Fix reading stdin buffers larger than 1000.
  • Fixed various language and parent BCP 47 codes (jp is now ja).
  • Fixed several crashes and bugs in espeak_SetVoiceByName/Properties.

new languages:

  • bpy (Bishnupriya Manipuri) -- Vardhan
  • fr-CH (French (Switzerland)) -- Claude Beazley
  • kok (Konkani) -- Vardhan
  • mi (Māori) -- Graham Oliver
  • sd (Sindhi, Arabic script) -- Vardhan, Ejaz Shah

updated languages:

  • af (Afrikaans) -- Christo de Klerk
  • de (German) -- Valdis Vitolins
  • du (Dutch) -- Leonard de Ruijter
  • en (English) -- Reece Dunn. Thanks to Kendell Clark for identifying mispronunciations.
  • fa (Farsi/Persian) -- Shadyar Khodayari
  • fr (French) -- Valdis Vitolins; Reece Dunn
  • gu (Gujarati) -- Vardhan
  • hi (Hindi) -- Vardhan
  • it (Italian) -- chrislm
  • ky (Kyrgyz) -- JRMeyer
  • lv (Latvian) -- Valdis Vitolins
  • mr (Marathi) -- Vardhan
  • or (Oriya) -- Vardhan
  • ur (Urdu) -- Ejaz Shah

Unicode Emoji support (from the Unicode Emoji 5.0, and CLDR 31.0.1 data files):

  • af (Afrikaans)
  • am (Amharic)
  • ar (Arabic)
  • az (Azerbaijani)
  • bg (Bulgarian)
  • bn (Bengali)
  • bs (Bosnian)
  • ca (Catalan)
  • cs (Czech)
  • cy (Welsh)
  • da (Danish)
  • de (German)
  • el (Greek)
  • en (English) -- American
  • es (Spanish)
  • et (Estonian)
  • eu (Basque)
  • fa (Farsi/Persian)
  • fi (Finnish)
  • fr (French)
  • ga (Irish Gaelic)
  • gu (Gujarati)
  • hi (Hindi)
  • hr (Croatian)
  • hu (Hungarian)
  • hy (Armenian)
  • id (Indonesian)
  • is (Icelandic)
  • it (Italian)
  • ja (Japanese)
  • ka (Georgian)
  • kn (Kannada)
  • ko (Korean)
  • ky (Kyrgyz)
  • lt (Lithuanian)
  • lv (Latvian)
  • mk (Macedonian)
  • ml (Malayalam)
  • mr (Marathi)
  • ms (Malay)
  • my (Myanmar/Burmese)
  • ne (Nepali)
  • nl (Dutch)
  • or (Oriya)
  • pa (Punjabi)
  • pl (Polish)
  • pt (Portuguese) -- Brazil
  • ro (Romanian)
  • ru (Russian)
  • si (Sinhala)
  • sk (Slovak)
  • sl (Slovenian)
  • sq (Albanian)
  • sr (Serbian)
  • sv (Swedish)
  • sw (Swahili)
  • ta (Tamil)
  • te (Telugu)
  • tr (Turkish)
  • ur (Urdu)
  • vi (Vietnamese)
  • zh (Chinese)

1.49.1

21 Jan 21:20
1.49.1
Compare
Choose a tag to compare
  • Vim syntax support for rule files.
  • Replace ieee80.c with the implementation at
    http://www.realitypixels.com/turk/opensource/ToFromIEEE.c.txt for Debian
    open source license compliance.
  • Documentation updates.
  • Emscripten support.
  • Merged the Android port into the main espeak-ng codebase.
  • Extend --compile-phoneme to support specifying the source directory for
    phoneme files.
  • Support using any directory as the data home, not just espeak-ng-data.
  • Don't install the default voice: use en as the default voice.

NOTE: The merger of the Android code is currently experimental. It is
missing support for recognising Unicode characters.

bug fixes:

  • Fix .Lnn rule groups to allow groups above 62.
  • Fix reporting the eSpeak NG version in the --version string and Windows
    installer.
  • Fix a crash when calling LoadDictionary when using clang.
  • Threading fixes and Mac OSX portability for the fifo and event code.
  • Fixes for running the spect code on big-endian architectures.
  • Fix determining the voice directory when installing the 32-bit Windows
    binaries on a 64-bit Windows system.
  • Fix a regression with the saved parameter logic.
  • Reduce the default buffer length to 60mS to improve latency.
  • Don't override buffer length when using espeak-ng for audio.
  • Fix detecting doubled consonants when using Unicode characters.
  • Fix speaking 1,,2, etc. in languages that use , as a decimal separator.

updated languages:

  • af (Afrikaans) -- Christo de Klerk
  • en (English) -- Valdis Vitolins
  • fa (Farsi/Persian) -- Shadyar Khodayari
  • it (Italian) -- chrislm
  • ky (Krygyz) -- JRMeyer
  • lv (Latvian) -- Valdis Vitolins
  • tr (Turkish) -- Valdis Vitolins

new languages:

  • ar (Arabic) -- Taha Zerrouki
  • jp (Japanese) -- Reece Dunn (NOTE: Hiragana and Karakana only.)

1.49.0

10 Sep 10:20
1.49.0
Compare
Choose a tag to compare
  • Support the --compile-mbrola command-line option.
  • Support the --compile-phonemes command-line option.
  • Support the --compile-intonations command-line option.
  • Support SSML <phoneme alphabet="espeak" ph="..."> tags.
  • Added man files for the speak-ng and espeak-ng command-line programs.
  • Created a companion espeak-ng API to provide more detailed error codes and
    provide access to the new espeak-ng functionality.
  • Fixed many logic and security issues reported by clang scan-build, Coverity
    and msvc /analyze.
  • Group languages by their language family and use BCP47 compliant names.
  • Support for Windows and BSD platforms.
  • Removed support for WinCE, MS-DOS and RiscOS.
  • Add support for maintainer and status field in voice files for tracking
    voice maintenance.
  • Vim syntax highlighting for espeak dictionary (list and rules) files.
  • Support reading input from named pipes.
  • Fix wav file truncation when reading multiline text from stdin or a named pipe.

build:

  • Build the code with a C99 compiler, instead of a C++ compiler.
  • Provide a pkg-config file (patch by Luke Yelavich).
  • Use -fPIC to support sparc/sparc64 architectures.
  • Removed the local portaudio header files.
  • Use the system's sonic library and header files.
  • Output phoneme compilation errors to stderr.
  • Generate build failures if building phoneme, intonation or dictionary files
    contain errors.
  • Provide modern Visual Studio project files to build eSpeak NG on Windows,
    with a WiX-based project to create an MSI installer.
  • Use the NetBSD getopt_long implementation on Windows.

restructuring:

  • Moved the library code to src/libespeak-ng.
  • Renamed espeak to espeak-ng.
  • Renamed speak to speak-ng.
  • Use the libespeak-ng API in speak-ng using a shared implementation with
    espeak-ng.
  • Moved the code to build the mbrola voice data, phoneme tables and intonation
    data to libespeak-ng.
  • Removed the espeakedit program and the associated wxWidgets dependency.
  • Removed the platforms directory and approaching portability in a similar way
    to how libressl handles portability.
  • Converted the documentation to markdown.
  • Group the Windows and POSIX mbrowrap code to provide the mbrowrap.h
    implementation in a single place.
  • Replaced the audio APIs with PCAudioLib to improve portability of the audio
    and to share that across different projects.
  • Reworked the synchronous audio to share the code paths with asynchronous
    audio.

cleanup:

  • Removed unused/empty internal header files.
  • Removed unused and commented out code.
  • Reformatted the code to use a consistent style and indentation.
  • Fixed many GCC and clang warnings.
  • Improved the error handling within the codebase to report the underlying
    error where possible.
  • Inlined several wrapper methods that were adding little/no value.

updated languages:

  • en (English) -- Thanks to Kendell Clark for identifying mispronunciations.
  • el (Greek) : improved polytonic Greek support
  • es (Spanish) : ChrisLeo (improved intonations)
  • fa (Persian) -- Shadyar Khodayari
  • fr (French) -- Thomas Guillory
  • ga (Irish Gaelic) -- Jim Regan
  • it (Italian) -- ChrisLeo
  • lv (Latvian) -- Valdis Vitolins

new languages:

  • gn (Guarani) -- ChrisLeo
  • ky (Kyrgyz) -- JRMeyer
  • mb-br2 (Brazillian Portuguese)
  • mb-de* (German) : extend support coverage of the German MBROLA voices
  • mb-lt1 (Lithuanian) -- embar
  • mb-lt2 (Lithuanian) -- embar
  • mt (Maltese)
  • my (Myanmar/Burmese) -- Min Maung, Lwin Moe
  • tn (Setswana)
  • tt (Tatar)