Skip to content

InuInu2022/cevio-casts

Repository files navigation

cevio-casts

JSON形式で定義されたCeVIOのキャスト(ボイスライブラリ)の定義データです。

Definition data for CeVIO casts (voice library) defined in JSON format.


MIT License GitHub release (latest SemVer including pre-releases) GitHub all releases GitHub Repo stars CeVIO CS CeVIO AI VoiSona VoiSona Talk

Features

  • CeVIO / VoiSona のキャスト(ボイスライブラリ)の情報を定義したデータです
    • json形式で提供しています
    • ライブラリごとのバージョン情報データを含みます
  • 【ソング】特殊歌詞記号のデータも含まれます
  • 【ソング】推奨音域・推奨テンポの情報を含みます(v1.21.0以降)
  • キャスト名・感情名・歌詞特殊記号(ソング)は日本語表記の他、英語表記の定義も含まれます
  • CeVIOトークの外部連携インターフェイスを経由せずにキャスト(ボイスライブラリ)の名前やIDを取得できます
  • CeVIOトークボイスの感情パラメータの名前やIDも同様に静的に取得できます
  • CeVIOソングボイス/VoiSonaソングボイスライブラリの内部IDも静的に取得できます
Product Talk Song Total
CeVIO CS 5 11 16
CeVIO AI 15 26 41
VoiSona 12 32 44
Sum 32 69 101

Definitions

  • Cast names (JP/partially EN)
  • Cast internal ID
    • CeVIO CSの一部キャストIDはトークとソングで共通の文字列で、ユニークではありません。そこで独自のIDを降っています。
    • The IDs of some of the casts in CeVIO CS are common strings for talks and songs and are not unique. Therefore, we are raining unique IDs.
  • Cast internal names in ccs/ccst/tssprj/tstprj

CastViewer

castviwer

vocal range vocal range
vocal range plot vocal tempo plot

https://inuinu2022.github.io/cevio-casts/

  • cast-dataを見ることができるアプリです

  • 「Plot」タブ

    • ボイスライブラリの推奨テンポ・推奨音域・テンポ&音域の広さ・感情数のグラフをみることができます
    • ※トークボイスも含まれます
    • ※グラフはマウス操作で拡大縮小できます(中クリックでリセット)
  • 「Table」タブ

    • ボイスライブラリの感情(スタイル)や特殊記号を表で見ることができます
    • ※トークボイスも含まれます
  • 「Data」タブ (Desktop版のみ)

    • ボイスライブラリの詳細なデータを見ることができます
    • 一応ソフト・ソングorトークでフィルタできます
  • Desktop版とWeb(Wasm)版のみ動きます

    • Web(Wasm)版は「Data」タブが正しく動きません
  • License

Requirement

  • json-schema draft-07

Usage

data

github releasesに最新の定義データ data.json をアップロードしていますのでダウンロードして使ってください。

./data/data.json に最新の定義データがあるので動的にDLするのでも構いません。※githubからのDLはgithubのDL制限に引っかからないように注意してください。

https://raw.githubusercontent.com/InuInu2022/cevio-casts/main/data/data.json

json schema

json schemaは model/schema.json にあります。 casts.tsというTypeScriptの定義ファイルから自動生成しています。

npm run makeschema

で生成できます。

example: C-Sharp

生成済みのヘルパークラス Definitions.cs と、クラスライブラリプロジェクト CevioCasts があります。

Definitions.csは、quicktypeで自動生成したコードを元に、修正しています。

gen-csharp.js で生成できます。

git submoduleでCevioCastsを直接取り込んでも良いですし、Definitions.csをコピーしても構いません。

using CevioCasts; //if you included classlib `CevioCasts`

var jsonString = File.ReadAllText("path/to/data.json");
var defs = Definitions.FromJson(jsonString);

sample code: SongAlphaValueCheck

SongAlphaValueCheck /Program.cs

Update check from GitHub releases

CevioCasts.UpdateChecker.GithubReleaseを使うと github releaseの最新のバージョンのcast-dataの確認やダウンロードができます。

using CevioCasts.UpdateChecker;

var gr = await GithubRelease
  .BuildAsync("path/to/local/data.json");

var localVersion = gr.GetLocalVersion();
var latestVersion = await gr.GetRepositoryVersionAsync();

var isAvailable = await gr.IsAvailableAsync();

await gr.DownloadAsync();

other language

quicktypeを利用して各言語のヘルパーコードを生成するのがおすすめです。

quicktype ../data/data.json -o csharp/CevioCasts/Definitions.cs -l csharp --namespace CevioCasts --features complete -S ../model/schema.json

Note

CeVIO Creative Studio の ONE (Song/Talk), IA (English Song/Talk)のデータが不十分です。 協力してくださる方を募集中です。

🐶Author

License

"cavio-casts" is under MIT license.

MIT License

Copyright (c) 2024 いぬいぬ