FluentCeVIOWrapper
1.0.0
.NET 7 / .NET标准2.0的Cevio API的包装库和集成IPC服务器
这是一个包装库和链接服务器,允许语音合成软件“ CEVIO ”的.NET外部链接接口即使是最新的.NET 7等都可以使用。它可以从.NET框架4.8以外的.NET应用程序中获得。它还支持现代写作方法,例如async / await , ValueTask和nullable 。
语音合成软件“ CEVIO ”的.NET外部集成接口的包装库和集成IPC服务器,可从最新的.NET 7和其他.NET Framework 4.8环境中使用。它还支持现代的C#写作风格,例如async / await , ValueTask , nullable等等。
async / awaitnullableValueTask<T>.unitypackage可用.nupkg.unitypackage dotnet add package FluentCeVIOWrapper.Common //ファクトリメソッドで非同期生成
//IDisposableを継承しているためusingが使えます
using var fcw = await FluentCeVIO . FactoryAsync ( ) ;
//非同期でCeVIO外部連携インターフェイス起動
await fcw . StartAsync ( ) ;
//利用可能なキャスト(ボイス)を非同期で取得
var casts = await fcw . GetAvailableCastsAsync ( ) ;
//感情一覧を非同期で取得
var emotes = await fcw . GetComponentsAsync ( ) ;
var newEmo = emotes
. Select ( v => {
v . Value = ( v . Name == "哀しみ" ) ?
( uint ) 100 :
( uint ) 0 ;
return v ;
} )
. ToList ( ) ;
//メソッドチェーンでまとめてパラメータ指定
await fcw . CreateParam ( )
. Cast ( casts [ 0 ] )
. Alpha ( 30 )
. Speed ( 50 )
. ToneScale ( 75 )
. Components ( newEmo )
. SendAsync ( ) ;
//非同期で音声合成
await fcw . SpeakAsync ( "こんにちは。" ) ;
//感情設定は Emotions() で簡単にできる
await fcw . CreateParam ( )
//キャスト名の直接指定でも実はOK
. Cast ( "さとうささら" )
//感情一覧を取得しなくても使える便利関数
//感情名が一致すれば設定します。存在しない場合は無視
. Emotions ( new ( )
{
[ "元気" ] = 0 ,
[ "哀しみ" ] = 0 ,
[ "怒り" ] = 75 ,
[ "普通" ] = 50
} )
. SendAsync ( ) ;
await fcw . SpeakAsync ( "こんにちは!!" ) ;| Cevio类 | Cevio名称 | FCW课程 | FCW名称 |
|---|---|---|---|
| - | - | fluentcevioutil | GetCastIdAsync() |
| Talker/Talker2 | 阿尔法 | Fluentcevio | GetAlphaAsync() / SetAlphaAsync() |
| Talker/Talker2 | 阿尔法 | fluentcevioparam | Alpha() |
| Talker/Talker2 | 可用记录 | Fluentcevio | GetAvailableCastsAsync() |
| Talker/Talker2 | 投掷 | Fluentcevio | GetCastAsync() / SetCastAsync() |
| Talker/Talker2 | 投掷 | fluentcevioparam | Cast() |
| ServiceContol /ServiceControl2 | CloseHost() | Fluentcevio | CloseAsync() |
| Talker/Talker2 | 成分 | Fluentcevio | GetComponentsAsync() / SetComponentsAsync() |
| Talker/Talker2 | 成分 | fluentcevioparam | Components() |
| Talker/Talker2 | 成分 | fluentcevioparam | Emotions() |
| Talker/Talker2 | getphonemes() | Fluentcevio | GetPhonemesAsync() |
| Talker/Talker2 | getTextDuration() | Fluentcevio | GetTextDurationAsync() |
| ServiceContol /ServiceControl2 | 传票 | Fluentcevio | GetHostVersionAsync() |
| ServiceContol /ServiceControl2 | iShostStarted | Fluentcevio | GetIsHostStartedAsync() |
| Talker/Talker2 | outputwavetofile() | Fluentcevio | OutputWaveToFileAsync() |
| Talker/Talker2 | 说话() | Fluentcevio | SpeakAsync() |
| Talker/Talker2 | 说话() | fluentcevioparam | SendAndSpeakAsync() |
| Talker/Talker2 | 速度 | Fluentcevio | GetSpeedAsync() / SetSpeedAsync() |
| Talker/Talker2 | 速度 | fluentcevioparam | Speed() |
| ServiceContol /ServiceControl2 | 星际斯托斯特() | Fluentcevio | StartAsync() |
| Talker/Talker2 | 停止() | Fluentcevio | StopAsync() |
| Talker/Talker2 | 语气 | Fluentcevio | GetToneAsync() / SetToneAsync() |
| Talker/Talker2 | 语气 | fluentcevioparam | Tone() |
| Talker/Talker2 | 色调 | Fluentcevio | GetToneScaleAsync() / SetToneScaleAsync() |
| Talker/Talker2 | 色调 | fluentcevioparam | ToneScale() |
| Talker/Talker2 | 体积 | Fluentcevio | GetVolumeAsync() / SetVolumeAsync() |
| Talker/Talker2 | 体积 | fluentcevioparam | Volume() |
Process.Start()等调用外部进程。FluentCeVIOWrapper.Common.FluentCeVIO类执行通信。-help :显示帮助-cevio : CeVIO_AI或CeVIO_CS-pipeName :IPC中使用的命名管名。启动多次时设置。-dllPath :指定CEVIO安装文件夹路径如果您想同时与Cevio AI和Cevio Creative Studio进行通信,请启动两个服务器。
只需从发行版中下载UnityPackage并导入它。
请参阅Readme
Assets/Init.cs是实际的调用脚本。
さとうささら)更改为您已经拥有的语音库名称。麻省理工学院许可证
版权(C)2022-2023 INU
请参阅详细信息许可证