saykanaコマンドのネイティブスピーカーぶり
saykanjiコマンドは何とかバイリンガルになったが、実は片言の日本語しかしゃべれていない...。ところが、元になったsaykanaコマンドの実力はこんなもんじゃない。渡す発音情報付きテキストが適切であれば、十分、ネイティブスピーカーのレベルを実現できる能力を秘めているのだ。
発音情報付きテキスト(かな表記音声記号列)の仕様については、AquesTalk音声記号列仕様書として詳細が公開されている。この仕様書を読むと、自分がごく普通にしゃべっている日本語の無意識の部分が明かされて、結構面白い。以下、読みながら実際にsaykanaで試してみた。(ターミナルにコピー&ペーストすれば、そのまま実行できると思う。)
アクセント重要
saykana "エルメス" #棒読み saykana "エ'ルメス" #アクセントあり saykana "アクセサリー" #棒読み saykana "ア'クセサリー" #アクセントあり
子音だけの音(無声音)
saykana "エルメス" #棒読み saykana "エ'ルメス" #アクセントあり、えるめすぅ saykana "エ'ルメ_ス" #アクセントあり、えるめすっ saykana "アクセサリー" #棒読み saykana "ア'クセサリー" #アクセントあり、「ク」を長めに発音 saykana "ア'_クセサリー" #アクセントあり、「ク」を短かめに発音 saykana "おつかれさまです" #棒読み saykana "おつかれさまで'す" #アクセントあり、...ですぅ saykana "おつかれさまで'す。" #アクセントあり、...ですっ
句読点によるアクセントの違い
saykana "おつかれで'すか" #棒読み saykana "おつかれで'すか。" #棒読みと同じ saykana "おつかれで'すか、" #最初からキーが高い感じ saykana "おつかれで'すか?" #最後の音が上がり気味 saykana "かんげき" #棒読み(→→→→) saykana "かんげき。" #棒読みと同じ(→→→→) saykana "かんげき、" #棒読みに比べて最初から上がり続ける感じ(↑↑↑↑) saykana "かんげき?" #最後の音だけ上がる感じ(→→→↑)
音節区切り
saykana "わたしわまっくをかったしあわせだった" #棒読み saykana "わたしわ、まっくをかった。しあわせだった。" #句読点による区切り、無音部分あり saykana "わたしわまっくをかったしあわせだった" #棒読み saykana "わたしわ/まっくをかった/しあわせだった" #「/」による区切り、無音部分なし saykana "あくせんとなどのかなめとなる" #棒読み saykana "あくせんと/などの/かなめとなる" #音節を区切る / saykana "あ'くせんと/な'どの/かなめとな'る" #アクセントと音節区切りでより自然に
音節区切りの強度
saykana "あ'くせんと;な'どの" #「など」の部分が強調される感じ saykana "あ'くせんと/な'どの" #標準 saykana "あ'くせんと+な'どの" #「など」の部分が弱められる感じ
アクセントは1音節1箇所の制限
saykana "あくせんとなどの" #棒読み saykana "あ'くせんとな'どの" #アクセント2箇所は最初のアクセントが無効になった saykana "あくせんとな'どの" #つまり、後ろ1箇所のアクセントと同等だった saykana "あ'くせんと/な'どの" #音節を区切ると最初のアクセントも有効になった
がぎぐげご
- がぎぐげご破裂音(喉の奥で発音する感じ)の例:
- 学校(がっこう)、銀行(ぎんこう)
- がぎぐげご鼻音(鼻で発音する感じ)の例:
- 鏡(かがみ)、鍵(かぎ)
saykana "みょうガ" #破裂音の強制指定、カタカナの「ガ」 saykana "みょうが" #自動選択、ひらがなの「が」 saykana "みょうカ゜" #鼻音の強制指定、カタカナの「カ」と「゜」
数字の読み
saykana "1234" saykana "<NUMK VAL=1234>" saykana "10ぷんご'に/き'て/ください。" #いちぜろぷんごにきてください saykana "<NUMK VAL=10 COUNTER=ふん>ご'に/き'て/ください。" #じゅっぷんごにきてください saykana "でんわば'んごうわ、09912345678です。" #先頭から4桁ごとに区切る saykana "でんわば'んごうわ、099 1234 5678です。" #スペースで区切る(無音部分なし) saykana "でんわば'んごうわ、099-1234−5678です。" #ハイフンで区切る(無音部分あり)
ここまで、普段意識できない日本語の話し方の細部を垣間見ることが出来た。無意識のうちに、こんなにも多くのことを自然と区別して話したり、聴いたりしていたとは...。
日本人は漢字仮名混じりの文章を見て、当り前のようにアクセントや区切りをつけて、複数の読み方から最適な発音を選択して、流暢な日本語でしゃべっていたのであった。
同じことをsaykanjiコマンドにやらせるのは、相当困難だ。見慣れた漢字仮名混じりの文章から、適切なアクセント・文節区切り・その他適切な発音を導く作業は、膨大な知識(アクセント辞書)と工夫(文節区切りの方法)が必要になりそう。
saykanaコマンドは、必要十分な発音情報付きの仮名テキストを渡すことで、かなり流暢な日本語で読み上げてくれる。発音レベルとしては十分ネイティブスピーカーだ。
あとはsaykanjiコマンドが、saykanaコマンドに向けて如何に適切な発音情報を渡すことができるか、それが問題なのだ。バイリンガルでかつ、ネイティブスピーカーなsaykanjiコマンドへの道程は遠い...。
興味
その他の日本語スピーチソフトウェアも見つけた。どれほどのネイティブぶりなのだろうか?
- iSpeech
- 自分のMacOSX 10.5.7環境では起動しなかった...。
- 参考:http://veadardiary.blog29.fc2.com/blog-entry-1157.html
まだETCを使っていなかった数年前まで、高速道路出口の料金精算で、チケット渡すと料金が表示され、同時に聞くに堪えない美しい日本語で、精算機が料金を読み上げていた...。今でもそうなのだろうか?*1もしそうならNEXCOに教えてあげたい。saykanaコマンドあるよ!
*1:この料金読み上げ機能って、自分にとっては、どう考えても不要だ。大抵は事前に料金表で確認していて、チケットと走行料金は同時に渡してしまう。分からない時は、素早く料金所のおじさんに尋ねるので、辿々しい料金読み上げを最後までのんびり聴いていた試しがない。いつも車は言い終える前に動き始めて、ゴニョゴニョ言う精算機の声が遠ざかって行く...。