パイグ語音声サンプル

1. 録音part1

1-1. 録音

Google検索が提供しているメトロノームでBPM100を鳴らしながら、4拍ごとにパイグ語の単語を言っていった。

綴りから読みが確定しないzでテンパってミスったので、そこまでで一旦収録を止め、praige.mp3として保存。

1-2. 分割

そうしたらffmpegでffmpeg -i praige.mp3 -f segment -segment_time 2.4 -c copy out%03d.mp3とすると2.4秒(BPM100で4回に1回言っているのだから1分間に25回、4分間に100回、よって2.4秒に1回)ごとに切り出せる。言ったサンプルがちょうど2つのファイルに分かれたらどうしようかとも思ったが、そんなことはなかった。

1-3. 改名

録音した単語は

ue
hup
xi
zi
zi1
ban2
a
ap1
am
at
ak1
ai2
aip1
aim2
aik2
aum2
auk2
ia1
iam1
iat1
ian1
iak1
ua
uai1
uaip2
i2
im1
in2
ik2
y
y1
yp
yt2
yn2
yk2
ut2
un1
em
et2
o1
om2
ie
iei2
io
io1
io2
ue1
uep
uep1
uet
uo1
pa2
pai2
pau1
pia2
pua2
puat2
pit1
py
put
pui1
pet2
pek1
pek2
po1
pok
bap
bai2
bait
bau2
bia1
bu1
bup2
bum1
be1
bet2
bo1
bot1
bon2
buo1
ma1
mam1
man1
mak1
mak2
maun1
mua2
muak1
mit
mit2
mut2
mun1
mui1
mo1
mot2
mok1
muo1
can2
cai1
cuau2
cy2
cuk2
cet2
cei2
co1
cue
cue1
cuet
cuop2
sa1
sam1
sat2
sak2
sau2
saup1
sia1
sip1
sit1
sin1
sik2
sy2
syt2
su1
sui1
sep
so1
son1
sue1
suo2
xa2
xai1
xau1
xi1
xit2
xy1
xep2
xem1
xo1
xo2
xom1
xot1
xuo1            
        

なので、このリストに基づいて改名する。

なにで書くかちょっと迷った挙句、まあWindows環境だしVBSでいいかと判断し、テキトーにググりながら

Dim Fso
Set Fso = WScript.CreateObject("Scripting.FileSystemObject")

Dim arr
arr = Array("ue", "hup", "xi", "zi", "zi1", "ban2", "a", "ap1", "am", "at", "ak1", "ai2", "aip1", "aim2", "aik2", "aum2", "auk2", "ia1", "iam1", "iat1", "ian1", "iak1", "ua", "uai1", "uaip2", "i2", "im1", "in2", "ik2", "y", "y1", "yp", "yt2", "yn2", "yk2", "ut2", "un1", "em", "et2", "o1", "om2", "ie", "iei2", "io", "io1", "io2", "ue1", "uep", "uep1", "uet", "uo1", "pa2", "pai2", "pau1", "pia2", "pua2", "puat2", "pit1", "py", "put", "pui1", "pet2", "pek1", "pek2", "po1", "pok", "bap", "bai2", "bait", "bau2", "bia1", "bu1", "bup2", "bum1", "be1", "bet2", "bo1", "bot1", "bon2", "buo1", "ma1", "mam1", "man1", "mak1", "mak2", "maun1", "mua2", "muak1", "mit", "mit2", "mut2", "mun1", "mui1", "mo1", "mot2", "mok1", "muo1", "can2", "cai1", "cuau2", "cy2", "cuk2", "cet2", "cei2", "co1", "cue", "cue1", "cuet", "cuop2", "sa1", "sam1", "sat2", "sak2", "sau2", "saup1", "sia1", "sip1", "sit1", "sin1", "sik2", "sy2", "syt2", "su1", "sui1", "sep", "so1", "son1", "sue1", "suo2", "xa2", "xai1", "xau1", "xi1", "xit2", "xy1", "xep2", "xem1", "xo1", "xo2", "xom1", "xot1", "xuo1")

For i = 1 to 142
Fso.MoveFile ("out" & Mid(CStr(1000 + i), 2, 3) & ".mp3"), (arr(i-1) & ".mp3")
Next

を書き上げ改名。

2. 録音part2

2-0. tcとtx

zがze1の音であるかzo1の音であるかは綴りから予測できないので、ファイル名の末尾にtcかtxかを付けることで区別することとした。

2-1. 録音

Google検索が提供しているメトロノームでBPM100を鳴らしながら、4拍ごとにパイグ語の単語を言っていった。

o周りの意味が若干怪しかった気もするが一応テンパらず全部収録ができた。praige2.mp3として保存。

2-2. 分割

そうしたらffmpegでffmpeg -i praige2.mp3 -f segment -segment_time 2.4 -c copy out%03d.mp3とすると2.4秒(BPM100で4回に1回言っているのだから1分間に25回、4分間に100回、よって2.4秒に1回)ごとに切り出せる。言ったサンプルがちょうど2つのファイルに分かれたりすることがないよう、今回は「1, 2, 3(録音開始), test, 2, 3, 4, zat1, 2, 3, 4」とするようにした。ちゃんと上手くいった。

