テキスト朗読ツールJTalk

2024年7月15日

JTalk

テキスト朗読ツールJTalk

Open JTalkを用いて自動朗読ツールを作成してみました。
作り方もまとめておりますので、良ければ参考にしてみて下さい。

こんにちは。イムでーす。今日は簡単なAI朗読ツールの作り方を解説するね。

 朗読速度: 朗読開始 
 

注) 長文の朗読にチェックが無い場合、最大朗読時間は1分になります。
長文の朗読にチェックがある場合、ファイルを保存機能は使用出来ません。
ちょっとバグあります。2回め以降の朗読がうまく動いていません。うまく動かない場合、画面を再ロードすると動きます。

Open JTalk
Copyright (c) 2008-2018 Nagoya Institute of Technology Department of Computer Science All rights reserved.
This software is released under the Modified BSD license.
https://open-jtalk.sourceforge.net/readme_open_jtalk.php

※ サポート環境:Google Crome

テキスト朗読ツールJTalk概要

「テキスト朗読ツールJTalk」はAIに日本語テキストを朗読してもらうツールです。オープンソースのOpenJTalkを利用して構築しています。

お子様に本を朗読して聞かせるなどの用途で活用頂けます。

テキスト朗読ツールJTalkの使い方

テキストを入力します

日本語テキスト朗読ツールJTalkの使い方1

日本語テキスト朗読ツールJTalkの使い方2

朗読開始ボタンを押します

日本語テキスト朗読ツールJTalkの使い方3

朗読が自動再生します

朗読が自動で開始します。

日本語テキスト朗読ツールJTalkの使い方4

朗読音声ファイルが朗読と同時にダウンロードされます。
※ 「ファイルを保存する」チェックボックスにチェックがある場合に、ファイルがダウンロードされます。

日本語テキスト朗読ツールJTalkの使い方5

注)マイク右端のダウンロードボタンは機能しません。(変なファイル名で保存されてしまうので現在調査中です・・・ m(_ _)m)

日本語テキスト朗読ツールJTalkの使い方6

朗読の設定について

AIの声色を20種類以上から選択が出来ます

日本語テキスト朗読ツールJTalkの使い方7

AIの朗読スピードを設定できます

日本語テキスト朗読ツールJTalkの使い方8

免責事項

著作権

本ツールは無料で公開しておりますが、著作権を放棄しておりません。
著作権は84(ばっしーぃ⤴)に帰属します。

ソフトウェアの修正、複製、再配布

本サイトのURLは自由に掲載して頂いて問題ありません。
ただし、本サイトのツールを無断で改変し設定・設置することは出来ません。

ソフトウェアを使用したことによる損害、保証等

本ツールを使用したことによる一切の損害(一次的、二次的に関わらず)に対し、84(ばっしーぃ⤴)は責任を負いません。


当サイトではフリーツールを公開すると共に、IT関連の豆知識やツールの実装方法等も紹介しています。興味があれば以降の記事も是非ご一読下さい。
↓↓↓

OpenJTalkとは

OpenJTalk概要

Open JTalkは名古屋工業大学のコンピュータサイエンス学科が開発したオープンソースの日本語テキスト朗読システムです。
BSDライセンスで公開されており規約を守れば自由に利用することが出来ます。

OpenJTalk

OpenJTalkのインストール方法(CentOS 7.0)

パッケージ管理ソフトporgのインストール


# porgの入手
cd /usr/local/src
wget https://sourceforge.net/projects/porg/files/porg-0.10.tar.gz
tar zxf ./porg-0.10.tar.gz

# porgのmake
cd /usr/local/src/porg-0.10/
./configure --prefix=/usr/local --disable-grop
make

# porgのインストール
make install

Open JTalkの実行環境のhts_engine APIをインストール


# hts_engine APIの入手
cd /usr/local/src
wget https://sourceforge.net/projects/hts-engine/files/hts_engine%20API/hts_engine_API-1.10/hts_engine_API-1.10.tar.gz
tar zxvf hts_engine_API-1.10.tar.gz

# hts_engine APIのmake
cd /usr/local/src/hts_engine_API-1.10/
./configure
make

# porgでインストール
/usr/local/bin/porg -lp hts_engine_api-1.10 "make install"
/usr/local/bin/porg -f hts_engine_api-1.10

