Platform · Panopto
Panopto captions: SRT/VTT upload, ASR replacement, and the back-catalogue retrofit
Panopto is the lecture-capture engine for a long list of public universities, community colleges, and enterprise L&D shops — exactly the orgs the 2026-04-24 ADA Title II deadline just landed on. Panopto's built-in ASR (the "Automatic Captions" toggle) is fine for the average word in a lecture, and falls down on the words that determine accessibility-audit outcomes: faculty names, course codes, technical terms, drug and procedure names. Here's the SRT/VTT upload flow, when the auto-track is enough, and when the glossary-biased retrofit is the only path to a clean Title II posture on the back catalogue.
TL;DR
Panopto accepts SRT and WebVTT caption files at the session level: open a session in the Panopto editor, click Captions, and choose Import captions / Upload from file. The uploaded track replaces (or sits alongside) the auto-generated ASR track. For a public-university tenant facing the ADA Title II deadline, the right pattern is: keep ASR as the on-by-default fallback, run the high-traffic and high-stakes back catalogue through a glossary-biased workflow, upload the resulting SRT/VTT, mark the auto-track as superseded. GlossCap's .srt output is character-for-character compatible with Panopto's importer; the VTT output works for the same flow plus any HTML5 player downstream of Panopto's exports.
The Panopto caption upload flow, step by step
- Open the session. In the Panopto admin or content portal, open the session you want to caption. Click Edit to enter the session editor.
- Open the captions panel. In the editor's left rail, click Captions. You'll see one of three states: no captions yet, ASR auto-captions present, or a manually uploaded caption track present.
- Import the file. Click Import captions and select the SRT or VTT file. Panopto parses the timing and the cue text and shows a preview. Confirm the import.
- Publish. Click Apply in the top-right of the editor. The session re-publishes; viewers see the new caption track on next playback.
- Verify the language tag. Panopto labels caption tracks by language. If the SRT/VTT was tagged English and the session was tagged differently (or untagged), set the session language so the player surfaces the track correctly.
That's it for a single session. The flow is the same whether the caption file came from a human transcriptionist, GlossCap, or any other source.
When Panopto's built-in ASR is enough — and when it isn't
Panopto's auto-caption track is genuinely useful for low-stakes content where roughly-right is fine: an internal all-hands recording, a research seminar that won't be re-watched. It runs fast, it's free, and it gets the average word right.
It's not enough for any session that:
- Lives in a public-university Title-II-exposed catalogue. Title II audits sample, and the sample lands on the words ASR mangles.
- Includes faculty names students will write on exams. "Dr. Bhattacharya" → "Dr. Bach a charya"; "Dr. Ng" → "Dr. ing"; "Dr. Xu" → "Dr. shoe". An accessibility coordinator opens the player, sees "Bach a charya" in the bottom bar, and that's the audit finding.
- Includes course codes students cite in coursework. "CS 224N" → "C S two two four n"; "BIO 101A" → "B I O one oh one A".
- Includes drug or procedure names in clinical lecture-capture.
- Includes program-specific or institution-specific vocabulary — programme names, building names, lab nicknames, internal acronyms.
The pattern at the public-university tenants we've talked to: 60-70% of the catalogue is the low-stakes case where ASR is fine, 30-40% is the high-stakes case where ASR fails on the words that matter. The retrofit budget should target the 30-40%, not the whole catalogue.
The back-catalogue retrofit pattern
For a public-university Panopto tenant with a back catalogue running from a few hundred to several thousand sessions, the retrofit follows a predictable pattern:
- Inventory. Pull the session list via Panopto's admin export. Tag by department, by viewer count, by creation date, by mandatory-curriculum status (the registrar usually knows which courses these are).
- Prioritise. The high-priority pool is high-viewer-count + mandatory-curriculum + high-stakes-vocabulary (medicine, engineering, law). The deferred pool is low-viewer + elective + general-content.
- Build the institutional glossary. Three tiers: institution-wide (faculty names, building names, programme acronyms), department-level (technical vocabulary by school), course-level (course-specific terminology). Most universities already maintain at least the first two in a Confluence or SharePoint space — connect or paste.
- Process the priority pool. GlossCap accepts batched uploads; Whisper-large with the institutional glossary biased into the decoder produces SRT/VTT where faculty names, course codes, and technical vocabulary land right on first export. Per-hour cost lands in the $3-4 range at the Team tier, an order of magnitude below the human-reviewed alternatives — see our pricing breakdown.
- Reviewer pass. The amber-highlight UI shows every glossary-applied term in context. A departmental accessibility coordinator can scrub through and confirm. Corrections feed back into the glossary so the term doesn't break next time.
- Bulk upload to Panopto. The SRT/VTT files import into Panopto session-by-session via the steps above. For tenants with a large catalogue, Panopto's REST API supports caption upload programmatically.
- Document the retrofit. Spreadsheet: session ID → caption source → glossary version → reviewer → review date. This is the documentation an accessibility coordinator hands to a Title II auditor.
Panopto's API for programmatic caption upload
Panopto's REST API exposes session metadata and content management endpoints; caption upload is supported via the session-management surface. For a tenant retrofitting more than a couple hundred sessions, the path is:
- OAuth client credentials from the Panopto admin console, scoped to the content-management API.
- Iterate the session list filtered by folder (department) or by tag (priority pool).
- Upload caption file per session — the API accepts SRT and VTT.
- Mark the session as captioned in the admin metadata so reporting reflects the retrofit.
GlossCap's exports are character-clean SRT/VTT — Panopto's importer parses them without the format-quirk fix-ups some other captioning tools require.
Panopto vs Kaltura for accessibility
Most universities run one or the other; a small number run both. The accessibility-relevant differences for caption workflow:
- Panopto has tighter integration with classroom capture hardware and a clean SRT/VTT importer in the editor. The auto-track is on by default; replacing it is a per-session click.
- Kaltura has broader plugin and LMS integration, and a separate REACH workflow specifically for human-reviewed captions. SRT/VTT/TTML all import cleanly. The auto-track behaviour depends on tenant configuration.
The captioning bar is the same on either platform — see our vendor-selection post for public universities for the full cross-walk against ADA Title II, Section 504, Section 508, and IDEA.
Related questions
Does Panopto's ASR meet WCAG 2.1 AA accuracy?
Not reliably on lecture-capture content. Panopto's ASR scores 90-93% on average across general lecture audio, but the failure pattern is concentrated on proper nouns — faculty names, course codes, technical terminology — which is exactly where an accessibility audit looks. The 99% reading of SC 1.2.2 is functionally a per-segment standard, and a single mangled "Bhattacharya" in a sampled segment is enough for a finding.
Can we keep both the ASR track and a manual track on the same session?
Yes — Panopto supports multiple caption tracks per session. The viewer can switch between them in the player. Many tenants leave the ASR track as a fallback and ship the glossary-biased SRT/VTT as the default-display track.
How long does the retrofit take for a 1,000-session back catalogue?
Roughly: glossary build is 1-2 days. Processing 1,000 hour-long sessions on Whisper-large is a few days of pipeline time. Reviewer pass on the priority pool (assume 30%) is a person-week or two depending on department size. Bulk upload via the API is a script that runs overnight. The bottleneck in practice is the reviewer pass, not the captioning.
What if our Panopto tenant uses Smart Chapters and the ASR track is tied to that?
Panopto's Smart Chapters / topic detection runs on the ASR transcript, not on the manually uploaded caption track. Replacing the ASR track with a higher-accuracy import preserves chapter behaviour as long as the manual track is uploaded with timing aligned to the original audio (which the SRT/VTT format guarantees).
Does GlossCap have a direct Panopto integration?
Roadmap. The current flow is export SRT/VTT from GlossCap, upload to Panopto via the editor or the REST API. A direct one-click integration is on the post-launch backlog — talk to us if you'd be the reference customer.
Further reading
- University lecture capture captions: the back-catalogue problem
- Kaltura captions workflow
- SRT captions for training videos
- VTT captions for training videos
- ADA Title II captions: the 2026-04-24 deadline
- Picking a captioning vendor as a public university after Title II
- Why we built GlossCap: the regulatory and operator case