package persona // VoiceDNA contains all voice specifications for audio/video generation. // These characteristics define the character's unique vocal identity for TTS. type VoiceDNA struct { // Pitch is the fundamental vocal pitch category. Pitch PitchCategory `json:"pitch" yaml:"pitch"` // PitchRange describes the range of pitch variation. PitchRange PitchRangeCategory `json:"pitch_range" yaml:"pitch_range"` // Tone is the overall vocal tone quality. Tone ToneCategory `json:"tone" yaml:"tone"` // Timbre is the vocal texture/quality. Timbre TimbreCategory `json:"timbre" yaml:"timbre"` // Accent is the accent family. Accent AccentCategory `json:"accent" yaml:"accent"` // AccentStrength is the intensity of the accent. AccentStrength AccentStrengthCategory `json:"accent_strength" yaml:"accent_strength"` // Cadence is the speaking rhythm pattern. Cadence CadenceCategory `json:"cadence" yaml:"cadence"` // RhythmPattern describes the speech rhythm. RhythmPattern RhythmPatternCategory `json:"rhythm_pattern" yaml:"rhythm_pattern"` // Volume is the characteristic speaking volume. Volume VolumeCategory `json:"volume" yaml:"volume"` // Clarity is the articulation clarity. Clarity ClarityCategory `json:"clarity" yaml:"clarity"` // Expressiveness is the emotional range in speech. Expressiveness ExpressivenessCategory `json:"expressiveness" yaml:"expressiveness"` } // Pitch categories type PitchCategory string const ( PitchVeryLow PitchCategory = "very_low" PitchLow PitchCategory = "low" PitchMedium PitchCategory = "medium" PitchHigh PitchCategory = "high" PitchVeryHigh PitchCategory = "very_high" ) // Pitch range categories type PitchRangeCategory string const ( PitchRangeNarrow PitchRangeCategory = "narrow" PitchRangeModerate PitchRangeCategory = "moderate" PitchRangeWide PitchRangeCategory = "wide" ) // Tone categories type ToneCategory string const ( ToneWarm ToneCategory = "warm" ToneCool ToneCategory = "cool" ToneNeutral ToneCategory = "neutral" ToneRich ToneCategory = "rich" ToneBright ToneCategory = "bright" ) // Timbre categories type TimbreCategory string const ( TimbreClear TimbreCategory = "clear" TimbreSmooth TimbreCategory = "smooth" TimbreHusky TimbreCategory = "husky" TimbreBreathy TimbreCategory = "breathy" TimbreRich TimbreCategory = "rich" TimbreCrisp TimbreCategory = "crisp" ) // Accent categories type AccentCategory string const ( AccentNorthAmerican AccentCategory = "north_american" AccentBritish AccentCategory = "british" AccentAustralian AccentCategory = "australian" AccentGlobalEnglish AccentCategory = "global_english" AccentNonNative AccentCategory = "non_native" ) // Accent strength categories type AccentStrengthCategory string const ( AccentStrengthSubtle AccentStrengthCategory = "subtle" AccentStrengthModerate AccentStrengthCategory = "moderate" AccentStrengthStrong AccentStrengthCategory = "strong" ) // Cadence categories type CadenceCategory string const ( CadenceVerySlow CadenceCategory = "very_slow" CadenceSlow CadenceCategory = "slow" CadenceMedium CadenceCategory = "medium" CadenceFast CadenceCategory = "fast" CadenceVeryFast CadenceCategory = "very_fast" ) // Rhythm pattern categories type RhythmPatternCategory string const ( RhythmPatternSteady RhythmPatternCategory = "steady" RhythmPatternVariable RhythmPatternCategory = "variable" RhythmPatternDynamic RhythmPatternCategory = "dynamic" ) // Volume categories type VolumeCategory string const ( VolumeSoft VolumeCategory = "soft" VolumeModerate VolumeCategory = "moderate" VolumeLoud VolumeCategory = "loud" ) // Clarity categories type ClarityCategory string const ( ClarityCrisp ClarityCategory = "crisp" ClarityNatural ClarityCategory = "natural" ClarityRelaxed ClarityCategory = "relaxed" ) // Expressiveness categories type ExpressivenessCategory string const ( ExpressivenessMonotone ExpressivenessCategory = "monotone" ExpressivenessModerate ExpressivenessCategory = "moderate" ExpressivenessExpressive ExpressivenessCategory = "expressive" ExpressivenessAnimated ExpressivenessCategory = "animated" )