Open JTalk(おーぷんじぇいとーく)は、名古屋工業大学で開発された音声合成技術および同技術を応用した、日本語向けのテキストトゥスピーチ(文章読み上げ)ソフト。日本語の文章を入力することで音声を合成し、読み上げることができる。
概要
名古屋工業大学にて開発・メンテナンスが続けられている日本語音声合成ソフトウェア。オープンソースで公開されているスタンドアロン版と、Webサイトで公開されているオンライン版の2種類がある。
合成技術にHMM(Hidden Markov Model、隠れマルコフモデル)を採用しており、少ないメモリでも動作するのが特徴[1]。その特徴からRaspberry Pi上での音声合成ライブラリとしての利用例も多い。
パラメータとしては「声質」(フォルマントシフト)、「ピッチシフト」(声の高さ)、「話速」に対応し、ボイスを切り替えることで感情表現にも対応する。
オンライン版
公式サイト[2] 上でシステムを公開しており、誰でも無料で利用可能。
指定可能なボイス(音響モデル)は2種類(男性1種類、女性4感情4種類)。
オープンソース版
SourceForgeにてソースコードが公開されている。利用にはビルドが必要。ビルドすることで各種OSに対応する。修正BSDライセンスで公開されている。
音声合成にはさらに辞書データとボイスデータ(音響モデル、htsvoice形式)が必要[1]。
ライセンスに従うことでライブラリとして他ソフトウェアに組み込むことも可能。
導入
複数のOSに対応しているものの、OSS版はソースコードとしての公開のため導入にはビルドが必要となる。有志によって簡単に使えるように、さまざまな導入方法が用意されている。
アプリとしての導入方法
一部を除き、原則コマンドラインアプリとしての入手になる。
- SHABERU
- Windows向けのGUIのあるフリーソフト。追加音響モデルにも対応する。[3]
パッケージマネージャを利用した導入方法
辞書データや音響モデルの追加導入が必要な場合がある(APT等)。また、導入後ビルドが必要な場合もある(pyopenjtalk等)。
- Docker
docker pull u6kapps/open_jtalk
[4]
- Homebrew
brew install open-jtalk
[5]
- APT
apt install open-jtalk
[6]
apt install open-jtalk-mecab-naist-jdic
※辞書データ
apt install hts-voice-nitech-jp-atr503-m001
※音響モデル
- Python
pip install pyopenjtalk
[7]
- .NET(NuGet)
Install-Package SharpOpenJTalk
[8]
- Node.js (npm)
npm install openjtalk
[9]
音響モデル
Open JTalkで利用可能な音響モデル(ボイスライブラリ、htsvoice形式)の例。音響モデルは自作することも可能であり、SHABERU等むけにユーザーが制作した音響モデルが配布されている(規約で許可されていればOpen JTalkで利用可能)[10]。
NIT ATR503 M001
標準男声音響モデル。Open JTalk本体、辞書データと共に配布されている[11]。
クリエイティブ・コモンズ・ライセンス3.0ライセンス。
メイ
メイ(HTS Voice "Mei")は名古屋工業大学のMMD Agentを用いたデジタルサイネージでキャンパス案内を行う女性キャラクター[12]。MMD Agentと共にクリエイティブ・コモンズ・ライセンスで配布されている[13]。
Open JTalkで追加女声音響モデルとして利用可能。5つの感情別音響モデル(normal, happy, angry, sad, bashful)がある。
タクミ
タクミ(HTS Voice "Takumi")はメイと共に名古屋工業大学のMMD Agentを用いたデジタルサイネージでキャンパス案内を行う男性キャラクター[12]。MMD Agentと共にクリエイティブ・コモンズ・ライセンスで配布されている[13]。
Open JTalkで追加男声音響モデルとして利用可能。4つの感情別音響モデル(normal, happy, angry, sad)がある。
tohoku-f01
東北大学 伊藤・能勢研究室[14] によって配布されている、Open JTalkで利用可能な女声音響モデル。クリエイティブ・コモンズ・ライセンス(4.0)で配布されている[15]。
4つの感情別音響モデル(angry, happy, neutral, sad)がある。
ライブラリ・フレームワークとしての利用
音声合成を行わず、OpenJTalkの日本語処理部分のみを利用する事例がいくつか存在する。
関連項目
脚注
外部リンク