SSML
since 2010-11-19
Speech Synthesis Markup Language (SSML)は W3C が標準化を進めている音声合成マークアップ言語。
W3C は 2010年9月に Speech Synthesis Markup Language (SSML) Version 1.1 を Recommendation にした。
- AWS polly の情報は移動しました
日本語TTSの実装
以下 2010年から2011年にかけて書いていた記事です。
Pronunciation Lexicon Specification (PLS) は daisy でも利用される。
電子書籍変換ツール daisy-pipeline で利用可能な PLS 対応エンジンが求められている。
DAISY4はEPUB3と協調しつつ標準化を進めている。
- 音声合成記述言語 SSML 1.1 ミツエーリンクスのBLOG
- 《電子書籍》肉声とのハイブリッド読み上げなどを検討--TTS推進協の第5回テキスト… ユニバーサロンリポート (毎日JP)
以下、オープンソース音声合成エンジンである galateatalk および open-jtalk に基づいた PLS 実装について検討する。
スクリーンリーダー nvdajp の実装に使っている libopenjtalk および ojt-python をベースに、 仕様を確認して、プロトタイプ実装をして、 daisy-pipeline に役立ててもらえる実装に発展させたい。
現状
TODO: 商用の日本語音声合成エンジンにおける SSML1.1 のサポート状況は?
GalateaTalk
GalateaTalk は JEIDA-62-2000 日本語テキスト音声合成用記号 を実装している。
読み表記に関して JEIDA-62-2000 は 音声認識のための読み表記 情報処理学会 試行標準 IPSJ-TS 0004:2003 (解説) とほぼ同一とされている。
GalateaTalkのテキスト解析処理の詳細 (sf.jp)
Galatea Dialog Studio のVoiceXML実装では、SSML 1.0 の一部の要素を JEIDA (JEITA) マークアップに変換して GalateaTalk に送っている。
Open JTalk
Open JTalk はマークアップを実装していない。
要求仕様とテストケース
誰かが作り始めているのだと思うが。。
sub要素
<?xml version="1.0" encoding='utf-8' ?> <speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/10/synthesis http://www.w3.org/TR/speech-synthesis/synthesis.xsd" xml:lang="ja"> 荒川区<sub alias="にっぽり">日暮里</sub> </speak>
w要素
サンプルを考えてみる。
<?xml version="1.0" encoding='utf-8' ?> <speak version="1.1" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/10/synthesis http://www.w3.org/TR/speech-synthesis11/synthesis.xsd" xml:lang="ja"> <token>東京都</token><token>文京区</token> 茨城県<w>かすみがうら市</w> </speak>
phoneme要素
要確認:JEITA-2000 の発音表記文字セットの定義と、本当に下記のようにつかってもいいのかどうか。
下記ではアクセント記号「’」を使っている。
<?xml version="1.0" encoding='utf-8' ?> <speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/10/synthesis http://www.w3.org/TR/speech-synthesis/synthesis.xsd" xml:lang="ja"> <phoneme alphabet="x-JEITA-2000" ph="と’まと"> トマト </phoneme> </speak>