jp: basic Hiragana support (the "fifty sounds")

This commit is contained in:
Reece H. Dunn
2017-01-01 10:12:00 +00:00
parent aa83a834b3
commit 51ba95dab4
5 changed files with 407 additions and 4 deletions
+1
View File
@@ -0,0 +1 @@
// Japanese
+162
View File
@@ -0,0 +1,162 @@
// Japanese
//
// Copyright (C) 2017 Reece H. Dunn
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, see: <http://www.gnu.org/licenses/>.
// Hiragana
.group あ
あ a_" // a
.group い
い i // i
.group う
う M_Bo // u
.group え
え e_o // e
.group お
お o_o // o
.group か
か ka_" // ka
.group き
き ki // ki
.group く
く kM_Bo // ku
.group け
け ke_o // ke
.group こ
こ ko_o // ko
.group さ
さ sa_" // sa
.group し
し s\\i // shi
.group す
す sM_Bo // su
.group せ
せ se_o // se
.group そ
そ so_o // so
.group た
た ta_" // ta
.group ち
ち t_s\\i // chi
.group つ
つ t_sM_Bo // tsu
.group て
て te_o // te
.group と
と to_o // to
.group な
な na_" // na
.group に
に ni // ni
.group ぬ
ぬ nM_Bo // nu
.group ね
ね ne_o // ne
.group の
の no_o // no
.group は
は ha_" // ha
.group ひ
ひ Ci // hi
.group ふ
ふ p\\M_Bo // fu
.group へ
へ he_o // he
.group ほ
ほ ho_o // ho
.group ま
ま ma_" // ma
.group み
み mi // mi
.group む
む mM_Bo // mu
.group め
め me_o // me
.group も
も mo_o // mo
.group や
や ja_" // ya
.group ゆ
ゆ jM_Bo // yu
.group よ
よ jo_o // yo
.group ら
ら r`a_" // ra
.group り
り r`i // ri
.group る
る rM_Bo // ru
.group れ
れ re_o // re
.group ろ
ろ ro_o // ro
.group わ
わ wa_" // wa
.group ゐ
ゐ i // wi (archaic)
.group ゑ
ゑ we_o // we (archaic)
.group を
を o_o // wo
.group ん
ん n // n
+6
View File
@@ -0,0 +1,6 @@
language jp
name japanese
phonemes ipa
gender male
intonation 4
+235 -1
View File
@@ -1,7 +1,241 @@
// International Phonetic Alphabet: Narrow Transcription
//
// Copyright (C) 2016 Reece H. Dunn
// Copyright (C) 2017 Reece H. Dunn
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, see: <http://www.gnu.org/licenses/>.
// This is using the X-SAMPA transcriptions
// (http://www.phon.ucl.ac.uk/home/sampa/x-sampa.htm).
// Vowels /////////////////////////////////////////////////////////////////////
// Close Vowels
phoneme i
vowel starttype #i endtype #i
length 160
FMT(vowel/i)
endphoneme
phoneme M_Bo // M_B_o
vowel starttype #u endtype #u
ipa ɯᵝ
length 160
FMT(vowel/u_bck)
endphoneme
// Mid Vowels
phoneme e_o
vowel starttype #e endtype #e
ipa e̞
length 160
FMT(vowel/e_8)
endphoneme
phoneme o_o
vowel starttype #o endtype #o
ipa o̞
length 160
FMT(vowel/oo_3)
endphoneme
// Open Vowels
phoneme a_"
vowel starttype #a endtype #a
ipa ä
length 160
FMT(vowel/a)
endphoneme
// Consonants ----------
phoneme m
vcd blb nasal
Vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk
lengthmod 4
NextVowelStarts
VowelStart(m/m@)
VowelStart(m/ma)
VowelStart(m/me)
VowelStart(m/mi)
VowelStart(m/mo)
VowelStart(m/mu)
EndSwitch
IF nextPh(isNotVowel) THEN
FMT(m/m_)
ENDIF
endphoneme
phoneme n
vcd alv nasal
Vowelout f1=2 f2=1500 -300 250 f3=-100 80 rms=20 brk
lengthmod 4
NextVowelStarts
VowelStart(n/n@)
VowelStart(n/na)
VowelStart(n/ne)
VowelStart(n/ni)
VowelStart(n/no)
VowelStart(n/nu)
EndSwitch
IF nextPh(isNotVowel) THEN
FMT(n/n_)
ENDIF
endphoneme
// Plosives
phoneme t
vls alv stop
lengthmod 2
Vowelin f1=0 f2=1700 -300 300 f3=-100 80
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
WAV(ustop/t, 90)
endphoneme
phoneme k
vls vel stop
lengthmod 2
Vowelin f1=0 f2=2300 200 300 f3=-200 80
Vowelout f1=0 f2=2300 300 400 f3=-200 80 rms=20
WAV(ustop/k)
endphoneme
// Sibilant Affricates
phoneme t_s
vls alv afr sibilant
lengthmod 2
Vowelin f1=0 f2=1700 -300 300 f3=-100 80
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
WAV(ustop/ts, 70)
endphoneme
phoneme t_s\\
vls pal afr sibilant palatal
ipa tɕ
lengthmod 2
Vowelin f1=0 f2=2700 400 600 f3=300 80 rate len=70
WAV(ustop/ts_pzd)
endphoneme
// Sibilant Fricatives
phoneme s
vls alv frc sibilant
lengthmod 3
Vowelin f1=0 f2=1700 -300 300 f3=-100 80
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
WAV(ufric/s)
endphoneme
phoneme s\\
vls pal frc sibilant palatal
ipa ɕ
lengthmod 3
Vowelin f1=1 f2=2700 400 600 f3=200 70 rate len=70
Vowelout f1=1 f2=2700 400 600 f3=200 70 rate
WAV(ufric/sh_pzd)
endphoneme
// Fricatives
phoneme p\\
vls blb frc
ipa ɸ
Vowelout f1=0 f2=1000 -500 -350 f3=-200 80
lengthmod 2
WAV(ufric/f)
endphoneme
phoneme C
vls pal frc palatal
ipa ç
lengthmod 3
Vowelin f1=0 f2=2700 400 600 f3=200 70
Vowelout f1=0 f2=2700 400 600 f3=200 70 rms=20
WAV(ufric/ch)
endphoneme
// Approximant
phoneme j
liquid palatal starttype #i
lengthmod 7
NextVowelStarts
VowelStart(j/j@)
VowelStart(j/ja)
VowelStart(j/je)
VowelStart(j/ji)
VowelStart(j/jo)
VowelStart(j/ju)
EndSwitch
IF nextPh(isNotVowel) THEN
Vowelout len=70
FMT(j/j_)
ENDIF
endphoneme
// Flap or Tap
phoneme r`
liquid rfx
ipa ɽ
lengthmod 3
Vowelout f1=3 f2=1400 -400 300 f3=-400 80 rms=35 len=15 colr=2
Vowelin f1=2 f2=1400 -400 300 f3=-400 80 len=20
FMT(r3/@tap_rfx)
endphoneme
// Coarticulated
phoneme w
liquid
lengthmod 7
starttype #u
NextVowelStarts
VowelStart(w/w@)
VowelStart(w/wa)
VowelStart(w/we)
VowelStart(w/wi)
VowelStart(w/wo)
VowelStart(w/wu)
EndSwitch
IF nextPh(isNotVowel) THEN
Vowelout len=50
FMT(w/w_)
ENDIF
endphoneme
+3 -3
View File
@@ -1669,6 +1669,9 @@ endphoneme
// ADDITIONAL PHONEME TABLES
//*******************************************************************
phonemetable ipa base
include ph_ipa
phonemetable consonants base
include ph_consonants
@@ -1979,6 +1982,3 @@ include ph_guarani
phonemetable ky base
include ph_kyrgyz
phonemetable ipa base
include ph_ipa