Date   

Github push to espeak-ng:espeak-ng #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

1 New Commit:

[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
f514bbcc8d1c: Fix 'implicit declaration of function ‘addPluralSuffixes’' C99/clang error

Modified: src/libespeak-ng/translate.c


Updates to Github #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

1 New Commit:

[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
cf4809a1e573: Fix bug #706: pronunciation error with abbreviations followed by 's

Modified: src/libespeak-ng/translate.c
Modified: tests/translate.test


[espeak-ng/espeak-ng] Pull request closed by rhdunn:

#730 Fix bug #706: pronunciation error with abbreviations followed by 's

@rhdunn, please review and merge fix for #706 I also made it work properly for other languages where, plural/genitive with ...s or ...'s doesn't have meaning (i.e. ..s is considered part of the root word) and updated tests.


[espeak-ng:master] New Comment on Pull Request #730 Fix bug #706: pronunciation error with abbreviations followed by 's
By rhdunn:

Reviewed and merged. Thanks for the fix.


Pull Request Opened #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng/espeak-ng] Pull request opened by valdisvi:

#730 Fix bug #706: pronunciation error with abbreviations followed by 's

@rhdunn, please review and merge fix for #706 I also made it work properly for other languages where, plural/genitive with ...s or ...'s doesn't have meaning (i.e. ..s is considered part of the root word) and updated tests.


Updates to Github #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #725 ' (quote) versus " (quotes) is almost impossible to audibly differentiate
By spresse1:

PR#726 was merged, this issue is resolved. Thank you!


[espeak-ng:master] Issue #725 ' (quote) versus " (quotes) is almost impossible to audibly differentiate closed by spresse1.


[espeak-ng:master] reported: issues with russian language #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #728 issues with russian language
By valdisvi:

@beqabeqa473, that changePhoneme(...) was introduced in huge commit 20f52f03 by Jonathan in 2009-12-20. I think, he was misled and that code can be safely removed.

git diff a7501374 20f52f03 ph_russian|grep -A15 "phoneme I$"
 phoneme I
-  vowel starttype (i) endtype (i)
-  length 80
-  formants vwl_ru/ii
+  vowel starttype #i endtype #i
+  Length 80
+
+  IF thisPh(isMaxStress) THEN
+    IF prevPhW(j) THEN
+      ChangePhoneme(a)
+    ELSE
+      ChangePhoneme(i)
+    ENDIF
+  ENDIF
+  FMT(vwl_ru/ii)
 endphoneme


[espeak-ng:master] reported: issues with russian language #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #728 issues with russian language
By rhdunn:

For the MA, etc. numbers, see https://github.com/espeak-ng/espeak-ng/blob/master/src/libespeak-ng/numbers.c#L1143 and the NUM2_THOUSANDS_VAR defines. Looking at that code, it looks like it is only setting 0Mn and 1Mn for Russian. I don't know Russian to know if the MA entries should be removed or the code/translation flags updated.

The code should also be made better by using the defines in the code instead of numbers. I'll take a look at doing that.


Updates to Github #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #686 inform that --stdin flag reads multi-line text and then speaks it after
By valdisvi:

Actually it was told already, but less explicitly. I hope fix in 541cd90 make it more clear.


[espeak-ng:master] Issue #686 inform that --stdin flag reads multi-line text and then speaks it after closed by sthibaul.


1 New Commit:

[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
541cd906f762: Issue #686: make description of --stdin more clear

Modified: src/espeak-ng.1.ronn
Modified: src/espeak-ng.c


Updates to Github #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

1 New Commit:

[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
875ef11d7756: Fix bug #703: update version number for shared library

When update next version number, look at differences for e.g. b47a75f4 commit
and update following files:
- CHANGELOG.md
- android/jni/include/config.h
- configure.ac
- src/windows/config.h
- Makefile.am

Modified: Makefile.am


[espeak-ng:master] Issue #703 Probably misconfigured Makefile.am for release closed by valdisvi.


[espeak-ng:master] reported: --voices option doesn't show mbrola voices #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #705 --voices option doesn't show mbrola voices
By valdisvi:

Look for command line parameters here. With f38ec9d commit you can also look on all voices and variants with parameter espeak-ng --voices=all.


Updates to Github #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

3 New Commits:

[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
3f3f17f84355: Fix #715: Need better error messages if MBROLA engine or voice files are missing

Modified: src/libespeak-ng/mbrowrap.c
Modified: src/libespeak-ng/synth_mbrola.c


[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
c13b3e534b01: Add parameter `all` for --voices to show all voices

Update documentation to show already existing features and for
newly introduced `all` parameter.

Modified: src/espeak-ng.1.ronn
Modified: src/libespeak-ng/voices.c


[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
6fe3aba5a2be: Merge pull request #717

Modified: src/espeak-ng.1.ronn
Modified: src/libespeak-ng/mbrowrap.c
Modified: src/libespeak-ng/synth_mbrola.c
Modified: src/libespeak-ng/voices.c


[espeak-ng:master] Issue #715 Need better error messages if MBROLA engine or voice files are missing closed by valdisvi.


[espeak-ng/espeak-ng] Pull request closed by valdisvi:

#717 Changes in espeak-ng core — improved MBROLA error handling, `all` parameter to list all voices

Reece, please review these changes and merge them if implementation is acceptable. Thanks!


Updates to Github #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

2 New Commits:

[espeak-ng:master] By spresse1 <steve@...>:
1a5df9ce04aa: Change the name of the ' character to "tick", rather than "quote", as this was difficult to differentiate from """, which reads as "quotes"

Modified: dictsource/en_list


[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
f38ec9d1d718: Update changelog

Modified: CHANGELOG.md


[espeak-ng/espeak-ng] Pull request closed by valdisvi:

#726 #725: ' (quote) versus " (quotes) is almost impossible to audibly differentiate

Users of screen readers (eg: Orca, NVDA, JAWS) and other TTS assistive technologies rely on accurate and easy-to-understand reading of the text. One context in which this becomes especially critical is systems administration and software development, where TTS users need to be able to clearly and easily differentiate types of punctuation with minimal effort in the midst of reading a larger portion of text. For example, the two characters have significantly different meanings in shells and in some programming languages.

This PR changes the name of the quote (') character to "tick", as this was difficult to differentiate from """, which reads as "quotes"


[espeak-ng:master] New Comment on Pull Request #726 #725: ' (quote) versus " (quotes) is almost impossible to audibly differentiate
By valdisvi:

It seems ok to me and hopefully @rhdunn, who is maintaining English will not object. Close issue if that is it.


[espeak-ng:master] reported: problem with greek language #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #720 problem with greek language
By valdisvi:

It looks like broken installation where espeak executable actually uses espeak-ng, but backend libespeak library is old eSpeak one, not library for eSpeak NG.

When you run following, it probably shows the same as for me:

$ which espeak
/usr/bin/espeak
$ ls -l /usr/bin/espeak
lrwxrwxrwx 1 root root 9 mar 31 13:53 /usr/bin/espeak -> espeak-ng

But, back-end library is still old, original libespeak, not libespeak-ng. For me it shows

ldconfig -v|grep espeak
...
libespeak-ng.so... -> libespeak-ng.so...

But for you it still probably is libespeak with output like this:

libespeak... -> libespeak.so...

Check, with ldconfig -p|grep espeak, where library is located, delete it, reinstall espeak-ng and rerun sudo ldconfig -v.


[espeak-ng:master] reported: issues with russian language #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #728 issues with russian language
By valdisvi:

Wrong pronunciation for и comes from rule for phoneme I:

...
phoneme I
...
IF thisPh(isMaxStress) THEN
    IF prevPhW(j) THEN
      ChangePhoneme(a)
    ELSE
      ChangePhoneme(i)
    ENDIF
  ENDIF

which translates to English like If и comes after я (j) and is stressed, say it as a. I can't imagine where this rule should applied and in my opinion it should be just removed.

About numbers I don't know. I looked at ru_list file. It has proper entry for million and has undocumented entries _...MA... e.g. _1MA3, for which I can't find what it exactly does, but even without them, million is not spelled correctly, so error hides somewhere else.


Updates to Github #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng/espeak-ng] Pull request opened by TediPapajorgji:

#729 formatted -X output in an easier way to parse by phonemizer

So the whole idea here is that we need to be able to map phonemized words back to their original text. When running -X with espeak, the original output looked like this:

tedi@Tedis-MacBook-Pro bin % ./espeak-ng  "this is a to be test" -X
Found: 'this' [DIs]  $u+ $strend $verbsf $nounf
Found: 'is' [Iz]   $pastf $only
Flags:  a   $nounf
Translate 'a'
  1	a        [a]
 26	_) a (_  [a#]

Found: 'to be
' [t@bi]   $pastf
Translate 'test'
  1	t        [t]

  1	e        [E]

  1	s        [s]

  1	t        [t]

 DIs Iz a# t@bi t'Est
tedi@Tedis-MacBook-Pro bin %

The new output will look like this:

tedi@Tedis-MacBook-Pro bin % ./espeak-ng "this is a to be test" -X
this~|||~DIs
is~|||~Iz
to be~|||~t@bi

The modified output is much easier to parse by the python wrapper contained inside Phonemizer because Phonemizer can now read in each line from the espeak-ng standard output, then split each line using the ~|||~ delimiter (e.g. string.split("~|||~") ). The text before the the delimiter is input text, while the text after the delimiter is ASCII IPA phonemized text, therefore the goal of being able to map phonemized text back to its original text has been achieved.

This is required for SSML processing inside Resembletron. The reason being that users apply tags to whole text words, the text words are then phonemized - if there is a 1 to 1 relationship between # of text words to # of phonemized words, then the tags can be translated easily. (E.g. hello, after phonemization becomes həlˈəʊ). Now assume the case where there is not a 1 to 1 relationship between # of text words to # of phonemised words, then a mapping of phonemized words to text words is required (which is now possible with this modification) For example, the words "to be" become one phonemized word "təbi" in certain sentences - with this word to phonemized word mapping, we can identify the original phonemized text.


[espeak-ng:master] New Comment on Pull Request #729 formatted -X output in an easier way to parse by phonemizer
By TediPapajorgji:

Sorry.... wrong repository...


[espeak-ng/espeak-ng] Pull request closed by TediPapajorgji:

#729 formatted -X output in an easier way to parse by phonemizer

So the whole idea here is that we need to be able to map phonemized words back to their original text. When running -X with espeak, the original output looked like this:

tedi@Tedis-MacBook-Pro bin % ./espeak-ng  "this is a to be test" -X
Found: 'this' [DIs]  $u+ $strend $verbsf $nounf
Found: 'is' [Iz]   $pastf $only
Flags:  a   $nounf
Translate 'a'
  1	a        [a]
 26	_) a (_  [a#]

Found: 'to be
' [t@bi]   $pastf
Translate 'test'
  1	t        [t]

  1	e        [E]

  1	s        [s]

  1	t        [t]

 DIs Iz a# t@bi t'Est
tedi@Tedis-MacBook-Pro bin %

The new output will look like this:

tedi@Tedis-MacBook-Pro bin % ./espeak-ng "this is a to be test" -X
this~|||~DIs
is~|||~Iz
to be~|||~t@bi

The modified output is much easier to parse by the python wrapper contained inside Phonemizer because Phonemizer can now read in each line from the espeak-ng standard output, then split each line using the ~|||~ delimiter (e.g. string.split("~|||~") ). The text before the the delimiter is input text, while the text after the delimiter is ASCII IPA phonemized text, therefore the goal of being able to map phonemized text back to its original text has been achieved.

This is required for SSML processing inside Resembletron. The reason being that users apply tags to whole text words, the text words are then phonemized - if there is a 1 to 1 relationship between # of text words to # of phonemized words, then the tags can be translated easily. (E.g. hello, after phonemization becomes həlˈəʊ). Now assume the case where there is not a 1 to 1 relationship between # of text words to # of phonemised words, then a mapping of phonemized words to text words is required (which is now possible with this modification) For example, the words "to be" become one phonemized word "təbi" in certain sentences - with this word to phonemized word mapping, we can identify the original phonemized text.


[espeak-ng/espeak-ng] Pull request updated by TediPapajorgji:

#729 formatted -X output in an easier way to parse by phonemizer

WRONG REPOSITORY SORRY!

So the whole idea here is that we need to be able to map phonemized words back to their original text. When running -X with espeak, the original output looked like this:

tedi@Tedis-MacBook-Pro bin % ./espeak-ng  "this is a to be test" -X
Found: 'this' [DIs]  $u+ $strend $verbsf $nounf
Found: 'is' [Iz]   $pastf $only
Flags:  a   $nounf
Translate 'a'
  1	a        [a]
 26	_) a (_  [a#]

Found: 'to be
' [t@bi]   $pastf
Translate 'test'
  1	t        [t]

  1	e        [E]

  1	s        [s]

  1	t        [t]

 DIs Iz a# t@bi t'Est
tedi@Tedis-MacBook-Pro bin %

The new output will look like this:

tedi@Tedis-MacBook-Pro bin % ./espeak-ng "this is a to be test" -X
this~|||~DIs
is~|||~Iz
to be~|||~t@bi

The modified output is much easier to parse by the python wrapper contained inside Phonemizer because Phonemizer can now read in each line from the espeak-ng standard output, then split each line using the ~|||~ delimiter (e.g. string.split("~|||~") ). The text before the the delimiter is input text, while the text after the delimiter is ASCII IPA phonemized text, therefore the goal of being able to map phonemized text back to its original text has been achieved.

This is required for SSML processing inside Resembletron. The reason being that users apply tags to whole text words, the text words are then phonemized - if there is a 1 to 1 relationship between # of text words to # of phonemized words, then the tags can be translated easily. (E.g. hello, after phonemization becomes həlˈəʊ). Now assume the case where there is not a 1 to 1 relationship between # of text words to # of phonemised words, then a mapping of phonemized words to text words is required (which is now possible with this modification) For example, the words "to be" become one phonemized word "təbi" in certain sentences - with this word to phonemized word mapping, we can identify the original phonemized text.


[espeak-ng:master] reported: No MBROLA support for Mac #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #336 No MBROLA support for Mac
By gogobd:

This issue still exists in espeak: stable 1.48.04 (bottled) installed via brew on MacOS High Sierra


[espeak-ng:master] new issue: issues with russian language #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Issue Created by beqabeqa473:
#728 issues with russian language

hello all.

there are some issues with russian language in espeak-ng which would be good to fix.

  1. numbers are not working as they should. e.g. 1000000, 1000000000, 1000000000000

  2. letter combination of ьи is pronounced incorrectly e.g. in words статьи, воробьи, ручьи, last letter я is not correct/ it should be и instead.

thanks.


Re: editing klatt, and segmenting phonemes.

David Hilton
 

so, there is a version of espeakedit for espeak ng, good to know. What is the jedit java editor used for, the phoneme separation, or the klatt synthesis.

On Thu, Apr 2, 2020 at 12:13 AM Valdis Vitolins via groups.io <valdis.vitolins=odo.lv@groups.io> wrote:
https://github.com/valdisvi/espeak-ng-espeakedit
or
https://github.com/valdisvi/espeak-ng-jeditor

Valdis

> Hello, I was wondering how would I go about editing the klatt
> synthesizer in espeak. Also is there a version of espeakedit for
> espeak ng? If not, how would I go about segmenting existing phonemes,
> to create new phomenes. thank you for your time. david hilton davidhi
> lton936@...





[espeak-ng:master] reported: Typing interrupt doesn't work when using espeakup with espeak-ng #github

espeak-ng@groups.io Integration <espeak-ng@...>
 

[espeak-ng:master] New Comment on Issue #285 Typing interrupt doesn't work when using espeakup with espeak-ng
By valdisvi:

@am-dxer, then probably this issue can be solved by switching to the latest stable version of eSpeak NG.


Re: editing klatt, and segmenting phonemes.

Valdis Vitolins
 

Hello, I was wondering how would I go about editing the klatt
synthesizer in espeak. Also is there a version of espeakedit for
espeak ng? If not, how would I go about segmenting existing phonemes,
to create new phomenes. thank you for your time. david hilton davidhi
lton936@...


editing klatt, and segmenting phonemes.

David Hilton
 

Hello, I was wondering how would I go about editing the klatt synthesizer in espeak. Also is there a version of espeakedit for espeak ng? If not, how would I go about segmenting existing phonemes, to create new phomenes. thank you for your time. david hilton davidhilton936@...