HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  Xcode
   etc.
    ALL
  
LINK
BACK
 

2016/04/10

Raspberry Pi 3で日本語音声を合成して喋らせる方法(OpenJTalk編) Raspberry Pi 3で日本語音声を合成して喋らせる方法(OpenJTalk編)

(ラズパイ3で 音声合成システム Open JTalkをコンパイルして、お手軽に日本語の文章を喋らせる方法)

Tags: [Raspberry Pi], [電子工作]





● Raspberry Pi 3 Model Bを遂に購入

 Raspberry Pi3 Model B RPI2 RPI3

 大人気の CPUボードの Raspberry Piに WiFiと Bluetoothが搭載されたモデルが新発売となりました。
 以前から Raspberry Pi 2を買おうかどうか迷っていましたが、Raspberry Pi 3 Model Bの発売を機に購入を決意してラズベリアンになる事にしました。

 ※ ラズパイの OS Raspbianはバージョンが上がる毎に過去の版と OSの内部の作りが変わり、過去に書かれた製作記事(例えば Raspbian Wheezyの時代の記事)がそのままではエラーが出たりして動かない事が有ります。
 ※ 当方のホームページのラズパイ記事は全て Raspberry Pi 3 Model Bと Raspbian Jessieの組み合わせで動作確認をしております。
(ただし、将来的に新しい Raspbian OSが出た場合に、当方の Raspbian Jessieを基にした内容がそのままでは動かない可能性が有ります。)
 ※ 2017/08/16から Raspbian OSは Raspbian Jessieから Raspbian Stretchに変わりました。
 ※ 2019/06/20から Raspbian OSは Raspbian Stretchから Raspbian Busterに変わりました。

Download Raspbian for Raspberry Pi

ちなみに、歴代のバージョンと名称は
Debianコードネーム年月備考(参考)Ubuntuでの該当名称
Debian 11Bullseye2021/08/14~2021/11からラズパイにリリースFocal Fossa 20.04 LTS ?
Debian 10Buster2019/06/20~2019/06からラズパイ4対応Bionic 18.04 LTS
Debian 9Stretch2017/08/16~2018/03からラズパイ3B+対応Xenial 16.04 LTS
Debian 8Jessie2015~2016/02からラズパイ3対応Trusty 14.04 LTS
Debian 7Wheezy2013~2016
Debian 6.0Squeeze2011~2014
Debian GNU/Linux 5.0Lenny2009~2012


● 2017/12追記

 最新の Raspbian Stretch(2017/11/29版)でも動く事を確認しました。


● Raspberry Pi 3 Model Bで日本語音声を合成して出力する

 日本語のTTS、Japanese Text to Speech

 Open JTalkをラズパイでコンパイルして使用する方法の記事は既に他のサイトやブログで有りますが、新しい Raspbianではそのままでコンパイルできなかったり使用できなかったりしたので、ラズパイ3の最新の Raspbian Jessieでも確実に Open JTalkをコンパイルして動作させる方法をまとめました。
 ※ Raspbian 8 Jessie 2016-03-18版で確認
 ※以前のバージョンの Raspbian 7 Wheezyや Raspbian Squeezeでは手順が異なる所が有る。

 まずは、音声出力のスピーカの動作の確認から。

 音声出力の音量の設定
$ alsamixer
 や
$ amixer set PCM 100%

 音声出力 自動
$ amixer cset numid=3 0

 音声出力 ヘッドホンジャック
$ amixer cset numid=3 1

 音声出力 HDMI
$ amixer cset numid=3 2
 ※ HDMIから音声が出ない場合は config.txtの # hdmi_driver=2の行の #を取る。
 ※行の先頭の #を取る。
# hdmi_driver=2
 を
hdmi_driver=2
 にする。

 スピーカーのテスト
$ speaker-test -t sine -f 800

 サウンドの再生確認
$ aplay /usr/share/sounds/alsa/Front_Center.wav
$ aplay /usr/share/sounds/alsa/Noise.wav



