努力したWiki

推敲の足りないメモ書き多数

ユーザ用ツール

サイト用ツール


documents:voiceroid:seikacenter:seikacenter-005

SeikaCenterAPI.dll の説明

ダウンロードは VOICEROID2/+EX/CeVIOをコマンドラインからしゃべらせるからお願いします。

DLLを利用して操作する例

SeikaCenterAPI.dll は .NET Framework 4.6.1 環境で作成したDLLです。以下に使用例を掲示します。

sample.cs
using System.Collections.Generic;
using SeikaCenter;
 
namespace a_test
{
    class Program
    {
        static void Main(string[] args)
        {
 
            SeikaCenterControl scc = new SeikaCenterControl();
 
            double len = 0.0;
 
            Dictionary<string, decimal> effects = new Dictionary<string, decimal>()
            {
                {"speed", 0.90m },
                {"pitch", 1.30m }
            };
            Dictionary<string, decimal> emotions = new Dictionary<string, decimal>()
            {
                {"喜び", 0.60m }
            };
 
            // 音声発声時
            len = scc.Talk(2000, "あー嬉しーなー", "", effects, emotions);
 
            // 音声保存時
            // len = scc.Talk(2000, "あー嬉しーなー", @"E:\seikacenter\ureshi.wav", effects, emotions);
        }
    }
}

リモート接続

SeikaCenterAPI.DLLと同じディレクトリに SeikaCenterAPI.json を配置すると内部処理がSeikaCenterCompactを使った制御方法に切り替えされます。
SeikaCenterAPI.DLLを利用する側はプログラムを変更する必要はありません。

4つのプロパティは必須プロパティです。

SeikaCenterAPI.json
{
  "HostAddr"   : "http://192.168.1.1:7180",
  "SampleRate" : 22050 ,
  "User"       : "ユーザ",
  "Password"   : "パスワード"
}
HostAddr 接続先 SeikaServerCompact のURLです
SampleRate 音声のサンプリングレートです
User 接続先 SeikaServerCompact で定義されているユーザです
Password 接続先 SeikaServerCompact で定義されているパスワードです

メソッド/プロパティ

現時点では以下のメソッド、プロパティが公開されています。

メソッド/プロパティ 説明
string DLLVersion DLLのバージョン。SeikaCenterのバージョンではありません。
Dictionary<int, string> AvatorList SeikaCenterで利用可能な話者の一覧を返します。
Dictionary<string, decimal> GetAvatorParams(
  int cid
)
指定の話者のデフォルトパラメタ情報を返します。
Dictionary<string, decimal> GetAvatorParams_current(
  int cid
)
指定の話者の現在パラメタ情報を返します。
double Talk(
  int cid,
  string talktext,
  string filepath,
  Dictionary<string, decimal> effects,
  Dictionary<string, decimal> emotions
)
指定の話者で指定テキストを発声/音声保存させます。
ファイルパスが空の時は音声再生、ファイルパスが設定されていれば音声保存が実行されます。
戻り値は
  発声時:発声にかかった時間
  保存時:保存した音声ファイルの音声長さ
単位はミリ秒です。エラー時はマイナスの数値になります。

エフェクトパラメタ

Talk()の引数effectsで指定できる名前。英小文字で記述。範囲はSeikaSay.exe の説明を参照。

名前 対応するパラメタ
volume 音量
speed 話速
pitch 高さ(CeVIOではトーン)
alpha 声質 ※CeVIOでのみ有効
intonation 抑揚(CeVIOではトーンスケール)

感情パラメタ

Talk()の引数emotionsは話者により異なる。

感情パラメタ
話者 “喜び” “怒り” “悲しみ” “セクシー” “パワフル” “あたふた” “元気” “普通” “怒り” “哀しみ” “クール” “照れ” “へこみ” “High” “Mid” “MidLow” “Low”
VOICEROID2
東北イタコ(VOICEROID2)
さとうささら
すずきつづみ
タカハシ
ONE

再生時間

Talk()で返る時間/長さは、同じ文面を再生/保存させても毎回異なります。
これは、製品の機能を使わず発声の終了を自前で監視しているため、PCの状態やタイミング等の問題で変動します。 音声保存時は一度保存した音声ファイルから算出させています。

エラーがあった場合、時間/長さにマイナスの値が返ります。

documents/voiceroid/seikacenter/seikacenter-005.txt · 最終更新: 2018/10/21 03:38 by k896951

ページ用ツール