オープンソースなテキスト読み上げアプリケーションをまとめました。
Table of Contents
1 eSpeak
Linuxはespeakパッケージをインストールします。
$ sudo apt-get install -y espeak
OSXはeSpeakのサイトからOSX用のバイナリをダウンロードします。
$ unzip espeak-1.45.04-OSX.zip $ cd espeak-1.45.04-OSX/espeak-1.45.0 $ sudo cp -a espeak-data /usr/share/ $ cp speak ~/bin/espeak
引数に文字列を渡すか標準入力経由で文章を入力します。
$ espeak "Hello, World" $ espaek < hello.txt
2 SVOX Pico
Linuxはlibttspico0パッケージとlibttspico-utilsパッケージをインストールします。
$ sudo apt-get install -y libttspico-utils
pico2waveコマンドは引数に文字列を渡して文章を入力します。-wオプションは拡張子.wavのファイルしか受け付けません。
$ pico2wave -w=hello.wav "Hello, World"
標準入力経由で文章を入力するには、以下のようなラッパースクリプトを使えば良いと思います。
#!/bin/sh TMP=`mktemp -t mypico2wave.sh.XXXXXX.wav` trap "rm $TMP* 2>/dev/null" 0 while read line; do pico2wave -w=${TMP} "${line}" aplay ${TMP} done exit 0
3 festival
Linuxはfestivalパッケージをインストールします。
$ sudo apt-get install -y festival
ファイル名を指定するか標準入力経由で文章を入力します。
$ festival --tts "Hello, World" $ festival --tts < hello.txt
4 実行例
Youtubeに各アプリの音声をアップロードしました。