Use gendered voice names: 11 female + 10 male = 21 distinct voices
This commit is contained in:
parent
4c5b42c062
commit
cd60e31aa2
1 changed files with 31 additions and 33 deletions
|
|
@ -27,7 +27,7 @@ except ImportError:
|
||||||
# Curated for voice diversity - different genders, tones, pacing
|
# Curated for voice diversity - different genders, tones, pacing
|
||||||
# Format: speaker_id: (gender, description)
|
# Format: speaker_id: (gender, description)
|
||||||
SPEAKERS = {
|
SPEAKERS = {
|
||||||
# Female speakers
|
# Female speakers (11)
|
||||||
"1089": ("female", "neutral, balanced - clear professional delivery"),
|
"1089": ("female", "neutral, balanced - clear professional delivery"),
|
||||||
"1188": ("female", "warm, friendly - approachable delivery"),
|
"1188": ("female", "warm, friendly - approachable delivery"),
|
||||||
"1221": ("female", "expressive, storyteller - engaging narration"),
|
"1221": ("female", "expressive, storyteller - engaging narration"),
|
||||||
|
|
@ -38,8 +38,9 @@ SPEAKERS = {
|
||||||
"4507": ("female", "young, clear - crisp enunciation"),
|
"4507": ("female", "young, clear - crisp enunciation"),
|
||||||
"5142": ("female", "warm, conversational - natural flow"),
|
"5142": ("female", "warm, conversational - natural flow"),
|
||||||
"6829": ("female", "crisp, articulate - precise diction"),
|
"6829": ("female", "crisp, articulate - precise diction"),
|
||||||
|
"6930": ("female", "smooth, polished - radio-style delivery"),
|
||||||
|
|
||||||
# Male speakers
|
# Male speakers (10)
|
||||||
"1284": ("male", "clear, measured - precise enunciation"),
|
"1284": ("male", "clear, measured - precise enunciation"),
|
||||||
"1580": ("male", "clear narrator - smooth reading style"),
|
"1580": ("male", "clear narrator - smooth reading style"),
|
||||||
"2094": ("male", "warm baritone - rich and resonant"),
|
"2094": ("male", "warm baritone - rich and resonant"),
|
||||||
|
|
@ -52,35 +53,33 @@ SPEAKERS = {
|
||||||
"7176": ("male", "warm storyteller - engaging narrative"),
|
"7176": ("male", "warm storyteller - engaging narrative"),
|
||||||
}
|
}
|
||||||
|
|
||||||
# Map voice names to speakers
|
# 21 voices: gendered names that match the speaker
|
||||||
# OpenAI standard: alloy, echo, fable, onyx, nova, shimmer
|
# Female names for female speakers, male names for male speakers
|
||||||
# Extended: amber, breeze, coral, dawn, ember, frost, glow, haze, ivy, jade, kite, lark, mist, nectar
|
|
||||||
VOICE_MAP = {
|
VOICE_MAP = {
|
||||||
# Standard voices - mix of male and female
|
# Female voices (11)
|
||||||
"alloy": "1089", # F - neutral, balanced
|
"aria": "1089", # F - neutral, balanced
|
||||||
"echo": "1284", # M - clear, measured
|
"clara": "1188", # F - warm, friendly
|
||||||
"fable": "1221", # F - expressive, storyteller
|
"elena": "1221", # F - expressive, storyteller
|
||||||
"onyx": "5639", # M - deep, dramatic
|
"grace": "1320", # F - soft, gentle
|
||||||
"nova": "1188", # F - warm, friendly
|
"hazel": "3575", # F - calm, neutral
|
||||||
"shimmer": "1320", # F - soft, gentle
|
"iris": "4507", # F - young, clear
|
||||||
|
"luna": "3570", # F - bright, energetic
|
||||||
|
"maya": "5142", # F - warm, conversational
|
||||||
|
"ruby": "4446", # F - mature, authoritative
|
||||||
|
"sage": "6829", # F - crisp, articulate
|
||||||
|
"sofia": "6930", # F - smooth, polished
|
||||||
|
|
||||||
# Extended female voices
|
# Male voices (10)
|
||||||
"amber": "5142", # F - warm, conversational
|
"atlas": "5639", # M - deep, dramatic
|
||||||
"breeze": "3570", # F - bright, energetic
|
"caleb": "1284", # M - clear, measured
|
||||||
"coral": "4446", # F - mature, authoritative
|
"felix": "7021", # M - light, conversational
|
||||||
"dawn": "6829", # F - crisp, articulate
|
"hugo": "7176", # M - warm storyteller
|
||||||
"glow": "3575", # F - calm, neutral
|
"jasper": "4077", # M - mature, professor
|
||||||
"ivy": "4507", # F - young, clear
|
"kai": "2830", # M - young, energetic
|
||||||
|
"leo": "4970", # M - smooth announcer
|
||||||
# Extended male voices
|
"marcus": "2094", # M - warm baritone
|
||||||
"ember": "2094", # M - warm baritone
|
"owen": "5105", # M - neutral, clear
|
||||||
"frost": "4970", # M - smooth announcer
|
"theo": "1580", # M - clear narrator
|
||||||
"haze": "7021", # M - light, conversational
|
|
||||||
"jade": "4077", # M - mature, professor
|
|
||||||
"kite": "2830", # M - young, energetic
|
|
||||||
"lark": "7176", # M - warm storyteller
|
|
||||||
"mist": "5105", # M - neutral, clear
|
|
||||||
"nectar": "1580", # M - clear narrator
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -211,12 +210,11 @@ def main():
|
||||||
"# Diverse voice samples from LibriSpeech test-clean (public domain)",
|
"# Diverse voice samples from LibriSpeech test-clean (public domain)",
|
||||||
"# Each voice is a DISTINCT SPEAKER for Qwen3-TTS voice cloning",
|
"# Each voice is a DISTINCT SPEAKER for Qwen3-TTS voice cloning",
|
||||||
"#",
|
"#",
|
||||||
"# Standard voices: alloy, echo, fable, onyx, nova, shimmer",
|
"# Female voices: aria, clara, elena, grace, hazel, iris, luna, maya, ruby, sage, sofia",
|
||||||
"# Extended voices: amber, breeze, coral, dawn, ember, frost,",
|
"# Male voices: atlas, caleb, felix, hugo, jasper, kai, leo, marcus, owen, theo",
|
||||||
"# glow, haze, ivy, jade, kite, lark, mist, nectar",
|
|
||||||
"#",
|
"#",
|
||||||
"# Source: LibriSpeech test-clean (public domain, LibriVox recordings)",
|
"# Source: LibriSpeech test-clean (public domain, LibriVox recordings)",
|
||||||
"# 20 distinct speakers (10 female, 10 male)",
|
"# 21 distinct speakers (11 female, 10 male)",
|
||||||
"",
|
"",
|
||||||
"tts-1-qwen:",
|
"tts-1-qwen:",
|
||||||
"",
|
"",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue