A hint: This file contains one or more very long lines, so maybe it is better readable using the pure text view mode that shows the contents as wrapped lines within the browser window.
1. As eSpeak NG is open source software, you can get it working from many different sources, some of which may provide quite old version. Before registering new issue, test that issue can be reproduced with latest development version at eSpeak NG online site.
2. Review known eSpeak NG issues, particularly about languages and add your comments on existing issues.
3. Look at and subscribe to eSpeakNG mailing list to view and discuss other related topics.
4. If you decide to create new issue, look at guide here and provide following information:
5. Close issue when it is resolved.
1. Get familiar with additive speech synthesis.
2. Create fork of espeak-ng repository as it is described here.
3. Clone and set up your development environment on your computer , or clone it online. For some easy fixes you may change files just through browser of yor forked github project. Make necessary changes, commit them and issue pull request as described in step 9.
4. Get familiar with text to phoneme translation and how to add or improve language.
5. Get familiar with voice files and phoneme tables configuration files.
6. Make your improvements (i.e.
additions or modifications) and check your project with
make check command. Fix issues if necessary.
7. If you contribute to an existing
language, find language maintainer in language configuration file
espeak-ng-data/lang folder1 and ask him to review your changes. If you
can't find language maintainer, you can review list of all
contributors2 and contact them. You can also
volunteer to become language maintainer just by updating language configuration file and submitting your
changes as it is described in step 9.
8. If you contribute to the core of
espeak-ng engine (i.e. source files of software), look at eSpeak
NG roadmap. In this case you just issue pull requests as described
in step 9, to make changes easier for review. Note that
make check must pass and there should not be merging
conflicts (and for new/extended functionality new tests should be
9. Push your changes to GitHub and create pull request. You can also send changed files by email to eSpeakNG mailing list, but then inlusion of them may take more time.
10. Wait for feedback of current espeak-ng maintainers3.
11. When you are ready to take responsibility, ask current maintainers to get promoted as a maintainer of the project.
1. You can get list of all language
maintainers with following commands in your
cd espeak-ng-data;grep -ri -A2 -B2 maintainer *
2. You can get list of all contributors
with following commands in your
git log --pretty="%an %ae%n%cn %ce" | sort|uniq -c|sort -nr
3. Currently eSpeak NG is maintained only by volunteers in their free time, therefore expected reaction time is one, two weeks.