Updates to Github #github


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

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

#926 cleaned duplicate rows from smj_list


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

#926 cleaned duplicate rows from smj_list and non-working rules from smj_rules


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

[espeak-ng:master] New Issue Created by katrihiovain:
#927 Short word error in smj: some three-letter words are read as abbreviations/character names separately.

espeak_testi_27_4

As in the terminal screenshot, at least words 'man', 'lav' and 'nav' are spoken as character names although they should be normal words. I checked that these short words are in the smj_list file and that there are no duplicates of them anymore.


[espeak-ng:master] New Issue Created by katrihiovain:
#927 Short word error in smj: some three-letter words are read as abbreviations/character names separately.

espeak_testi_27_4

As in the terminal screenshot, at least words 'man', 'vat' and 'lav' are spoken as character names although they should be normal words. I checked that these short words are in the smj_list file and that there are no duplicates of them anymore.


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

[espeak-ng:master] New Comment on Pull Request #925 Fix crash in voices.c:SetVoiceScores
By jaacoppi:

Since the commit is clearly a faulty attempt in code cleanup a simple git revert should be enough. Unfortunately I have limited time to investigate this for a better solution at the moment.

Adding a test case is a very good idea. Is the API call documented in enough detail to know which cases should be tested?


[espeak-ng:master] New Comment on Pull Request #925 Fix crash in voices.c:SetVoiceScores
By jaacoppi:

Forget what I just said, I was answering to a wrong issue.


[espeak-ng:master] New Comment on Pull Request #925 Fix crash in voices.c:SetVoiceScores
By jaacoppi:

Forget what I just said, I was answering to a wrong issue.


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

1 New Commit:

[espeak-ng:master] By John Bowler <jbowler@...>:
02199ec016c2: Fix crash in voices.c:SetVoiceScores

The only way (in Dec. 2019) to get espeak_ListVoices to actually list
all the voices, including variants and mbrola voices used to be to pass
a non-null voice selector with a null language pointer. This still
seems to be supported in SetVoiceScores, which still checks for a null
language (see the check right at the top), however new code has been added
for a pseudo voice "all" lower down which seems to do the same thing but
crashes with null. This change allows "old" code to continue working.

Signed-off-by: John Bowler <jbowler@...>

Modified: src/libespeak-ng/voices.c


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

#925 Fix crash in voices.c:SetVoiceScores

The only way (in Dec. 2019) to get espeak_ListVoices to actually list all the voices, including variants and mbrola voices used to be to pass a non-null voice selector with a null language pointer. This still seems to be supported in SetVoiceScores, which still checks for a null language (see the check right at the top), however new code has been added for a pseudo voice "all" lower down which seems to do the same thing but crashes with null. This change allows "old" code to continue working.

Signed-off-by: John Bowler jbowler@...


[espeak-ng:master] New Comment on Pull Request #925 Fix crash in voices.c:SetVoiceScores
By valdisvi:

OK, thanks! Patch is merged into project.


2 New Commits:

[espeak-ng:master] By katrihiovain <katri.hiovain@...>:
bffcd54356a6: cleaned duplicate rows from smj_list

Modified: dictsource/smj_list
Modified: dictsource/smj_rules


[espeak-ng:master] By Valdis Vitolins <valdis.vitolins@...>:
490538b715e9: Merge pull request #926

Modified: dictsource/smj_list
Modified: dictsource/smj_rules


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

#926 cleaned duplicate rows from smj_list and non-working rules from smj_rules


[espeak-ng:master] New Comment on Pull Request #926 cleaned duplicate rows from smj_list and non-working rules from smj_rules
By valdisvi:

Thanks for your contribution! Your pull request is merged into project.


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

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

#929 revert faulty code cleanup commit to fix garbled text in some cases

As discussed in #915 commit c0ff3696b950a0fce6fd7e08f9b707969f046e4b causes Latin text to be mispronounced after Javanese or Cyrillic characters are read. While it is not entirely clear why this happens it has been decided that reverting faulty code cleanup is the best course of action for now. cc @jaacoppi . I've tested this only under Windows with VS 2019 as the build environment and I can confirm this revert fixes the issue for me.


[espeak-ng:master] New Comment on Issue #915 Occurrence of Javanese characters causes Espeak to mispronounce later text
By lukaszgo1:

I've created #929


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

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

#930 Prevent compile-phonemes use of phontab, en_dict

espeak-ng --compile-phonemes generates phontab, but during the generation it starts by reading the old phontab. If works just fine, apart from an error message, if this doesn't exist but if it does exist it is not clear whether it might end up using old or bad data (e.g. possibly crashing if phontab is corrupted making it very non-obvious how to fix the problem...)

The same applies to en_dict as a result of espeak-ng defaulting to the voice 'en'; again the phontab build works if en_dict is absent but a spurious message is output. It's not clear what would happen if someone tried to build a reduced espeak-ng configuration with just one (non 'en') language.

The fix is to change espeak_ng_CompilePhonemeDataPath to call LoadVoice with a new flag to indicate the voice structure is just required to compile phoneme data (I changed the error message as well to make it clear where it comes from - there are two identical error messages, the other one is in voices.c)

Within LoadVoice the flag causes LoadVoice to not set a default language or voicename and to skip loading the old phontab or dictionary (both of which fail in a git clean -dfx build).

I checked the result by doing a compile from-scratch build sequence with and without the patch, i.e. I did:

git clean -dfx ./autogen.sh ./configure --prefix=a-test-directory make make install

Then I compared the two copies of "a-test-directory" as well as the log file output:

$ diff -r logs/* diff -r logs/original/make.log logs/patched/make.log 175,176d174 < Unknown phoneme table: 'en' < Can't read dictionary file: '/home/jbowler/src/espeak-ng/master/espeak-ng-data/en_dict'

$ diff --no-dereference -r local.original local.patched Binary files local.original/bin/speak-ng and local.patched/bin/speak-ng differ Binary files local.original/lib/libespeak-ng.a and local.patched/lib/libespeak-ng.a differ Binary files local.original/lib/libespeak-ng.so.1.1.51 and local.patched/lib/libespeak-ng.so.1.1.51 differ

So the change has not altered phontab or any of the other generated files, only the binaries as would be expected. (Note that I am comparing truely clean builds; what you get if you download the source and build from scratch. This is the standard approach for people who build for distribution.)

Signed-off-by: John Bowler jbowler@...


[espeak-ng:master] New Comment on Pull Request #930 Prevent compile-phonemes use of phontab, en_dict
By jbowler:

This is the fix for PR #928. A similar bug exists in the dictionary creation with a clean build. By "clean" I mean freshly cloned or git clean -dfx, not make clean or even make distclean, which doesn't work properly. I can't fix that bug in the same way, but I can submit a patch to work round it in Makefile.am