Skip to content

koturn/sayss

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 

クラウド型音声合成のコマンド

Build Status

概要

以下のURLに記されている,クラウド型音声合成を利用するCUIツールである

なお,このプログラムは,公開許可があった上で公開している.

ビルド方法

UNIX/Linux,あるいはWindowsにおけるCygwinにおいて,添付しているMakefileを 利用してビルドすればよい.

srcディレクトリに移動した上で,以下のようにすること.

$ make

デバッグ用のバイナリを作成する場合は,以下のようにすること.

$ make DEBUG=true

余談だが,最近のg++なら,以下のようにすれば,かなりの最適化がかかるように してある. (古いg++だと未対応のオプションを用いている)

$ make OPT=true

また,Microsoft Visual C++ のコンパイラcl.exeと,ビルドツールnmake.exeを用いて ビルドすることも可能である. 以下のようにすればよい.

> nmake /f msvc.mk

使い方

1. 一番単純な使い方

以下の例が,一番単純な利用方法である.

$ ./sayss こんにちは

これで,カレントディレクトリに『こんにちは』という音声が入ったout.wavという 名前の Waveファイルが作成される.

2. オプション等

このプログラムのコマンドライン引数として,以下のオプションが使用可能である.

  1. -h, --help
  • プログラムの使い方を表示する.
  1. -l [text-language], --language=[text-language]
  • 入力テキストの言語を [text-language] に指定する.
  • (デフォルト値: ja)
  1. -o [output-filename], --output=[output-filename]
  • 出力ファイル名を [output-filename] に指定する.
  • (デフォルト値: out.wav)

例えば,英語で "Hello world" という音声を音声合成し,その出力ファイル名を hello.wavとする場合,以下のようにする.

$ ./sayss "Hello world" --language=en --output=hello.wav

もしくは,オプションの短縮形を用いて,以下のようにしてもよい.

$ ./sayss "Hello world" -l en -o hello.wav

なお,"Hello world"の位置は,オプションの引数にならないように注意すれば, どこでもよい.

OK : $ ./sayss -l en "Hello world" -o hello.wav
OK : $ ./sayss -l en -o hello.wav "Hello world"
NG : $ ./sayss -l en -o "Hello world"

なお,試験的に,一度に複数音声の音声合成ができるようにしたが,例外を吐く場合が 多いので,現在のところ,以下のようにコマンドライン引数を与えることは推奨しない.

$ ./sayss おはようございます こんにちは --output=out.wav

(この場合,out-1.wav, out-2.wavというファイル名で,それぞれの音声合成の結果の ファイルを作るようにしている)

ファイルについて

srcディレクトリにソースコードがあり,各Makefileとコンパイラの対応は以下のように なっている.

Makefile名 対象コンパイラ
Makefile g++
clang.mk clang(ただし,未対応)
msvc.mk Microsoft Visual C++コンパイラ用

clang.mkは,とりあえず置いているだけなので,用いないこと. いずれ,対応したいと考えている.

依存ライブラリ

以下のライブラリを,このリポジトリ内に組み込んでいる.

  1. CLX C++ Libraries (BSDライセンス)
  1. PicoJSON (BSDライセンス)
  1. getopt(MSVCのみ) (BSDライセンス)

ビルドについての注意

1. インクルードパス

各Makefileに記述してあるように,依存ライブラリへのインクルードパスは, コンパイラのオプションで通している. Makefileを用いずにコンパイルする場合は,インクルードパスをコンパイラに与えること.

2. 環境とコンパイラについて

  1. ビルドと動作に成功した環境とコンパイラ
  • Windows7 : Microsoft Visual C++ のコンパイラ
  • Windows7 : Cygwinのg++
  • Ubuntu12.04 : g++
  1. ビルドに失敗した環境とコンパイラ
  • Windows7 : Cygwinのclang
  • Windows7 : MinGWのg++
  • Ubuntu12.04 : clang

これ以外の環境については,確認していない.

About

クラウド型音声合成のコマンド

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published