● Raspberry Pi 3 Model Bで Open JTalkを使用して日本語音声を合成して出力する

 Open JTalk 日本語音声合成
Open JTalk

 Open JTalk 日本語音声合成をラズパイ3で利用するには下記の方法が有ります。
 方法1) apt-getでパッケージを取得してインストールする方法
 方法2) ソースコードを自前でコンパイルする方法



●方法1) apt-getでパッケージを取得してインストールする方法

 apt-getで Open JTalk 日本語音声合成をインストールします。
 2016/04現在は Version 1.07がインストールできます。
 (最新のソースからビルドする場合は Version 1.09となる)

 下記コマンドでインストールする。
$ sudo apt-get -y install open-jtalk libhtsengine1 open-jtalk-mecab-naist-jdic hts-voice-nitech-jp-atr503-m001

 パッケージは全部で 4個
open-jtalk - Open JTalk本体 Version 1.07
libhtsengine1 - Open JTalkの動作に必要な HTSエンジン
open-jtalk-mecab-naist-jdic - Open JTalk用の辞書ファイル
hts-voice-nitech-jp-atr503-m001 - 音声合成用データファイル 音響モデル

$ open_jtalk -h
The Japanese TTS System "Open JTalk"
Version 1.07 (http://open-jtalk.sourceforge.net/)
Copyright (C) 2008-2013 Nagoya Institute of Technology
All rights reserved.

$ echo "こんにちは" | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow ~/ojtalk.wav
$ aplay ~/ojtalk.wav
 男の声で「こんにちは」と喋ります。

ojtalk.sh
#!/bin/sh
TMP=/tmp/ojtalk_tmp.wav
echo "$1" | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow $TMP
aplay --quiet $TMP
rm -f $TMP

$ sudo nano ojtalk.sh
$ sudo chmod 755 ojtalk.sh
$ ./ojtalk.sh あいうえお。日本語音声合成です。


● Open JTalkでテンポラリの WAVEファイルを作成しないで音声を再生する方法

 標準出力の stdoutに出力して、それを aplayで再生します。

$ echo "こんにちは" | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow /dev/stdout | aplay --quiet


● OpenJTalkで m001の男性声を使用して長文を喋らすと発声の速度が極端に遅くなるバグ

 OpenJTalkで m001の男性声を使用して、発声の文字数が 18文字を超える長文を喋らすと発声の速度が極端に遅くなる問題が発生します。

 バグの原因としては、下記のブログに考察が書かれていました。
2011年3月8日 投稿者: NISHIMOTZ Open JTalk の音素継続長の不具合を回避する
 また、このブログでは、同じフレーズを繰り返した場合に前半では正しく、後半では喋りが変になる原因も解析していました。

 解決方法のパッチの内容は下記になります。
avoid unnatural durations with m001 speaker

 他には、キリの良い短い文章に区切る。
 もしくは、m001の男性声を破棄して女性の音声データを使用すると言う解決方法も有ります。(下記の女性の音声データの場合は発話が遅くなる問題が発生しません。)



● Open JTalkで 女性の音声データを使用する MMDAgentの mei音声データ

 nitech_jp_atr503_m001が男性の音声データなので女性の音声データを使用する。
MMDAgent Voice data
$ wget http://tenet.dl.sourceforge.net/project/mmdagent/MMDAgent_Example/MMDAgent_Example-1.6/MMDAgent_Example-1.6.zip
 MMDAgent_Example-1.6.zip 11MBをダウンロードする

$ unzip MMDAgent_Example-1.6.zip
$ mv -f ./MMDAgent_Example-1.6/Voice/mei/ ./Voice_mei/
$ rm -r -f ./MMDAgent_Example-1.6

$ echo "こんにちは" | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m ~/Voice_mei/mei_normal.htsvoice -ow ~/ojtalk.wav
$ aplay ~/ojtalk.wav

ojtalk_mei.sh
#!/bin/sh
TMP=/tmp/ojtalk_tmp.wav
echo "$1" | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m ~/Voice_mei/mei_normal.htsvoice -ow $TMP
aplay --quiet $TMP
rm -f $TMP

$ sudo nano ojtalk_mei.sh
$ sudo chmod 755 ojtalk_mei.sh
$ ./ojtalk_mei.sh あいうえお。日本語音声合成です。


● OpenJTalkでテンポラリの WAVEファイルを作成しないで音声を再生する方法

 標準出力の stdoutに出力して、それを aplayで再生します。(女性の声バージョン)

$ echo "こんにちは" | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m ~/Voice_mei/mei_normal.htsvoice -ow /dev/stdout | aplay --quiet


 Open JTalkで使用する音響モデル htsvoiceファイルはググルと出てくる。

 Open JTalkでは Version 1.06から音声合成の音響モデルとして .htsvoice形式のファイルを使用します。
 htsvoiceファイルは上記の nitech_jp_atr503_m001と MMDAgent Meiの他にもググレば出てきます。


● Python言語で OpenJTalkしてみる

 Pythonの中でコマンドライン(手で入力する内容)と同じ動作をさせています。

 オッサンの声バージョン
nano jtalg_test1.py
python jtalg_test1.py

jtalg_test1.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import subprocess

command = "echo \"こんにちは\" | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow /dev/stdout | aplay --quiet"

proc = subprocess.Popen(
    command,
    shell  = True,
    stdin  = subprocess.PIPE,
    stdout = subprocess.PIPE,
    stderr = subprocess.PIPE)

# 終了を待つ場合(同期する)はコメントを取る
# proc.communicate()

 女性の声バージョン
nano jtalg_test2.py
python jtalg_test2.py

jtalg_test2.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import subprocess

command = "echo \"こんにちは\" | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m ~/Voice_mei/mei_normal.htsvoice -ow /dev/stdout | aplay --quiet"

proc = subprocess.Popen(
    command,
    shell  = True,
    stdin  = subprocess.PIPE,
    stdout = subprocess.PIPE,
    stderr = subprocess.PIPE)

# 終了を待つ場合(同期する)はコメントを取る
# proc.communicate()


● Python言語で HTTP通信で JSONを取得して OpenJTalkしてみる

 Python言語で HTTP通信を行ない、取得した文字列を OpenJTalkする例のリクエストがありましたので作成してみました。
pi@raspberrypi:~ $ python -V
Python 2.7.13
 先ずは、HTTP通信で JSONを取得するだけの処理を書きます。

nano http_test1.py
python http_test1.py

(Python 2.x系)
http_test1.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# urllib パッケージを使ってインターネット上のリソースを取得するには
# https://docs.python.org/ja/3.6/howto/urllib2.html
import urllib
import urllib2
# 19.2. json - JSON エンコーダおよびデコーダ
# https://docs.python.org/ja/3.6/library/json.html#module-json
import json

# お天気Webサービス(Livedoor Weather Web Service / LWWS)
# http://weather.livedoor.com/weather_hacks/webservice
url = 'http://weather.livedoor.com/forecast/webservice/json/v1?city=400040'
req = urllib2.Request(url)
response = urllib2.urlopen(req)
print('----')
print(response.getcode())
print(response.geturl())
print(response.info())

# the_page = response.read().decode("utf-8")
# jsonObject = json.loads(the_page, 'utf-8')
the_page = response.read()
jsonObject = json.loads(the_page)
print('----')
print(jsonObject['description']['text'])
print(jsonObject['description']['publicTime'])

 実行結果
----
200
http://weather.livedoor.com/forecast/webservice/json/v1?city=400040
Server: nginx
Date: Wed, 20 Dec 2017 11:45:10 GMT
Content-Type: application/json; charset=utf-8
Transfer-Encoding: chunked
Connection: close
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
Set-Cookie: ldsuid=CoIxjFo6TUY8lWzcsB9nAg==; expires=Tue, 20-Mar-18 11:45:10 GMT; path=/

----
 九州北部地方は、高気圧に覆われて概ね晴れていますが、寒気の影響によ
り曇りで小雨が降っている所があります。

 ~略~
 ~略~
 ~略~

<天気変化等の留意点>
特記事項はなし。
2017-12-20T16:39:00+0900

 無事に HTTP通信で JSONを取得できたので、Open JTalkの発話処理と合体します。
 Open JTalkは文字列に改行が有るとそこで発話を終了してしまうので改行を文字列置換で取り除いています。

nano http_test2.py
python http_test2.py

http_test2.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# urllib パッケージを使ってインターネット上のリソースを取得するには
# https://docs.python.org/ja/3.6/howto/urllib2.html
import urllib
import urllib2
# 19.2. json - JSON エンコーダおよびデコーダ
# https://docs.python.org/ja/3.6/library/json.html#module-json
import json

import subprocess

# お天気Webサービス(Livedoor Weather Web Service / LWWS)
# http://weather.livedoor.com/weather_hacks/webservice
url = 'http://weather.livedoor.com/forecast/webservice/json/v1?city=400040'
req = urllib2.Request(url)
response = urllib2.urlopen(req)
print('----')
print(response.getcode())
print(response.geturl())
print(response.info())

# the_page = response.read().decode("utf-8")
# jsonObject = json.loads(the_page, 'utf-8')
the_page = response.read()
jsonObject = json.loads(the_page)
print('----')
# print(jsonObject['description']['text'])
# print(jsonObject['description']['publicTime'])

speechString = jsonObject['description']['text']
# 改行が有ると切れてしまうので改行を文字列置換で取り除く
speechString = speechString.replace("\n", "")
print(speechString)

command = "echo \"%s\"" % speechString
command += " | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow /dev/stdout"
command += " | aplay --quiet"

proc = subprocess.Popen(
    command,
    shell  = True,
    stdin  = subprocess.PIPE,
    stdout = subprocess.PIPE,
    stderr = subprocess.PIPE)

# 終了を待つ場合(同期する)はコメントを取る
# proc.communicate()


● Python 3.x系は no module named 'urllib2'になる

 ついでに、json.loads(the_page)で下記エラーも出る。
TypeError: the JSON object must be str, not 'bytes'

pi@raspberrypi:~ $ python3 -V
Python 3.5.3

pi@raspberrypi:~ $ python3 http_test1.py
Traceback (most recent call last):
  File "http_test.py", line 7, in <module>
    import urllib2
ImportError: No module named 'urllib2'
TypeError: the JSON object must be str, not 'bytes'
responseStr = response.read().decode('utf-8')

(Python 3.x系)
nano py3_http_test1.py
python3 py3_http_test1.py

py3_http_test1.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

# urllib パッケージを使ってインターネット上のリソースを取得するには
# https://docs.python.org/ja/3.6/howto/urllib2.html
import urllib
import urllib.request
# 19.2. json - JSON エンコーダおよびデコーダ
# https://docs.python.org/ja/3.6/library/json.html#module-json
import json

# お天気Webサービス(Livedoor Weather Web Service / LWWS)
# http://weather.livedoor.com/weather_hacks/webservice
url = 'http://weather.livedoor.com/forecast/webservice/json/v1?city=400040'
req = urllib.request.Request(url)
response = urllib.request.urlopen(req)
print('----')
print(response.getcode())
print(response.geturl())
print(response.info())

# the_page = response.read().decode("utf-8")
# jsonObject = json.loads(the_page, 'utf-8')
# TypeError: the JSON object must be str, not 'bytes'
the_page = response.read().decode('utf-8')
jsonObject = json.loads(the_page)
print('----')
print(jsonObject['description']['text'])
print(jsonObject['description']['publicTime'])

(Python 3.x系)
nano py3_http_test2.py
python3 py3_http_test2.py

py3_http_test2.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

# urllib パッケージを使ってインターネット上のリソースを取得するには
# https://docs.python.org/ja/3.6/howto/urllib2.html
import urllib
import urllib.request
# 19.2. json - JSON エンコーダおよびデコーダ
# https://docs.python.org/ja/3.6/library/json.html#module-json
import json

import subprocess

# お天気Webサービス(Livedoor Weather Web Service / LWWS)
# http://weather.livedoor.com/weather_hacks/webservice
url = 'http://weather.livedoor.com/forecast/webservice/json/v1?city=400040'
req = urllib.request.Request(url)
response = urllib.request.urlopen(req)
print('----')
print(response.getcode())
print(response.geturl())
print(response.info())

# the_page = response.read().decode("utf-8")
# jsonObject = json.loads(the_page, 'utf-8')
# TypeError: the JSON object must be str, not 'bytes'
the_page = response.read().decode('utf-8')
jsonObject = json.loads(the_page)
print('----')
speechString = jsonObject['description']['text']
# 改行が有ると切れてしまうので改行を文字列置換で取り除く
speechString = speechString.replace("\n", "")
print(speechString)

command = "echo \"%s\"" % speechString
command += " | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow /dev/stdout"
command += " | aplay --quiet"

proc = subprocess.Popen(
    command,
    shell  = True,
    stdin  = subprocess.PIPE,
    stdout = subprocess.PIPE,
    stderr = subprocess.PIPE)

# 終了を待つ場合(同期する)はコメントを取る
# proc.communicate()


●方法2) ソースコードを自前でコンパイルする方法

 自前でコンパイルすると最新の Version 1.09を使用できます。

 Open JTalk 日本語音声合成の最新バージョンをコンパイル Version 1.09

 2016/04現在は apt-getだと Version 1.07がインストールされ、最新ソースの Version 1.09よりも古いです。
 なので、最新のソースからビルドをしてみます。

 Open JTalkは HTS engine APIを使用していると言う事で、hts_engine APIを最初に makeします。