2-3. 改名

録音した単語は

zat1_tc
zit1_tc
zui1_tc
zuit2_tc
zo1_tc
zuo1_tc
zap2_tx
zat1_tx
zau_tx
zip1_tx
zit1_tx
ze1_tx
zep1_tx
zie1_tx
ta
ta1
tam2
tat2
tan1
tak1
tai
tau2
taun1
tauk1
tia1
tia2
tua1
tuai2
tit1
tin1
ty
tyn1
tu2
tum1
tut1
tun2
tuk2
tui2
tuik1
tet
ten1
to2
dat2
dau2
daut1
dit1
dui
det
dop1
na1
nap1
nam2
nan2
naip2
nau
nua2
nuak1
ni1
nim2
nin1
nik2
num1
nut2
nun1
nui2
ne2
net2
no1
nom2
non1
nie
niek1
nuok2
la1
lai1
lia1
lua1
li1
li2
lip
lit1
lin
ly
lu2
lup1
let1
lek1
lo
lo1
lot2
lok1
liok1
ka1
kat1
kat2
kan1
kak
kai1
kait
kaik
kaun1
kauk2
kia1
kiak1
kua2
kuak1
kuai1
kuai2
ki1
kit
kit1
kin2
kik1
ky1
ky2
ku
kut2
kun2
ket
ko1
kot
kot2
kok1
kue
kuo1
kuot1
gat2
gak1
gau2
giau1
gua2
gy1
guk2
gui2
ge
gek
hak2
hau2
hauk1
hia1
hua1
huap1
huat1
huai2
hi1
hy2
hup1
hut2
hui2
he
hem
hem1
hen
hei2
ho
ho1
ho2
hop1
hon1
hok1
hio1
hue
hue1
huep2
huet
huo2
huok1
huok2
        

なので、このリストに基づいて改名する。

さっき書いたVBSを編集して、

Dim Fso
Set Fso = WScript.CreateObject("Scripting.FileSystemObject")

Dim arr
arr = Array("zat1_tc", "zit1_tc", "zui1_tc", "zuit2_tc", "zo1_tc", "zuo1_tc", "zap2_tx", "zat1_tx", "zau_tx", "zip1_tx", "zit1_tx", "ze1_tx", "zep1_tx", "zie1_tx", "ta", "ta1", "tam2", "tat2", "tan1", "tak1", "tai", "tau2", "taun1", "tauk1", "tia1", "tia2", "tua1", "tuai2", "tit1", "tin1", "ty", "tyn1", "tu2", "tum1", "tut1", "tun2", "tuk2", "tui2", "tuik1", "tet", "ten1", "to2", "dat2", "dau2", "daut1", "dit1", "dui", "det", "dop1", "na1", "nap1", "nam2", "nan2", "naip2", "nau", "nua2", "nuak1", "ni1", "nim2", "nin1", "nik2", "num1", "nut2", "nun1", "nui2", "ne2", "net2", "no1", "nom2", "non1", "nie", "niek1", "nuok2", "la1", "lai1", "lia1", "lua1", "li1", "li2", "lip", "lit1", "lin", "ly", "lu2", "lup1", "let1", "lek1", "lo", "lo1", "lot2", "lok1", "liok1", "ka1", "kat1", "kat2", "kan1", "kak", "kai1", "kait", "kaik", "kaun1", "kauk2", "kia1", "kiak1", "kua2", "kuak1", "kuai1", "kuai2", "ki1", "kit", "kit1", "kin2", "kik1", "ky1", "ky2", "ku", "kut2", "kun2", "ket", "ko1", "kot", "kot2", "kok1", "kue", "kuo1", "kuot1", "gat2", "gak1", "gau2", "giau1", "gua2", "gy1", "guk2", "gui2", "ge", "gek", "hak2", "hau2", "hauk1", "hia1", "hua1", "huap1", "huat1", "huai2", "hi1", "hy2", "hup1", "hut2", "hui2", "he", "hem", "hem1", "hen", "hei2", "ho", "ho1", "ho2", "hop1", "hon1", "hok1", "hio1", "hue", "hue1", "huep2", "huet", "huo2", "huok1", "huok2")

For i = 1 to 168
Fso.MoveFile ("out" & Mid(CStr(1000 + i), 2, 3) & ".mp3"), (arr(i-1) & ".mp3")
Next

改名。

3. 録音part3

3-1. 再収録

詳しくは本編に書いたが、発音をSYに聞いてもらったところ一部再収録となった。

buo1 
muo1 
so1
io1
no1
ko1
o1
bo1
zo1_tc
lo
let1
cei2
io
zep1_tx
a           

を再収録。praige3.mp3として保存。

ffmpegで切り出す前に、前回収録した不合格だったやつをaudio_suboptimalフォルダに隔離。

そうしたらffmpegでffmpeg -i praige3.mp3 -f segment -segment_time 2.4 -c copy out%03d.mp3とすると2.4秒(BPM100で4回に1回言っているのだから1分間に25回、4分間に100回、よって2.4秒に1回)ごとに切り出せる。

これぐらいなら手動で改名してもいいので手動で改名。