{% extends "base.html" %} {% from "fragments/export_menu.html" import export_menu %} {% block title %}Voxint — transcript {{ run.id.hex[:8] }}{% endblock %} {% block body %}
{{ run.id.hex[:8] }}{{ run.media_item.source_path }}
No transcript segments for this run.
{% elif read %} {# Server-rendered reading view: one heading + paragraph per contiguous same-speaker run. Grouping and timestamp formatting are done in Python (paragraphize_transcript / format_timespan); the template only lays out the supplied rows. Jinja autoescape keeps hostile transcript text literal. #}{% if row.timespan %}{{ row.timespan }} {% endif %}{% for tl in row.lines %}{% if not loop.first %}
{% endif %}{{ tl }}{% endfor %}
[{{ "%.2f"|format(ln.start_seconds) }}–{{ "%.2f"|format(ln.end_seconds) }}] {% if uncertain %}uncertain{% endif %} {% if ln.diarization_label %}{{ ln.diarization_label }}{% endif %} {% if ln.speaker != ln.diarization_label %}{{ ln.speaker }}:{% endif %} {{ ln.text }}
{% endfor %}