hts_engine API

 hts_engine API Version 1.10
$ wget http://downloads.sourceforge.net/hts-engine/hts_engine_API-1.10.tar.gz
$ tar zxvf hts_engine_API-1.10.tar.gz
$ cd ./hts_engine_API-1.10
$ ./configure
$ make

 hts_engine APIは
/home/pi/hts_engine_API-1.10
 にインストール(配置)される。

 Open JTalkのソースを取得して、configureでコンフィグして、makeでコンパイルします。
$ wget http://downloads.sourceforge.net/open-jtalk/open_jtalk-1.09.tar.gz
$ tar zxvf open_jtalk-1.09.tar.gz
$ cd ./open_jtalk-1.09
$ ./configure \
--with-charset=UTF-8 \
--with-hts-engine-header-path=/home/pi/hts_engine_API-1.10/include \
--with-hts-engine-library-path=/home/pi/hts_engine_API-1.10/lib
$ make
$ sudo make install

$ /usr/local/bin/open_jtalk
The Japanese TTS System "Open JTalk"
Version 1.09 (http://open-jtalk.sourceforge.net/)
Copyright (C) 2008-2015 Nagoya Institute of Technology
All rights reserved.


$ cd
$ wget http://tenet.dl.sourceforge.net/project/open-jtalk/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
$ ls -l ./open_jtalk_dic_utf_8-1.09
total 65392
-rw-r--r-- 1 pi pi 262496 Dec 25 02:06 char.bin
-rw-r--r-- 1 pi pi 4349 Dec 25 02:08 COPYING
-rw-r--r-- 1 pi pi 3792262 Dec 25 02:06 matrix.bin
-rw-r--r-- 1 pi pi 62882899 Dec 25 02:06 sys.dic
-rw-r--r-- 1 pi pi 5690 Dec 25 02:06 unk.dic

$ echo "こんにちは" | /usr/local/bin/open_jtalk -x ~/open_jtalk_dic_utf_8-1.09 -m ~/Voice_mei/mei_normal.htsvoice -ow ~/ojtalk.wav
$ aplay ~/ojtalk.wav



● open_jtalk Version 1.07

 open_jtalk Version 1.07
The Japanese TTS System "Open JTalk"
Version 1.07 (http://open-jtalk.sourceforge.net/)
Copyright (C) 2008-2013 Nagoya Institute of Technology
All rights reserved.

The HMM-Based Speech Synthesis Engine "hts_engine API"
Version 1.08 (http://hts-engine.sourceforge.net/)
Copyright (C) 2001-2013 Nagoya Institute of Technology
              2001-2008 Tokyo Institute of Technology
All rights reserved.

Yet Another Part-of-Speech and Morphological Analyzer "Mecab"
Version 0.994 (http://mecab.sourceforge.net/)
Copyright (C) 2001-2008 Taku Kudo
              2004-2008 Nippon Telegraph and Telephone Corporation
All rights reserved.

NAIST Japanese Dictionary
Version 0.6.1-20090630 (http://naist-jdic.sourceforge.jp/)
Copyright (C) 2009 Nara Institute of Science and Technology
All rights reserved.

open_jtalk - The Japanese TTS system "Open JTalk"

  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--    ]
  -z  i        : audio buffer size (if i==0, turn off)           [    0][   0--    ]
  infile:
    text file                                                      [stdin]


● open_jtalk Version 1.09

 open_jtalk Version 1.09
The Japanese TTS System "Open JTalk"
Version 1.09 (http://open-jtalk.sourceforge.net/)
Copyright (C) 2008-2015 Nagoya Institute of Technology
All rights reserved.

The HMM-Based Speech Synthesis Engine "hts_engine API"
Version 1.10 (http://hts-engine.sourceforge.net/)
Copyright (C) 2001-2015 Nagoya Institute of Technology
              2001-2008 Tokyo Institute of Technology
All rights reserved.

Yet Another Part-of-Speech and Morphological Analyzer "Mecab"
Version 0.996 (http://mecab.sourceforge.net/)
Copyright (C) 2001-2008 Taku Kudo
              2004-2008 Nippon Telegraph and Telephone Corporation
All rights reserved.

NAIST Japanese Dictionary
Version 0.6.1-20090630 (http://naist-jdic.sourceforge.jp/)
Copyright (C) 2009 Nara Institute of Science and Technology
All rights reserved.

open_jtalk - The Japanese TTS system "Open JTalk"

  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]



Tags: [Raspberry Pi], [電子工作]

●関連するコンテンツ(この記事を読んだ人は、次の記事も読んでいます)

Raspberry Pi 3に USB Micを接続して日本語の音声認識をする方法(Julius編)
Raspberry Pi 3に USB Micを接続して日本語の音声認識をする方法(Julius編)

  ラズパイ3で汎用大語彙連続音声認識エンジン Juliusをコンパイルして使用する方法

Raspberry Pi 3に PyAudioを入れて USBマイクを接続して音声入力を行なう方法
Raspberry Pi 3に PyAudioを入れて USBマイクを接続して音声入力を行なう方法

  ラズパイに USB Micを接続して音声入力をする方法(PyAudio編)

Raspberry Pi 3に PortAudioを入れて USBマイクを接続して音声入力を行なう方法
Raspberry Pi 3に PortAudioを入れて USBマイクを接続して音声入力を行なう方法

  ラズパイに USB Micを接続して音声入力をする方法(PortAudio編)

Raspberry Pi 3に日本語 OCR Tesseractをインストールして OCR文字認識をする方法
Raspberry Pi 3に日本語 OCR Tesseractをインストールして OCR文字認識をする方法

  ラズパイ3で オープンソースの OCRエンジン Tesseractをインストールして使用する方法まとめ

Raspberry Pi 3に日本語 OCR NHocrをビルドして OCR文字認識をする方法
Raspberry Pi 3に日本語 OCR NHocrをビルドして OCR文字認識をする方法

  ラズパイ3で オープンソースの OCRエンジン NHocrをコンパイルして使用する方法まとめ

Raspberry Pi 3で日本語音声を合成して喋らせる方法(AquesTalk編)
Raspberry Pi 3で日本語音声を合成して喋らせる方法(AquesTalk編)

  ラズパイ3で 音声合成アプリ AquesTalk Piを使用してお手軽に日本語文章を喋らせる方法

Raspberry Pi 3で音声合成して喋らせる方法(英語、中国語編)
Raspberry Pi 3で音声合成して喋らせる方法(英語、中国語編)

  ラズパイ3で 音声合成アプリを使用してお手軽に英語と中国語の文章を喋らせる方法

Raspberry Pi 3に形態素解析エンジン MeCabをインストールして形態素解析をする方法
Raspberry Pi 3に形態素解析エンジン MeCabをインストールして形態素解析をする方法

  ラズパイ3で オープンソースの形態素解析エンジン MeCabをコンパイルして使用する方法まとめ

Raspberry Pi 3に Google Cloud Speech APIを入れて各国の言語で音声認識をする方法
Raspberry Pi 3に Google Cloud Speech APIを入れて各国の言語で音声認識をする方法

  ラズパイに Google Cloud Speech APIを設定する方法(Python言語編)

Raspberry Pi 3に Google Cloud Speech APIを入れて各国の言語で音声認識をする方法
Raspberry Pi 3に Google Cloud Speech APIを入れて各国の言語で音声認識をする方法

  ラズパイに Google Cloud Speech APIを設定する方法(Java言語編)

Raspberry Pi 3に Google Cloud Speech APIを入れて各国の言語で音声認識をする方法
Raspberry Pi 3に Google Cloud Speech APIを入れて各国の言語で音声認識をする方法

  ラズパイに Google Cloud Speech APIを設定する方法(Node.js言語編)

Raspberry Pi 3に AVSを入れて Amazon Echoを作る方法(Alexa Voice Service)
Raspberry Pi 3に AVSを入れて Amazon Echoを作る方法(Alexa Voice Service)

  ラズパイを Amazon Echoにする方法、Alexa Voice Service AVSをインストール

Raspberry Piで docomo Developer APIに挑戦 雑談対話 API編
Raspberry Piで docomo Developer APIに挑戦 雑談対話 API編

  ラズパイ + Javaでドコモの docomo Developer supportの雑談対話 APIを動かす

Raspberry Piで docomo Developer APIに挑戦 音声合成 API編
Raspberry Piで docomo Developer APIに挑戦 音声合成 API編

  ラズパイ + Javaでドコモの docomo Developer supportの音声合成 APIを動かす

Visual Studio 2013の C# .NETで 日本語対応の OCR文字認識アプリを自作する方法
Visual Studio 2013の C# .NETで 日本語対応の OCR文字認識アプリを自作する方法

  オフライン環境で動作可能な 世界各国語対応の OCR文字認識アプリを C# .NETで作成、MS製 OCRライブラリを使用

Visual Studio 2013の C#で日本語対応の手書き文字認識アプリを自作する方法
Visual Studio 2013の C#で日本語対応の手書き文字認識アプリを自作する方法

  オフライン環境で動作する世界各国語対応の手書き文字認識アプリを作成、MS製 手書き認識ライブラリを使用

Windows 10の音声合成エンジンを使用して入力した文字列を喋る & Waveファイル書き出し
Windows 10の音声合成エンジンを使用して入力した文字列を喋る & Waveファイル書き出し

  SpeechApp Windows 10用 Speech 音声合成 Text-to-Speech TTSのアプリ

Windows 10対応 Microsoft Speech使用の音声認識アプリ
Windows 10対応 Microsoft Speech使用の音声認識アプリ

  SpeechRecognizeApp 音声認識エンジンを使用してマイク入力の音声を認識します

Windows 10対応の日本語対応の音声合成エンジン TTSアプリを C# .NETで自作する
Windows 10対応の日本語対応の音声合成エンジン TTSアプリを C# .NETで自作する

  Visual Studio 2013の C# .NETで入力した文字列を喋る音声合成 TTSアプリを作成する 世界各国語に対応




[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外は Web構成の変更で移動する場合があります)
Copyright (c) 2016 FREE WING,Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/raspberry_pi/raspberry_pi_3_open_jtalk/