Cast Review ({{ characters|length }})

{% for char in characters %} {% endfor %}
Character Voice Taxonomy TTS Params Status Reference Audio Actions
{{ char.name }} {% if char.is_narrator %} Narrator {% endif %} {% if char.gender %}
{{ char.gender }}{% if char.age_range %}, {{ char.age_range }}{% endif %} {% endif %} {% if char.voice_description %}
{{ char.voice_description[:100] }}{% if char.voice_description|length > 100 %}...{% endif %} {% endif %} {% if char.distinguishing_trait %}
● {{ char.distinguishing_trait }} {% endif %}
pitch: {{ char.pitch_register or 'mid' }}
energy: {{ char.energy or 'measured' }}
timbre: {{ char.timbre or 'clear' }}
texture: {{ char.texture or 'smooth' }}
pace: {{ char.pace_baseline or 'moderate' }}
formality: {{ char.formality or 'conversational' }}
{% if char.accent_marker and char.accent_marker != 'none' %}
accent: {{ char.accent_marker }}
{% endif %}
exag: {{ "%.3f"|format(char.exaggeration) }}
cfg: {{ "%.3f"|format(char.cfg_weight) }}
{{ char.energy or 'measured' }} range
{% if char.status == 'voiced_approved' %} Approved {% elif char.status == 'rejected' %} Rejected {% elif char.status == 'collision_pending' %} Collision {% elif char.status == 'voiced' %} Pending Review {% else %} {{ char.status }} {% endif %} {% if char.ref_exists %} {% else %} No reference {% endif %} {% if not char.is_narrator %} {% endif %}