Open JTalk

Open JTalk（おーぷんじぇいとーく）は、名古屋工業大学で開発された音声合成技術および同技術を応用した、日本語向けのテキストトゥスピーチ（文章読み上げ）ソフト。日本語の文章を入力することで音声を合成し、読み上げることができる。

概要 

名古屋工業大学にて開発・メンテナンスが続けられている日本語音声合成ソフトウェア。オープンソースで公開されているスタンドアロン版と、Webサイトで公開されているオンライン版の2種類がある。

合成技術にHMM（Hidden Markov Model、隠れマルコフモデル）を採用しており、少ないメモリでも動作するのが特徴。その特徴からRaspberry Pi上での音声合成ライブラリとしての利用例も多い。

パラメータとしては「声質」（フォルマントシフト）、「ピッチシフト」（声の高さ）、「話速」に対応し、ボイスを切り替えることで感情表現にも対応する。

オンライン版 
公式サイト 上でシステムを公開しており、誰でも無料で利用可能。

指定可能なボイス（音響モデル）は2種類（男性1種類、女性4感情4種類）。

オープンソース版 
SourceForgeにてソースコードが公開されている。利用にはビルドが必要。ビルドすることで各種OSに対応する。修正BSDライセンスで公開されている。
音声合成にはさらに辞書データとボイスデータ（音響モデル、htsvoice形式）が必要。
ライセンスに従うことでライブラリとして他ソフトウェアに組み込むことも可能。

導入 

複数のOSに対応しているものの、OSS版はソースコードとしての公開のため導入にはビルドが必要となる。有志によって簡単に使えるように、さまざまな導入方法が用意されている。

アプリとしての導入方法 

一部を除き、原則コマンドラインアプリとしての入手になる。

SHABERU
 Windows向けのGUIのあるフリーソフト。追加音響モデルにも対応する。

パッケージマネージャを利用した導入方法 

辞書データや音響モデルの追加導入が必要な場合がある(APT等)。また、導入後ビルドが必要な場合もある(pyopenjtalk等)。

Docker
 docker pull u6kapps/open_jtalk 
Homebrew
 brew install open-jtalk 
APT
 apt install open-jtalk 
 apt install open-jtalk-mecab-naist-jdic ※辞書データ
 apt install hts-voice-nitech-jp-atr503-m001 ※音響モデル
Python
 pip install pyopenjtalk 
.NET(NuGet)
 Install-Package SharpOpenJTalk 
Node.js (npm)
 npm install openjtalk

音響モデル 

Open JTalkで利用可能な音響モデル（ボイスライブラリ、htsvoice形式）の例。音響モデルは自作することも可能であり、SHABERU等むけにユーザーが制作した音響モデルが配布されている（規約で許可されていればOpen JTalkで利用可能）。

NIT ATR503 M001 

標準男声音響モデル。Open JTalk本体、辞書データと共に配布されている。
クリエイティブ・コモンズ・ライセンス3.0ライセンス。

メイ 

メイ（HTS Voice "Mei"）は名古屋工業大学のMMD Agentを用いたデジタルサイネージでキャンパス案内を行う女性キャラクター。MMD Agentと共にクリエイティブ・コモンズ・ライセンスで配布されている。

Open JTalkで追加女声音響モデルとして利用可能。5つの感情別音響モデル（normal, happy, angry, sad, bashful）がある。

タクミ 

タクミ（HTS Voice "Takumi"）はメイと共に名古屋工業大学のMMD Agentを用いたデジタルサイネージでキャンパス案内を行う男性キャラクター。MMD Agentと共にクリエイティブ・コモンズ・ライセンスで配布されている。

Open JTalkで追加男声音響モデルとして利用可能。4つの感情別音響モデル（normal, happy, angry, sad）がある。

tohoku-f01 

東北大学 伊藤・能勢研究室 によって配布されている、Open JTalkで利用可能な女声音響モデル。クリエイティブ・コモンズ・ライセンス(4.0)で配布されている。

4つの感情別音響モデル（angry, happy, neutral, sad）がある。

ライブラリ・フレームワークとしての利用 

音声合成を行わず、OpenJTalkの日本語処理部分のみを利用する事例がいくつか存在する。

 DeNAによるハッカドールのキャラクターを利用した音声合成研究事例
 VOICEVOX - ヒホ（ヒロシバ）作の、ITAコーパス を利用したボイスが利用可能なOSSなDNN音声合成ソフト。
 シロワニさんのつくよみちゃんトークソフト - シロワニさん作の、フリーのDNN音声合成ソフト。

関連項目 
 名古屋工業大学
 Sinsy - Open JTalkと同じ開発者らが開発・メンテナンスを続けているオープンソースの歌声合成ソフト（ボーカルシンセサイザー）。
 MMD Agent - Open JTalkと同じ開発者らが開発・メンテナンスを続けているMMDモデルを利用可能な対話エージェントシステム。音声合成部分はOpenJTalkが使われている。
 隠れマルコフモデル
 音声合成
 CeVIO Creative Studio - スタンドアロンな日本語音声合成機能を実装した商用姉妹ソフト。開発はOpen JTalkの開発者ら が立ち上げた大学ベンチャーであるテクノスピーチ社。
 MeCab - 形態素解析部分に利用されている。発音辞書データもMeCab向けの「NAIST Japanese Dictionary」を利用するが、アクセント情報の付与された独自の拡張となっている。
 NonVisual Desktop Access (NVDA) - Open JTalkが利用可能なOSSのスクリーンリーダー

脚注

外部リンク 

 Open JTalk - HMM-based Text-to-Speech System - 公式サイト（オンライン版）
 Open JTalk - SourceForge版公式サイト
 SHABERU - フリーの音声合成ソフト。Windows向けのOpen JTalkのスタンドアロンソフト。有志による追加ボイス（音響モデル、htsvoice形式）が充実している
 pyopenjtalk - Python向けのラッパーライブラリ
 SharpOpenJTalk - C#向けのラッパーライブラリ
 node-openjtalk - Node.js向けのラッパーライブラリ
 Gyutan - Java移植版
 jtalkDLL - 各プログラミング言語から利用するための共有ライブラリ版
 OpenJTalk For Unity - Unity(ゲームエンジン)むけプラグイン
 tdmelodic_openjtalk - NEologdを基にした日本語アクセント辞書tdmelodicをOpen JTalkから利用できるようにした辞書データ。商用利用不可

音声合成
CeVIO