Библиотека обертки и интеграция сервера IPC API Cevio для .net 7 / .net Standard 2.0
Это библиотека обертков и сервер сцепления, который позволяет использовать интерфейс внешнего сцепления .NET в программном обеспечении Synthesis Synthesis « Cevio » даже из последних .NET 7 и т. Д. Он будет доступен в приложениях .NET, кроме .NET Framework 4.8. Он также поддерживает современные методы написания, такие как async / await , ValueTask и nullable .
Библиотека обертки и интеграция IPC Server для интерфейса внешней интеграции .NET в программном обеспечении Synthesis Synthesis « Cevio », которое можно использовать из новейших средств .NET 7 и других средств .NET Framework 4.8. Он также поддерживает современный стиль написания, такой как 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 Class | Cevio name | 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() |
| ServiceControl /ServiceControl2 | CHALEHOST () | Fluentcevio | CloseAsync() |
| Talker/Talker2 | Компоненты | Fluentcevio | GetComponentsAsync() / SetComponentsAsync() |
| Talker/Talker2 | Компоненты | Fluentcevioparam | Components() |
| Talker/Talker2 | Компоненты | Fluentcevioparam | Emotions() |
| Talker/Talker2 | GetPhoneemes () | Fluentcevio | GetPhonemesAsync() |
| Talker/Talker2 | GetTextDuration () | Fluentcevio | GetTextDurationAsync() |
| ServiceControl /ServiceControl2 | Хостверсия | Fluentcevio | GetHostVersionAsync() |
| ServiceControl /ServiceControl2 | Ishostarted | Fluentcevio | GetIsHostStartedAsync() |
| Talker/Talker2 | OutputWavetOfile () | Fluentcevio | OutputWaveToFileAsync() |
| Talker/Talker2 | Говорить() | Fluentcevio | SpeakAsync() |
| Talker/Talker2 | Говорить() | Fluentcevioparam | SendAndSpeakAsync() |
| Talker/Talker2 | Скорость | Fluentcevio | GetSpeedAsync() / SetSpeedAsync() |
| Talker/Talker2 | Скорость | Fluentcevioparam | Speed() |
| ServiceControl /ServiceControl2 | Starthost () | Fluentcevio | StartAsync() |
| Talker/Talker2 | Останавливаться() | Fluentcevio | StopAsync() |
| Talker/Talker2 | Тон | Fluentcevio | GetToneAsync() / SetToneAsync() |
| Talker/Talker2 | Тон | Fluentcevioparam | Tone() |
| Talker/Talker2 | Tonescale | Fluentcevio | GetToneScaleAsync() / SetToneScaleAsync() |
| Talker/Talker2 | Tonescale | 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 - это фактический вызовный сценарий.
さとうささら) на имя библиотеки голоса, которое у вас уже есть.MIT Лицензия
Авторские права (с) 2022 - 2023 г. Ину
Смотрите лицензию деталей