MaryTTS v5.2

@psibre psibre released this Sep 15, 2016 · 187 commits to master since this release

This is expected to be the last milestone release in the 5.x generation of MaryTTS.

New Features


  • Support for Luxembourgish
  • Completely rewritten text preprocessing module for English (removing reliance on FreeTTS)
  • Better support for Java 8
  • Some migration towards building with Gradle


  • All unit-selection voices have been rebuilt using the new Gradle plugin
  • All HSMM voices are now hosted on Bintray and can be resolved as dependencies
  • Voices with open data now have open-source voicebuilding repositories hosted on GitHub, which include downloadable distribution packages

Development news

  • #533: support system preferredmodule
  • #525: Update dependencies and maven plugins
  • #523: solving quotes phonetisation problem
  • #506: Duplicate subexpressions in
  • #499: Upgrade Apache Commons Collections to v3.2.2
  • #493: Drop assembly plugin
  • #425: various fixes for C++ client source code
  • #399: Component installer License download re-code following #395
  • #393: package.html files converted into files
  • #362: add support for Groovy
  • #353: Swap inlined third-party code with dependencies
  • #351: update of maven plugins used for the website and build plugins
  • #333: remove subscription/post links to archived mary-dev mailing list
  • #330: show port number when starting MaryTTS server
  • #320: move outdated example code from runtime assembly into doc directory
  • #309: try to process tokens if they contain word characters, even when they are tagged as punctuation
  • #228: fix on drop FreeTTS dependencies
  • #227: Enhanced OutputStreams for Mary Client
  • #217: incrementality changes

Fixed Issues/Bugs

  • #593: Don't split up multiple punctuation marks in tokenization
  • #570: Praat TextGrid output is invalid with boundaries (times are not monotonic)
  • #564: add missing TOKENS examples
  • #555: HMMModel generates malformed XML duration attributes
  • #531: java.awt.HeadlessException in (Half)PhoneLabelFeatureAligner
  • #516: Single words conduct to have a wrong POS which leads to a crash of the target feature module
  • #515: preprocessing contraction and double quotes correction
  • #503: halfphoneUnitFeatureDefinition_ac.txt does not have any continuous features even though halfphoneFeatures_ac.mry does
  • #480: IBAN code → stacktrace
  • #469: APML is broken
  • #468: SABLE is broken
  • #467: SIMPLEPHONEMES is broken
  • #465: enable acoustic features by default
  • #460: Tokens mistakenly POS-tagged as punctuation cause wrong boundary insertion
  • #458: VoiceCompiler generates invalid package name from db.voicename property
  • #452: Disable assertions in user startup scripts
  • #448: unit selection: final boundary durations synthesized 50% shorter than requested
  • #428: error in marytts cart DecisionNode
  • #421: Force English locale for parsing date when English language is used
  • #409: ensure that ICU4J's resource is read with the correct encoding, regardless of environment
  • #398: Use https URLs whenever possible
  • #395: component installer hangs if licenses cannot be downloaded
  • #375: add Groovy script to generate component descriptor XML and fix POM template
  • #369: handle exceptions on missing or malformed userdict entries
  • #365: upgrade groovy-maven (formerly gmaven) plugin to solve noClassDefFoundError when running MaryTTS server
  • #359: don't append an /6/ to the previous syllable if that syllable is not adjacent
  • #354: move custom jtok resources into jtok-user
  • #352: javadoc fails with Java 8
  • #342: workaround for NullPointerException in syllables that violate sonority constraints
  • #341: temporarily handle digit suffix stress notation from legacy LTS CARTs until these are rebuilt
  • #322: drop transitional punctuation POS tag logic
  • #314: not processing null results from phonemise methods
  • #237: fix for incorrect linear interpolation in MathUtils.interpolateNonZeroValues
  • #213: fix for rate adjustment
  • #206: fix for LTSTrainerTest failure on unexpected file.encoding
  • #204: fix for Locale null breaking MaryServer
  • #202: URISyntaxException avoids WikipediaMarkupCleanerTest failing if workspace contains space
  • #198: fix for closing fileOutputStream after audio save
  • #185: fix for EnvironmentTest failure on Java 8

MaryTTS 5.2-beta3

@psibre psibre released this Apr 27, 2016 · 246 commits to master since this release


release v5.2-beta3

MaryTTS 5.2-beta2

@psibre psibre released this Feb 2, 2016 · 307 commits to master since this release


release v5.2-beta2

MaryTTS 5.2-beta1

@psibre psibre released this Dec 21, 2015 · 333 commits to master since this release


release v5.2-beta1

MaryTTS 5.1.2

@psibre psibre released this Jan 23, 2015 · 595 commits to master since this release

Another milestone release with several improvements and fixes.

