Browse Source

README.md: Describe the changes made to the master branch.

master
Reece H. Dunn 11 years ago
parent
commit
eba554c1ca
1 changed files with 84 additions and 2 deletions
  1. 84
    2
      README.md

+ 84
- 2
README.md View File

- [Adding New Voices](#adding-new-voices) - [Adding New Voices](#adding-new-voices)
- [Changes from Upstream](#changes-from-upstream) - [Changes from Upstream](#changes-from-upstream)
- [Development Branch](#development-branch) - [Development Branch](#development-branch)
- [Build System](#build-system)
- [espeakedit](#espeakedit)
- [Bug Fixes](#bug-fixes)
- [Praat Modifications](#praat-modifications) - [Praat Modifications](#praat-modifications)
- [Historical Releases](#historical-releases) - [Historical Releases](#historical-releases)
- [Bugs](#bugs) - [Bugs](#bugs)


---------- ----------


This is a mirror of the eSpeak sources with changes to make it build on POSIX
systems using autotools. It contains the following branches:
This is a mirror of the eSpeak sources with the following improvements:

1. An autotools-based build system that supports building the phoneme data and
language dictionaries from source.

2. Detection of the supported audio APIs via the `configure` script — no need to
modify the build files.

3. The NVDA voice variants are included in the `espeak-data/voices/!v` directory.

4. Add support for the Oromo language (`om`, contributed by [gude432](https://github.com/gude432)).

5. Support for wxWidgets 3.0.

It contains the following branches:


* *upstream* — a mirror of the eSpeak subversion repository using `git svn`; * *upstream* — a mirror of the eSpeak subversion repository using `git svn`;
* *development* — the eSpeak sources from * *development* — the eSpeak sources from
`.gitignore` file; as such, they will cause merge conflicts when merging `.gitignore` file; as such, they will cause merge conflicts when merging
from *upstream* to *development*. from *upstream* to *development*.


### Build System

The build system for eSpeak has been changed on the *master* branch to use
autotools and to support building the phoneme data and language dictionaries
on POSIX systems.

1. Use autotools (`autoconf`, `automake` and `libtool`) to build espeak.

2. Use the portaudio header on the build machine, not the one in espeak. This
avoids the need to link to the correct portaudio header file.

3. Detect wxWidgets using `wx-config`.

4. Add `configure` options and detection for the `pulse`, `portaudio`,
`runtime` and `sada` audio API modes.

5. Allow `CXXFLAGS` to be overwritten from the environment. This is based
on the patch for Debian bug #707925 by Jason White.

6. *Klatt*, *MBROLA*, *libsonic* and asynchronous command support was made
optional. This covers:
* adding an option to the `configure` script;
* only building the source files that are enabled;
* removing the guards around the relevant source files;
* removing the relevant conditional compilation defines from `speech.h`;
* fixing the sources if needed to build without support for the feature.

7. Fixes for building with wxWidgets 3.0, while still supporting wxWidgets 2.8.

### espeakedit

The following changes have been made to `espeakedit` to make it usable from
the command line, especially for use in the build process:

1. Build the intonation data as well as the phoneme data when the `--compile`
option is passed.

2. Don't compile the dictionaries when using the `--compile` command.

3. Only call `DrawEnvelopes` if `MAKE_ENVELOPES` is defined. This prevents the
`phsource/envelopes.png` file being updated every build.

4. Don't load the phoneme data before compiling it, as the phoneme data may
not exist.

5. Use the path set by `ESPEAK_DATA_PATH` if that environment variable exists,
otherwise use the `HOME` environment variable.

6. Don't use the paths from the configuration file when running the `--compile`
command.

### Bug Fixes

The following bugs have been fixed on the *master* branch:

* [`c1196192e5`](https://github.com/rhdunn/espeak/commit/c1196192e5950a80d37073135780441cc782c127)
— don't crash when `espeak_SetPunctuationList` is called with a null pointer.

* [`304d265f46`](https://github.com/rhdunn/espeak/commit/304d265f462fa4854c7d1f953131c69937a2fe74)
— fix a segfault when running `espeak -x "[[]]"`

* [`c098e8b891`](https://github.com/rhdunn/espeak/commit/c098e8b8910c1bffdd878198095fee803d8bd73a)
— change the IPA transcription of the `/i/` phoneme to `i`.

These have been sent upstream for inclusion in the upstream version of eSpeak.

### Praat Modifications ### Praat Modifications


The eSpeak sources from The eSpeak sources from

Loading…
Cancel
Save