feat: add CW-026 Local Voice plugin

This commit is contained in:
Bryan Gilliom
2026-07-27 00:33:25 +08:00
commit 5d680928b9
29 changed files with 2697 additions and 0 deletions
+60
View File
@@ -0,0 +1,60 @@
{
"schema_version": "1.0",
"id": "chris-engineer",
"display_name": "Chris Engineer",
"adapter": "single",
"roles": {
"default": {
"reference_audio": "voices/chris-engineer/reference.wav",
"reference_transcript": "voices/chris-engineer/reference.txt"
},
"high-energy": {
"reference_audio": "voices/chris-engineer/reference-high-energy.wav",
"reference_transcript": "voices/chris-engineer/reference-high-energy.txt"
}
},
"deliveries": {
"narrative": {
"role": "default",
"tempo_multiplier": 1.12
},
"technical": {
"role": "default",
"tempo_multiplier": 1.12
},
"high-energy": {
"role": "high-energy",
"tempo_multiplier": 1.2
},
"joke": {
"role": "high-energy",
"tempo_multiplier": 1.2
},
"punchline": {
"role": "high-energy",
"tempo_multiplier": 1.2
}
},
"generation": {
"minimum_words": 4,
"maximum_words": 30,
"short_native_max_words": 10,
"default_context": "Wanna see something cool!!!"
},
"cadence": {
"default_mode": "multiplier",
"default_tempo_multiplier": 1.12,
"minimum_words_for_normalization": 10,
"minimum_tempo": 0.8,
"maximum_tempo": 1.25
},
"assembly": {
"crossfade_ms": 60,
"default_pause_ms": 120,
"minimum_natural_tail_ms": 200
},
"signature_assets": {
"opening": "voices/chris-engineer/signature-opening.wav"
},
"persona_guide": "voices/chris-engineer/persona.md"
}
+29
View File
@@ -0,0 +1,29 @@
{
"schema_version": "1.0",
"id": "donna",
"display_name": "Donna",
"adapter": "single",
"roles": {
"default": {
"reference_audio": "voices/donna/reference-neutral.wav",
"reference_transcript": "voices/donna/reference-neutral.txt"
}
},
"generation": {
"minimum_words": 4,
"maximum_words": 42,
"short_native_max_words": 18,
"default_context": ""
},
"cadence": {
"default_mode": "native",
"minimum_words_for_normalization": 20,
"minimum_tempo": 0.8,
"maximum_tempo": 1.25
},
"assembly": {
"crossfade_ms": 60,
"default_pause_ms": 100,
"minimum_natural_tail_ms": 200
}
}
+30
View File
@@ -0,0 +1,30 @@
{
"schema_version": "1.0",
"id": "grandpa-bomber",
"display_name": "Grandpa Bomber",
"adapter": "single",
"roles": {
"default": {
"reference_audio": "voices/grandpa-bomber/reference.wav",
"reference_transcript": "voices/grandpa-bomber/reference.txt"
}
},
"generation": {
"minimum_words": 4,
"maximum_words": 45,
"short_native_max_words": 18,
"default_context": ""
},
"cadence": {
"default_mode": "native",
"minimum_words_for_normalization": 20,
"minimum_tempo": 0.8,
"maximum_tempo": 1.25
},
"assembly": {
"crossfade_ms": 60,
"default_pause_ms": 120,
"minimum_natural_tail_ms": 200
},
"persona_guide": "voices/grandpa-bomber/persona.md"
}
+38
View File
@@ -0,0 +1,38 @@
{
"schema_version": "1.0",
"id": "ryan-pitch-meeting",
"display_name": "Ryan Pitch Meeting",
"adapter": "dialogue",
"roles": {
"producer": {
"reference_audio": "voices/ryan-pitch-meeting/producer-reference-v3.wav",
"reference_transcript": "voices/ryan-pitch-meeting/producer-reference-v3.txt",
"default_context": "I think that's like a slogan.",
"tempo_multiplier": 1.15
},
"writer": {
"reference_audio": "voices/ryan-pitch-meeting/writer-reference-v3.wav",
"reference_transcript": "voices/ryan-pitch-meeting/writer-reference-v3.txt",
"default_context": "No, no, no, that would never work.",
"tempo_multiplier": 1.3
}
},
"generation": {
"minimum_words": 4,
"maximum_words": 42,
"short_native_max_words": 6,
"default_context": ""
},
"cadence": {
"default_mode": "multiplier",
"minimum_words_for_normalization": 7,
"minimum_tempo": 0.8,
"maximum_tempo": 1.35
},
"assembly": {
"crossfade_ms": 35,
"default_pause_ms": 95,
"minimum_natural_tail_ms": 180
},
"signature_library": "voices/ryan-pitch-meeting/signature-exchanges/manifest.json"
}
+49
View File
@@ -0,0 +1,49 @@
{
"schema_version": "1.0",
"id": "val-holiday",
"display_name": "Val Holiday",
"adapter": "single",
"roles": {
"default": {
"reference_audio": "voices/val-holiday/reference-v3.wav",
"reference_transcript": "voices/val-holiday/reference-v3.txt"
}
},
"deliveries": {
"narrative": {
"target_wpm": 170
},
"rollup": {
"target_wpm": 170
}
},
"generation": {
"minimum_words": 4,
"maximum_words": 42,
"short_native_max_words": 18,
"default_context": ""
},
"cadence": {
"default_mode": "wpm",
"default_wpm": 170,
"minimum_words_for_normalization": 20,
"minimum_tempo": 0.75,
"maximum_tempo": 1.35
},
"assembly": {
"crossfade_ms": 60,
"default_pause_ms": 100,
"minimum_natural_tail_ms": 200
},
"pronunciation": {
"use_explicit_tts_text_for_homographs": true,
"examples": [
{
"written": "lead",
"tts": "led",
"meaning": "bullets or ammunition"
}
]
},
"persona_guide": "voices/val-holiday/Val Holiday Pulse Brief Voice Guide.md"
}