New Features


  • For French, numbers in the input text were silently ignored; this has been improved using a spellout formatter from ICU4J. This fix can (and will soon) also be applied to other languages that are missing a text Preprocess module.
  • A new rule-based Syllabifier method has been implemented.
  • All releases are now hosted on GitHub again; references to the Downloads on Bitbucket have been updated accordingly.

Development news

  • Targets are cached so these do not get recreated, and can be re-used later.
  • Words are now added to wordlist in batches for new language components.
  • A toString() helper method was added to MaryData class to help with debugging.

Fixed Issues/Bugs

  • #268: getAllophone() no longer silently returns null on invalid input.
  • #267: REALISED_DURATIONS and REALISED_ACOUSTPARAMS are no longer (mistakenly) available as input types.
  • #266: Syllabification no longer ignores any provided stress diacritics.
  • #258: Byte overflow in TargetFeatureComputer -- issue with limit of array.
  • #218: a voice would not be built correctly following the groupId change in v.5.1.1.
  • #154: trailing whitespace in config files could prevent correct parsing.

MaryTTS 5.1.1

@psibre psibre released this Jan 23, 2015 · 723 commits to master since this release

A milestone release that stabilizes changes in build and hosting infrastructure and fixes several issues.

New Features

Language updates

  • Telugu and Turkish: two voices were added which had not been rebuilt since v4.0.0.
  • added TOKENS example text for Italian, Turkish, British English, Telugu, and Russian.
  • Voice components are sorted by locale and name in download/marytts-components.xml.

Documentation updates

  • Added to the documentation section on the mary site is a page on MaryTTS's history.
  • Also added a point on MP3 support to the FAQ.
  • Minor tweaks to navigation menu, earlier version release notes, download links, etc.

Development news

New Infrastructure:

  • Continuous Integration is now provided by Travis CI.
  • The web server running at has been replaced with a new machine, which hosts the latest stable website content and runs the latest stable build as an online demo.
  • The latest release artifacts are hosted at Bintray and indexed in jCenter.
  • The latest development (SNAPSHOT) artifacts are hosted at OJO.
  • A website built from the latest development (SNAPSHOT) version is hosted at

Build environment:

  • All supported languages have been moved into a container module marytts-languages.
  • Several maven plugins were updated to the latest versions.
  • Building MaryTTS now requires Maven 3.0.2 or later.

Fixed Issues/Bugs

  • added missing voice resources that had been present in v5.0 before hosting had switched servers, as well as fixing some missing license files.
  • #207: Deploying to Bintray/jCenter required changing the groupId from marytts to de.dfki.mary.
  • #206: LTSTrainerTest would fail if UTF-8 encoding was not specified
  • #204: A locale set to null no longer breaks the Mary server
  • #202: WikipediaMarkupCleanerTest failed if workspace contains space
  • #185: EnviromentTest no longer fails with Java 8

MaryTTS 5.1

@psibre psibre released this Dec 19, 2014 · 882 commits to master since this release

Following significant restructuring introduced in v5.0, this is a milestone release to stabilize numerous new features and fixes over the past two years.

New features

Apart from numerous fixed issues, there are several notable improvements in this version.

French language support

Thanks to Sathish Pammis work at ENST and UPMC in Paris, there is support for French TTS.
This supersedes an earlier, experimental implementation, which relied on external, incompatible resources.

Moreover, thanks to the great work and generosity of the speakers, there are a number of French voices built from three open-source corpora:

Improved Italian language support

Thanks to Fabio Tesser and Giulio Paci at ISTC in Padova, numerous improvements were made to Italian TTS.

This includes the resurrection of the HTK Labeler used for voicebuilding as an alternative to the EHMM Labeler, which may produce better results under certain conditions.


Although much of the documentation has yet to be updated, the MaryTTS website itself is now built from within the MaryTTS source code.
This unifies the fossilized legacy content with new documentation, including the GitHub-hosted wiki, and makes it easy to manage.

Easier integration

Finally, thanks to global hosting at Bintray, it is now possible to integrate MaryTTS directly into other applications without the requirement to install it first locally, simply by adding the following repository block to your pom.xml:


Develepment news

There has been some fluctuation in the core development team since v5.0;
departures and other responsibilities have resulted in less activity than we would have liked.

Fortunately, we do finally have several new projects for MaryTTS, and several exciting features waiting the wings, ready to be rebased on a stable version (this one), including major overhauls of the voicebuilding toolchain and the new language support, and a new web-based installer.
Expect these to land in the near future.

MaryTTS 5.1-beta3

@psibre psibre released this Aug 22, 2014 · 888 commits to master since this release


release v5.1-beta3

MaryTTS 5.1-beta2

@psibre psibre released this Mar 13, 2014 · 894 commits to master since this release


[maven-release-plugin]  copy for tag v5.1beta2