Open JTalkのインストール


# Open JTalkの入手
cd /usr/local/src
wget https://sourceforge.net/projects/open-jtalk/files/Open%20JTalk/open_jtalk-1.11/open_jtalk-1.11.tar.gz
tar zxvf open_jtalk-1.11.tar.gz

# Open JTalkのmake
cd /usr/local/src/open_jtalk-1.11
./configure --with-charset=UTF-8
make

# porgでインストール
/usr/local/bin/porg -lp open_jtalk-1.09 "make install"
/usr/local/bin/porg -f open_jtalk-1.09

日本語辞書の配置


# 日本語辞書ディレクトリを作成
mkdir /usr/local/share/open_jtalk

# 日本語辞書の入手
cd /usr/local/share/open_jtalk
wget https://sourceforge.net/projects/open-jtalk/files/Dictionary/open_jtalk_dic-1.09/open_jtalk_dic_utf_8-1.09.tar.gz
tar zxvf open_jtalk_dic_utf_8-1.09.tar.gz

音響データの配置


# 音響データディレクトリを作成
mkdir /usr/local/share/hts_voice

# 音響データの入手
cd /usr/local/share/hts_voice
wget https://sourceforge.net/projects/open-jtalk/files/HTS%20voice/hts_voice_nitech_jp_atr503_m001-1.05/hts_voice_nitech_jp_atr503_m001-1.05.tar.gz
tar zxvf hts_voice_nitech_jp_atr503_m001-1.05.tar.gz

OpenJTalkの構成

こんな構成です。

OpenJTalkの構成

ポイントはOpenJTalkを使うには日本語辞書と音響データの2つが必要ということです。どちらも上述のインストール方法にて入手できます。

音響データを変更すると声色を変えることが出来ます。

OpenJTalkの実行方法(シェル)


open_jtalk -r 朗読スピード -m 音響データパス -ow 朗読音声データ出力先 -x 日本語辞書ディレクトリ 朗読テキストファイル

# 例)
# open_jtalk -r 1.0 -m /usr/local/share/hts_voice/mei_normal.htsvoice -ow /tmp/output.wav -x /usr/local/share/open_jtalk/open_jtalk_dic_utf_8-1.09/ /tmp/test.txt

# usage:
#       open_jtalk [ options ] [ infile ]
# options:                                                                   [  def][ min-- max]
#    -x  dir        : dictionary directory                                    [  N/A]
#    -m  htsvoice   : HTS voice files                                         [  N/A]
#    -ow s          : filename of output wav audio (generated speech)         [  N/A]
#    -ot s          : filename of output trace information                    [  N/A]
#    -s  i          : sampling frequency                                      [ auto][   1--    ]
#    -p  i          : frame period (point)                                    [ auto][   1--    ]
#    -a  f          : all-pass constant                                       [ auto][ 0.0-- 1.0]
#    -b  f          : postfiltering coefficient                               [  0.0][ 0.0-- 1.0]
#    -r  f          : speech speed rate                                       [  1.0][ 0.0--    ]
#    -fm f          : additional half-tone                                    [  0.0][    --    ]
#    -u  f          : voiced/unvoiced threshold                               [  0.5][ 0.0-- 1.0]
#    -jm f          : weight of GV for spectrum                               [  1.0][ 0.0--    ]
#    -jf f          : weight of GV for log F0                                 [  1.0][ 0.0--    ]
#    -g  f          : volume (dB)                                             [  0.0][    --    ]
#    -z  i          : audio buffer size (if i==0, turn off)                   [    0][   0--    ]
#  infile:
#    text file                                                                [stdin]
    

当ツールで利用している音響データ

当ツールの音響データは以下を利用しています。

デフォルトの音声は朗読AIのメイちゃんです。

テキスト朗読ツールJTalkまとめ

作ってみて、結構なめらかな発音でビックリしました。変換に少し時間がかかりますが音声再生している間に次の朗読の変換をしておけば、無制限の長さのテキストの朗読も可能だと思います。

気が向いたら、ブログの内容を朗読してくれる音声ブログみたいなものを作ってみたいと思います、引き続き、AIお助けボックスを宜しくお願いします。