Browse Source

Preserve the sourceix property of a deleted phoneme for replaced phonemes.

master
Reece H. Dunn 6 years ago
parent
commit
cf6d14783c

+ 8
- 1
src/libespeak-ng/phonemelist.c View File

bool word_end; bool word_end;
PHONEME_LIST2 *plist2; PHONEME_LIST2 *plist2;
PHONEME_TAB *next = NULL; PHONEME_TAB *next = NULL;
int deleted_sourceix = -1;


for (ix = 0; (ix < n_ph_list2) && (n_plist_out < N_PHONEME_LIST); ix++) { for (ix = 0; (ix < n_ph_list2) && (n_plist_out < N_PHONEME_LIST); ix++) {
plist2 = &ph_list2[ix]; plist2 = &ph_list2[ix];
if (deleted_sourceix != -1) {
plist2->sourceix = deleted_sourceix;
deleted_sourceix = -1;
}


// don't do any substitution if the language has been temporarily changed // don't do any substitution if the language has been temporarily changed
if (!(plist2->synthflags & SFLAG_SWITCHED_LANG)) { if (!(plist2->synthflags & SFLAG_SWITCHED_LANG)) {
} }
} }


if (plist2->phcode == 0)
if (plist2->phcode == 0) {
deleted_sourceix = plist2->sourceix;
continue; // phoneme has been replaced by NULL, so don't copy it continue; // phoneme has been replaced by NULL, so don't copy it
}
} }


// copy phoneme into the output list // copy phoneme into the output list

+ 1
- 1
tests/language-phonemes.test View File

test_lang en-029 cfd13bc57be7f495935c662472eae3d2c7200ebd "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@" test_lang en-029 cfd13bc57be7f495935c662472eae3d2c7200ebd "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@"
test_lang en-GB-scotland b802f6862386b748d4224b26a0fde05abfd20b3d "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@" test_lang en-GB-scotland b802f6862386b748d4224b26a0fde05abfd20b3d "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@"
test_lang en-GB-x-gbclan 8f3d17600cfbfe77c5e92a7f8a89544a78452a7a "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@" test_lang en-GB-x-gbclan 8f3d17600cfbfe77c5e92a7f8a89544a78452a7a "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@"
test_lang en-GB-x-gbcwmd 676ef3372d9487f3c1449f5d01c7d777d08d9661 "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@"
test_lang en-GB-x-gbcwmd 7c4102e1193bf1c64f8987d6fc9f830410023e3c "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@"
test_lang en-GB-x-rp f55d1a2c9ba5d69a10ccdd24f66e861bed0d0cff "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@" test_lang en-GB-x-rp f55d1a2c9ba5d69a10ccdd24f66e861bed0d0cff "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@"
test_lang en-US 1695d22c71aa55be6d0c1e123d332a17cdd4a4ca "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@" test_lang en-US 1695d22c71aa55be6d0c1e123d332a17cdd4a4ca "ma na Na pa ta ka ba da ga fa Ta sa Sa xa ha va Da za Za tSa dZa la ra ja wa t2a t#a d#a z#a r-a z/2a w#a m- n- N- _:_ mI mE ma m0 mV mU mi: mA: mO: mu: m3: mA@ mO@ mo@ mU@ mi@3 mIR mVR mi@ me@ mi m@ m3 me# mI# mI2 meI maI mOI moU maU maa mO2 maI@ maI3 maU@"
test_lang eo cc2f7f352c6d299c81f6f95e730883f052dbc597 "ma na pa ta ka ba da ga fa sa Sa xa ha va za Za tsa tSa dza dZa la ja wa ra _:_ ma me mo mi mu maU meU maI meI moU muI" test_lang eo cc2f7f352c6d299c81f6f95e730883f052dbc597 "ma na pa ta ka ba da ga fa sa Sa xa ha va za Za tsa tSa dza dZa la ja wa ra _:_ ma me mo mi mu maU meU maI meI moU muI"

+ 1
- 1
tests/language-pronunciation.test View File

"kit dress trap lot strut foot fleece palm thought goose nurse start north force cure near square term bird happy comma letter explore roses rabbit face price choice goat mouth bath cloth million divided" "kit dress trap lot strut foot fleece palm thought goose nurse start north force cure near square term bird happy comma letter explore roses rabbit face price choice goat mouth bath cloth million divided"


test_phonemes en-GB-x-gbcwmd "Lexical Sets" \ test_phonemes en-GB-x-gbcwmd "Lexical Sets" \
" k'It dr'Es tr'ap l'0t str'Vt f'Ut fl'i:s p'A:m T'O:t g'u:s n'3:s st'A@t n'O@T f'O@s kj'U@ n,i@3 skw'e@ t'3:m b'3:d'api k'0m@ l'Et3r- Ekspl'O@ r'oUzI2z r'abIt f'eIs pr'aIs tS'OIs g'oUt m'aUT b'aaT kl'0T m'Ili@n dI2v'aIdI2d" \
" k'It dr'Es tr'ap l'0t str'Vt f'Ut fl'i:s p'A:m T'O:t g'u:s n'3:s st'A@t n'O@T f'O@s kj'U@ n,i@3 skw'e@ t'3:m b'3:d 'api k'0m@ l'Et3r- Ekspl'O@ r'oUzI2z r'abIt f'eIs pr'aIs tS'OIs g'oUt m'aUT b'aaT kl'0T m'Ili@n dI2v'aIdI2d" \
"kit dress trap lot strut foot fleece palm thought goose nurse start north force cure near square term bird happy comma letter explore roses rabbit face price choice goat mouth bath cloth million divided" "kit dress trap lot strut foot fleece palm thought goose nurse start north force cure near square term bird happy comma letter explore roses rabbit face price choice goat mouth bath cloth million divided"


test_phonemes en-GB-x-rp "Lexical Sets" \ test_phonemes en-GB-x-rp "Lexical Sets" \

+ 3
- 0
tests/translate.test View File

test_phonemes hi " dUk'a:n" "दुकान" test_phonemes hi " dUk'a:n" "दुकान"
test_phonemes hi " ka:n'u:n" "कानून" test_phonemes hi " ka:n'u:n" "कानून"


# A deleted phoneme at the start of a word should preserve the sourceix property.
test_phonemes en-GB-x-gbcwmd " 'av" "have"

#----- Emoji [http://www.unicode.org/reports/tr51/tr51-12.html] ----- #----- Emoji [http://www.unicode.org/reports/tr51/tr51-12.html] -----


# ED-3 - emoji_character # ED-3 - emoji_character

Loading…
Cancel
Save