video-accessibility-old/docs/video_accessibility_user_guide_v3.md
Vadym Samoilenko a3b300b76a docs: add canonical documentation + audit cleanup
- AGENTS.md: canonical project entry point (Quick Nav, pipeline, constraints)
- docs/: complete docs tree — architecture, API spec, DB schema, infra,
  runbook, requirements, tech stack, principles, reference ADRs, guides,
  tasks backlog, testing strategy
- tests/README.md: test commands, structure, known gaps
- README.md / CLAUDE.md / DEPLOYMENT.md: updated with canonical doc links
- .archive/: backup of pre-documentation-pipeline originals
- backend/uv.lock: uv dependency lockfile
- Delete committed __pycache__ .pyc files (should have been gitignored)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 14:22:51 +01:00

61 KiB
Raw Permalink Blame History

Video Accessibility Platform — Complete User Guide

Version: 3.0
Date: April 2026
Platform URL: https://ai-sandbox.oliver.solutions/video-accessibility
Support: Contact your platform administrator


Table of Contents

  1. Overview
  2. User Roles — Who Can Do What
  3. Logging In
  4. Dashboard — Your Home Screen
  5. Client Guide — Upload & Download
  6. Reviewer & Linguist Guide
  7. Production User Guide
  8. Admin Guide
  9. All Jobs List
  10. Job Detail Page
  11. Notifications
  12. Connection Status Indicator
  13. Job Status Reference
  14. Tips & Best Practices
  15. Troubleshooting & FAQ
  16. Glossary

1. Overview

The Video Accessibility Platform automatically creates closed captions and audio descriptions for your videos using AI, then translates them into multiple languages. Human reviewers check and approve the results before you receive the final files.

What the platform produces

File Type Description
Captions (VTT) Closed captions showing dialogue and sound effects on screen
Audio Description Script (VTT) Text file describing on-screen visuals, for use with screen readers
Audio Description Voiceover (MP3) Spoken audio description — a narrator describes what is happening visually
Accessible Video (MP4) Your original video with audio descriptions embedded (spoken narration added automatically)
SDH Captions (VTT) Captions for the Deaf and Hard of Hearing, including speaker labels, sound effects, and music notation
Re-timed Captions (VTT) Captions re-synchronised to match an accessible video with added pauses
Descriptive Transcript (TXT) A plain-text document combining all dialogue and visual descriptions

How the process works

You upload a video
        ↓
AI generates captions + audio descriptions (13 minutes)
        ↓
A reviewer checks and approves the English content (QC Review)
        ↓
System translates to all requested languages (automatic, 25 min per language)
        ↓
System generates audio voiceovers (automatic)
        ↓
A reviewer validates all language versions (Final Review)
        ↓
You receive a notification and download your files

Total time: Typically 1545 minutes, depending on video length and reviewer availability.


2. User Roles

The platform has five user roles. Each role can see and do different things.

Role What they can do
Client Upload videos, track their own jobs, download completed files
Reviewer Everything a client can do, plus perform QC Review and Final Review
Linguist Same as Reviewer — primarily for language specialists who check translated content
Production Everything a Reviewer can do, plus upload videos for clients, bulk-manage jobs
Admin Full access — everything above, plus manage users, delete any job, reprocess jobs

Not sure what role you have? Look at your left sidebar. If you see "QC Review" and "Final Review" links, you are a Reviewer, Linguist, or above. If you see "User Management," you are an Admin.


3. Logging In

Step 1 — Go to the platform

Open your browser and go to:
https://ai-sandbox.oliver.solutions/video-accessibility

You will see the Login page with the Oliver logo on the left and a sign-in form on the right.

Step 2 — Choose how to log in

Option A — Microsoft Account (for Oliver staff)

Click the large "Sign in with Microsoft" button.
A Microsoft window will open. Enter your Oliver email and password there.
The window will close and you will be taken to your dashboard automatically.

Option B — Email & Password (for external users and linguists)

The email/password form is hidden by default. To reveal it:

  1. On the login page, look for a small "Local login" link or toggle (usually below the Microsoft button). Click it.
  2. An Email and Password form will slide into view.
  3. In the Email field, type your email address (e.g., john.smith@example.com).
  4. In the Password field, type your password.
  5. Click the "Sign In" button.
  6. If you see a red error message, check that you typed the correct email and password. Passwords are case-sensitive.

Forgot your password? Contact your administrator. They can reset your password and give you a new temporary one.

Step 3 — You are in

After logging in, you will see your Dashboard — the main home screen.


4. Dashboard

The Dashboard is the first screen you see after logging in. It gives you a quick overview of what is happening.

What you see on the Dashboard

Top statistics row — Four large numbers:

Number What it means
Total Jobs All jobs you have access to (your own jobs if you are a Client; all jobs if you are Reviewer or above)
Processing Jobs that are currently being worked on by the AI system
In QC Jobs waiting for a human reviewer to check them
Completed Jobs that are finished and ready to download

For Clients: Below the statistics you will see:

  • A "Upload New Video" button — click this to start a new job
  • A list of feature highlights explaining what the platform does

For Reviewers, Linguists, Production, and Admins: Below the statistics you will see:

  • A "Quality Control" card showing how many jobs are waiting for QC review, with a "Review Now" button
  • A "Final Approval" card showing how many jobs are waiting for final approval, with a "Review Now" button
  • A "Recent Activity" list showing the last 5 jobs and their current status

Navigation sidebar (left side)

The sidebar is always visible. Click any item to navigate:

Sidebar Item Who sees it Where it goes
Dashboard Everyone Home screen
All Jobs Everyone Full list of all your accessible jobs
Upload Video Client, Production, Admin New job upload form
QC Review Reviewer, Linguist, Production, Admin QC queue
Final Review Reviewer, Linguist, Production, Admin Final review queue
User Management Admin only User administration

Top navigation bar

The top bar has:

  • Bell icon (🔔) — Click to see your notifications (see Section 11)
  • "New Upload" button — Quick access to upload a video (Client, Production, Admin)
  • Your name / avatar — Click to open a dropdown with Profile, User Management (Admin), and Sign Out

5. Client Guide

This section explains everything a Client needs to do: upload a video, track its progress, and download the final files.


5.1 Uploading a Single Video

How to get to the upload form

Option A: Click "Upload Video" in the left sidebar.
Option B: Click the "New Upload" button in the top right.
Option C: Click "Upload New Video" on the Dashboard.

All three take you to the same page: New Job.

Step 1 — Choose upload mode

At the top of the form, you will see two tabs:

  • "Single Upload" — Upload one video with full customisation options
  • "Multi Upload" — Upload several videos at the same time (see Section 5.2)

Make sure "Single Upload" is selected (it is the default).

Step 2 — Give your job a title

In the "Video Title" field, type a name for this job. This is just for your reference — it helps you find the job later.
Example: Q4 Training Video - Final Cut

Step 3 — Select what outputs you need

Under "Requested Outputs", tick the boxes for the files you need:

Checkbox What it creates
Captions (VTT) A subtitle file showing spoken dialogue
Audio Description Script (VTT) A text file describing visual content
Audio Description Voiceover (MP3) A spoken audio track describing visual content
Accessible Video (MP4) Your original video with narration embedded
SDH Captions (VTT) Captions with speaker labels and sound effect notation

Tip: If you tick "Accessible Video," a sub-option appears asking for the Accessible Video Method:

  • "Pause & Insert" — The video pauses briefly while narration is spoken, then resumes. Best for compliance.
  • "Audio Overlay" — Narration plays over the video simultaneously. Best for continuous playback.

Step 4 — Choose your languages

Under "Target Languages", click on the languages you need. Each language you select will be shown as a coloured tag. Click a language again to deselect it.

Examples: Spanish, French, German, Japanese

Translation Mode — After selecting languages, you will see a "Translation Mode" option:

  • "Video Native Mode (Recommended)" — The AI re-analyses the video in each target language directly. This gives more natural results.
  • "Traditional VTT Translation" — Translates the English caption text word-for-word. Faster but less natural.

We recommend Video Native Mode for marketing and branded content.

Step 5 — (Optional) Configure Voice Settings

If you selected "Audio Description Voiceover (MP3)" or "Accessible Video (MP4)", a "Voice Settings" section will appear. Click on it to expand.

Inside Voice Settings you can customise:

Setting What it does
TTS Provider Choose between Gemini (Google) or ElevenLabs
Model Flash — faster, lighter voice; Pro — higher quality, more natural
Speed How fast the narrator speaks (0.5 = slow, 1.0 = normal, 2.0 = fast)
Style Preset The overall tone: Neutral, Expressive, Professional, Calm, Energetic
Voice per Language For each language, choose a specific voice from the dropdown
Stability (ElevenLabs only) How consistent the voice sounds. Higher = more consistent
Similarity (ElevenLabs only) How closely the voice matches the reference

Not sure which settings to use? Leave everything as default. The platform will use the best settings automatically.

Step 6 — (Optional) Add brand context

In the "Brand Names (optional)" text area, you can type any important names or terms the AI should know about. For example:

  • Product names that might be mispronounced
  • Character names
  • Technical terminology specific to your company

This is optional but improves accuracy.

Step 7 — Upload your video file

Option A — Drag and drop:
Drag your video file from your computer and drop it onto the dashed upload area that says "Drop your video here."

Option B — Click to browse:
Click anywhere inside the dashed upload area, then find and select your video file using the file picker.

Requirements:

  • Format: MP4 (.mp4) only
  • Maximum size: 2 GB
  • Duration: No strict limit, but very long videos take longer to process

A progress bar will appear showing the upload percentage: 0% → 100%

Do not close the browser tab while the upload is in progress.

Step 8 — Submit the job

Once the file finishes uploading, click the "Create Job" button.

A success screen appears with the message "Job Created Successfully!" and two buttons:

  • "View Job Details" — click to go directly to your new job's detail page
  • "Create Another Job" — click to start a fresh upload form

The page will automatically redirect to the Job Detail page after 3 seconds if you do not click either button.


5.2 Uploading Multiple Videos at Once

If you need to upload many videos with the same settings, use the Multi Upload mode.

How to access Multi Upload

On the New Job page, click the "Multi Upload" tab at the top.

Step 1 — Select all your video files

Drag multiple .mp4 files onto the upload area, or click to browse and select several files at once (hold Ctrl or Cmd while clicking to select multiple).

Each file will appear as a row in the "Files to Upload" list. You can see:

  • File name
  • File size
  • A remove button (✕) to remove that file from the list

Step 2 — Configure shared settings

All files in a multi-upload share the same settings:

  • Requested Outputs (Captions, AD, etc.)
  • Target Languages
  • Translation Mode
  • Voice Settings (if applicable)
  • Brand Context

Configure these the same way as for a single upload (Steps 36 above). The Video Title field is not shown — each job will use the original filename as its title.

Step 3 — Upload all files

Click "Upload All".

An Upload Progress panel appears showing the status of each file:

  • Uploading... — currently being transferred
  • ✓ Success — job created
  • ✗ Failed — an error occurred (usually file type or size issue)

The system uploads up to 3 files simultaneously. Remaining files wait in the queue and start automatically when a slot becomes free. You can watch all uploads complete in real time.

If some uploads fail:
A "Retry Failed Uploads" button appears. Click it to automatically re-attempt any files that failed. This is useful if you had a temporary network issue.

Step 4 — Go to All Jobs

Once all uploads finish, click "Go to All Jobs" to see all your newly created jobs in the list.


5.3 Understanding Voice & TTS Settings

TTS stands for Text-to-Speech — the technology that converts the written audio description text into a spoken voice recording.

Providers explained

Gemini (Google TTS):

  • Free tier available
  • Very natural, neural voices
  • Good for most use cases
  • Available in 40+ languages

ElevenLabs:

  • Premium quality
  • More human-sounding
  • Best for high-end marketing content
  • Additional cost per character

Model options

Flash — Faster generation, slightly simpler voice. Good for internal content or drafts.
Pro — Higher quality, more natural intonation. Recommended for client-facing content.

Style Presets

Preset Best for
Neutral Informational content, training videos
Professional Corporate presentations, e-learning
Expressive Marketing videos, brand storytelling
Calm Healthcare, wellness, instructional
Energetic Sports, advertising, dynamic content
Custom Full manual control — a free-text field appears where you type your own style instructions

Voice Preview

Next to each voice selection dropdown, a "Preview" button (speaker icon) lets you listen to a short audio sample of that voice before committing to it. Click it and wait a moment — a short clip will play through your speakers or headphones.


5.4 Tracking Your Job

After uploading, you can follow the progress of your job.

Where to find your jobs

Click "All Jobs" in the left sidebar to see all your jobs.

Job status colours and meanings

Each job shows a coloured status badge:

Colour Status What is happening
Grey Created Job queued, waiting to start
🔵 Blue Ingesting Downloading and analysing your video
🔵 Blue AI Processing AI is generating captions and audio descriptions
🟡 Yellow Pending QC Waiting for a human reviewer
🟢 Green Approved (English) English content approved, translations starting
🟣 Purple Translating Converting to other languages
🟣 Purple TTS Generating Creating audio voiceovers
🟠 Orange Pending Final Review Waiting for final human approval
🟢 Green Completed Ready to download!
🔴 Red Rejected An issue was found — see review notes
🔴 Red TTS Failed Audio generation encountered an error — contact your reviewer

Getting real-time updates

The platform automatically updates job statuses in real time. You do not need to refresh the page. When your job reaches an important status (like "Pending QC" or "Completed"), a notification will pop up in the top right corner of your screen.

Clicking on a job

Click on any job title or row to open the Job Detail page. From there you can see:

  • Full job information
  • Processing history
  • Download button (when ready)

5.5 Downloading Your Completed Files

When your job status changes to Completed (green), your files are ready.

How to reach the download page

Option A: Go to All Jobs, find your completed job, and click the "Download" button in the Actions column.

Option B: Click on the job title to open Job Detail, then click the "Download Files" button (green button).

Option C: Click the direct link in the email notification you received when the job completed.

What you will see on the Download page

The download page is organised by language. For each language, you will see a card with all the files available for that language.

Source Video section:

  • Source Video (MP4) — Your original uploaded video
    Click "Download" to save it.

English section (and each additional language):

Button File When available
Captions (VTT) Subtitle file for closed captions Always
Audio Descriptions (VTT) Text script of visual descriptions If requested
Audio Descriptions (MP3) Spoken audio narration If requested
Accessible Video (MP4) Video with narration embedded If requested
Re-timed Captions (VTT) Captions re-synchronised to the accessible video If accessible video was created
Descriptive Transcript (TXT) Full text transcript If requested

Click any "Download" button to save that file to your computer.

⚠️ Download links are only valid for 24 hours. After 24 hours, the buttons will stop working. If you need to download again after the links expire, contact your administrator to regenerate the links.

How to use the files you downloaded

VTT caption files: Upload to your video player, website, or video hosting platform (YouTube, Vimeo, etc.) as a caption/subtitle track.

MP3 audio description: Play this audio alongside the video for visually impaired viewers using a screen reader or audio player.

Accessible Video (MP4): Use this as a replacement for your original video. It already includes the narration — no separate audio track needed.


6. Reviewer & Linguist Guide

This section explains the QC Review and Final Review workflows for Reviewers, Linguists, and Production users.


6.1 QC Review Queue

The QC Review queue shows all jobs that have been processed by AI and are waiting for a human to check the English captions and audio descriptions.

How to access the QC Queue

Click "QC Review" in the left sidebar.

What you see in the QC Queue

Each job in the queue shows:

  • Job title — the name given by the client
  • Status badge — should be "Pending QC" (yellow)
  • Source filename — the original video filename
  • Duration — length of the video
  • Creation date — when the job was submitted
  • Output badges — which outputs were requested: Captions, AD Script, AD Audio, Languages

Selecting jobs for bulk actions

Tick the checkbox on the left of each job row to select it.

Once jobs are selected, two bulk action buttons appear at the top:

  • "Approve Selected" — Approve multiple jobs at once. A dialog box will ask for optional notes.
  • "Reject Selected" — Reject multiple jobs. A dialog box will ask for required notes explaining the issues.

⚠️ Use bulk approval carefully. It should only be used for jobs you have already individually reviewed.

Opening a job for review

Click on a job row (anywhere except the checkbox) to open the full QC Detail review page.


6.2 QC Review — Detailed Walkthrough

The QC Detail page is your main tool for reviewing AI-generated content. Here is a complete walkthrough of every element on the page.

Top of the page

Back button (← QC Queue): Click to return to the QC queue without making any changes.

Job title: Shows the name of the job you are reviewing.

Language selector: If the job has multiple languages, a row of language tabs appears at the top. Click a language code (e.g., EN, ES, FR) to switch to that language's content.

Currently, QC Review focuses on English content. You will typically work in English here, and then Final Review covers the other languages.


View Mode buttons

Three buttons let you change how you view the content:

Button What it shows
Side-by-side Video on the left, editors on the right — this is the default and recommended mode
Video only Full-width video player, editors hidden
Editor only Full-width editors, video hidden

Use Side-by-side most of the time. Switch to Video only when you want to watch the full video without distraction. Switch to Editor only when you are doing intensive text editing.


Video toggle

Below the view mode buttons, a toggle lets you switch between:

  • Original Video — the raw video uploaded by the client
  • Accessible Video — the processed version with audio descriptions (only available if the job has been rendered)

Click the toggle to switch between them.


Video Player

The integrated video player works like a standard web video player:

Control What it does
Play/Pause button (▶ / ⏸) Start or stop playback
Progress bar Click anywhere on the bar to jump to that point in the video. Drag the handle to scrub.
Volume icon Click to mute/unmute. Drag the volume slider to adjust
Fullscreen button Click to expand to full screen. Press Esc to exit
Caption overlay Captions appear automatically over the video as it plays

When you click on a cue (a line) in the VTT editor on the right, the video will jump to that exact moment, so you can watch and verify.


Timeline Preview

Below the video player, a visual timeline shows coloured segments representing the video:

  • Blue segments — sections with captions
  • Orange segments — sections with audio descriptions
  • Grey segments — silent sections with no captions or descriptions

Click on any segment in the timeline to jump the video to that position.


Captions VTT Editor

The left editor (or top editor in some layouts) shows the Closed Captions VTT content.

Each line of text in the editor represents one cue — a single caption that appears on screen at a specific time.

What you see in the editor:

  • Timestamp on the left (e.g., 00:00:05.200 → 00:00:08.400) — the time the caption appears and disappears
  • Text content — what the AI transcribed

Editing caption text:

  1. Click on the text of any cue to place your cursor there
  2. Type to correct mistakes, fix spellings, change punctuation, etc.
  3. Changes are saved automatically — you do not need to click Save after every edit

Editing timestamps directly:

  1. Click on the timestamp of a cue (e.g., 00:00:05.200)
  2. The timestamp becomes an editable field — type the new time value
  3. Press Enter or click elsewhere to confirm the change

Adding a new cue: Each cue has two small buttons:

  • "Insert Before" — click to add a new blank cue before this one
  • "Insert After" — click to add a new blank cue after this one

The new cue appears with placeholder timestamps. Click on the text area and type the caption text.

Deleting a cue: Each cue has a delete button (trash icon). Click it. A confirmation dialog will ask "Are you sure you want to delete this cue?" Click "Delete" to confirm. This cannot be undone.

What to look for:

  • Incorrect words (mishearing by AI)
  • Missing punctuation
  • Wrong speaker attribution
  • Technical terms spelled incorrectly
  • Timing that does not match what is said on screen

Audio Description VTT Editor

The right editor (or bottom editor) shows the Audio Description Script — the text describing what is happening visually on screen.

Editing works the same way as the Captions editor.

What to look for:

  • Missing descriptions for key visual elements (on-screen text, character actions, scene changes)
  • Inaccurate descriptions
  • Descriptions that overlap with dialogue (a description should not play over important speech)
  • Descriptions that are too long for the time gap available

Timing Adjustment Tool

Found below the editors, this tool lets you shift all caption or audio description timings forward or backward.

When to use it: If all captions are consistently 2 seconds late or 1 second early, use this to fix them all at once rather than editing each cue individually.

How to use it:

  1. Click on the "Captions" or "Audio Descriptions" tab to select which VTT to adjust
  2. Use the quick-adjust buttons for common shifts:
    • "1s" — move all timestamps 1 second earlier
    • "0.5s" — move all timestamps 0.5 seconds earlier
    • "+0.5s" — move all timestamps 0.5 seconds later
    • "+1s" — move all timestamps 1 second later
  3. For a custom amount, type a value (in seconds) in the number field — positive = later, negative = earlier. For example, 2 = 2 seconds later, -1.5 = 1.5 seconds earlier. The allowed range is 30 to +30 seconds.
  4. Click "Apply Timing Adjustment"

The editor will update all timestamps immediately.


Voice Settings (collapsible section)

Click "Voice Settings" to expand this panel. Here you can change the TTS configuration for this specific job, overriding the defaults.

Settings are the same as described in Section 5.3.

Changes here will be applied if TTS is regenerated.


Accessible Video Controls (Pause Points)

If the job requested an Accessible Video with the "Pause & Insert" method, a "Accessible Video Controls" section appears.

This shows a list of pause points — specific timestamps where the video will pause to allow the audio description to play.

Adjusting pause points:

Each pause point shows a timestamp. Click on the timestamp field to edit it directly — type the new value and press Enter or click away to save. Changes take effect immediately (there is no separate Save button for individual pause points).

The pause duration is automatically calculated based on how long the description takes to speak at the selected TTS speed.

Whisper Refinement:

A checkbox labelled "Run Whisper pause refinement" appears near the pause points controls.

When ticked, the system uses a secondary AI pass (Whisper) to more precisely align pause points with natural speech pauses in the original audio. This can improve the smoothness of the paused accessible video.

Tick this checkbox before clicking "Render Changes" if you want this refinement applied.

Applying changes to the accessible video:

After editing captions, audio descriptions, voice settings, or pause points, click the "Render Changes" button to generate an updated accessible video with your changes applied.

A status message will show while rendering: "Rendering in progress…" This can take 15 minutes.


Pending TTS Regenerations

This panel (if visible) shows a list of audio description cues that have been edited but not yet synthesised into new audio.

This is informational — it shows you that when you approve the job, the system will automatically regenerate audio for the changed cues.


Manual VTT Upload

If you have an externally-edited VTT file that you want to use instead of the AI-generated one, click "Upload VTT".

A file picker will open. Select your .vtt file. The editor will be replaced with the content from your uploaded file.


Cost Tracker Project ID

Near the bottom of the page, there is a small field labelled "Cost Tracker Project ID".

This is an optional field. If your organisation uses the Oliver AI Cost Tracker system, you can enter the project ID here to associate the AI processing costs of this job with a specific project.

How to use it:

  1. Type the project ID in the field (e.g., PROJ-2026-001)
  2. Click the "Save" button next to the field
  3. A green "Saved" indicator will confirm the value was stored

If you do not use Cost Tracker, leave this field empty.


Review Notes

At the bottom of the page, a "Review Notes" text area lets you type notes about your review.

  • For Approve: Notes are optional but recommended — document what you checked and any changes you made
  • For Reject: Notes are required — you must explain why you are rejecting the job so the client understands the issue

Approve or Reject buttons

Two large buttons at the bottom:

"Approve [LANG] Version" (green button)

The exact button label shows the language being approved, for example "Approve EN Version".

  • Click when you are satisfied with the content
  • No confirmation dialog appears — the approval is immediate
  • The job status changes and the translation/TTS pipeline starts automatically
  • You are redirected back to the QC queue

"Reject" (red button)

  • Click when the content has significant issues that cannot be fixed by editing
  • An inline rejection form expands directly on the page (no pop-up dialog)
  • A required notes field appears — type a clear explanation of the problem (e.g., "Audio quality too poor for accurate transcription — please re-record")
  • Click "Confirm Rejection" to submit
  • The job returns to AI processing for a retry
  • You are redirected back to the QC queue

6.3 Final Review Queue

The Final Review queue shows jobs that have completed translation and TTS generation and are ready for a final check before delivery to the client.

How to access the Final Review queue

Click "Final Review" in the left sidebar.

What you see in the Final Review queue

The queue is divided into two sections:

Pending Final Reviews — jobs waiting for approval:

  • Job title
  • Status badge (orange "Pending Final Review")
  • Language count
  • Creation date
  • Checkbox for bulk actions

Recently Completed — jobs you have recently approved (shown for reference).

Bulk actions

Select jobs using checkboxes, then use the bulk action buttons:

  • "Complete Selected" — Approve multiple jobs for client delivery
  • "Return to QC" — Send multiple jobs back to QC (requires notes in dialog)

Opening a job for final review

Click on any job row to open the Final Detail page.


6.4 Final Review — Detailed Walkthrough

The Final Detail page lets you verify all translated language versions of the job before approving delivery.

Language cards

The main content area shows a row of Language Cards — one card per language (including English).

Each card shows:

  • Language name (e.g., Spanish, French, German)
  • Origin badge:
    • Original — English source content
    • Translated — standard machine translation
    • Transcreated — AI-adapted cultural translation
  • Quality Issues badge (yellow warning) — if any QA notes are present from the TTS system, a warning badge will appear. Click the badge to read the issue details.
  • Asset status row:
    • ✓ or ✗ for Captions
    • ✓ or ✗ for Audio Descriptions
    • ✓ or ✗ for MP3 Audio

Reviewing a language

Click on a language card to expand it and review its content.

Inside the card you will see:

Tab toggle: "Captions" / "Audio Descriptions"
Click to switch between viewing the caption VTT and the audio description VTT.

Read-only VTT preview:
The VTT content is shown in a read-only viewer (cannot be edited here). You can read through the translated content to check for obvious errors.

Note: The Final Review page does not allow editing. If you find issues that need fixing, use the "Return to QC" option and describe the required changes in the notes.

Audio player:
If an MP3 audio file is available, an audio player will appear. Click Play (▶) to listen to the TTS narration. Check for:

  • Natural pronunciation
  • Correct language
  • Audio quality issues
  • Mispronounced brand names or technical terms

Cost Tracker Project ID

Same as in QC Review — optional field to associate costs with a project. Type the ID and click Save.

Final Review Notes

Type any observations about your review in the notes field.

  • For Approve: Notes are optional
  • For Return to QC: Notes are required — describe exactly what needs to be fixed and in which language

"Approve for Client Delivery" (green button)

Click when all language versions are acceptable.

  • No confirmation dialog appears — the approval is immediate
  • Job status changes to Completed (green)
  • Client receives an email notification with download links
  • The job moves to the "Recently Completed" section of the Final Review queue

"Return for QC" (button)

Click when issues need to be fixed before delivery.

An inline form expands on the page (no pop-up dialog). A required notes field appears — describe exactly what needs to be fixed and in which language. Click "Confirm Return" to submit.

What happens:

  • Job status changes back to Pending QC
  • The job reappears in the QC Review queue
  • A WebSocket notification is sent to the QC team

7. Production User Guide

Production users have the same capabilities as Reviewers, plus additional job management tools.

Production users can:

  • Upload videos (same as Clients)
  • Perform QC Review and Final Review (same as Reviewers)
  • Use all bulk job actions on the All Jobs page

See Section 5 for uploading and Section 6 for reviewing.

For bulk job actions, see Section 8.6.


8. Admin Guide

Admins have full access to all features, including User Management.


8.1 User Management — List View

How to access User Management

Click "User Management" in the left sidebar (Admin only).

What you see on the User List page

At the top right, a blue "AI Cost Dashboard" button links to the external cost tracking system (opens in a new tab).

Filter options:

Filter How to use it
Role dropdown Click to filter by: All / Admin / Production / Reviewer / Linguist / Client
"Active users only" checkbox Tick to hide deactivated accounts

The user table columns:

Column What it shows
User Full name and email address
Role Their role badge (colour coded)
Auth Method "Microsoft" (SSO) or "Local" (email/password)
Status Active (green) or Inactive (grey)
Created When the account was created
Actions Edit button (pencil icon) and additional action buttons

Action buttons per row:

  • Edit (pencil icon) — Opens the User Detail page to edit this user
  • Reset Password — Only shown for Local auth users. Generates a new temporary password.
  • Deactivate — Only shown for active users. Deactivates the account.

Pagination:
At the bottom of the table, you will see page numbers. Click them to navigate through users. Each page shows 20 users.

Creating a new user

Click the "Create User" button (top right of the page).

A modal dialog box slides open. See Section 8.2 for full instructions.


8.2 Creating a New User

Click "Create User" on the User Management page. A modal dialog appears with these fields:

Email address (required)
Type the user's email address. For Oliver staff who will use Microsoft SSO, this must match their Microsoft account email exactly.

Full Name (required)
Type the user's full name as it should appear in the system.

Password (required)
Type a temporary password for the user. They should change it after first login.
Password rules: Minimum 8 characters. Use a mix of letters, numbers, and symbols.

Role (required)
Select from the dropdown:

Role Select for...
Admin Platform administrators who need full access
Production Internal production team members who upload and review
Reviewer Quality control reviewers checking English content
Linguist Language specialists reviewing translations
Client Clients who upload videos and download results

Note about Microsoft SSO: If the user will log in with their Microsoft account (oliver.agency email), you still need to create their account here first. The system will recognise their Microsoft email and use SSO automatically when they log in. The password you enter here will not be needed for Microsoft users.

Click "Create User" to save. The dialog closes and the new user appears in the list.


8.3 Editing a User

Click the Edit (pencil) icon next to any user, or click on their name.

You are taken to the User Detail page with these sections:

Edit User Form

Field What you can change
Email Change the email address. For Microsoft users, this must match their Microsoft account.
Full Name Update the display name
Role Change their permission level
Active User Toggle off to deactivate, toggle on to reactivate

The "Save Changes" button only becomes clickable when you have actually changed something. This prevents accidental saves.

Click "Save Changes" to apply.

User Information card (right side)

Shows read-only information:

  • User ID — internal system identifier
  • Auth Method — Microsoft or Local
  • Created date — when the account was first made
  • Current status — Active or Inactive

Actions card (right side)

If the user uses Local (email/password) authentication:
A "Reset Password" button appears. Click it to generate a new temporary password. A dialog box will show the temporary password — copy it and send it to the user securely. They must change it on their next login.

If the user uses Microsoft authentication:
An informational banner explains that their password is managed by Microsoft and cannot be reset here.


8.4 Resetting a User Password

For Local authentication users only (not Microsoft SSO users).

Option A — From the User List:
Find the user in the list, then click the "Reset Password" button in their row (only visible for Local auth users).

Option B — From User Detail:
Open the user's detail page. In the Actions card, click "Reset Password".

In both cases, a toast notification appears in the corner of the screen with the message:
"Password reset. Temporary password: [new-password]"

Copy the temporary password from the toast before it disappears. Send it to the user through a secure channel (e.g., direct message or secure email).

Tell the user to log in with this temporary password and change it immediately.


8.5 Deactivating a User

Deactivating a user prevents them from logging in but preserves all their historical data and jobs.

Option A — From the User List:
Find the user, then click the "Deactivate" button in their row.

Option B — From User Detail:
Open the user's detail page. Untick the "Active User" checkbox. Click "Save Changes".

To reactivate a deactivated user:

  • From the list: Remove the "Active users only" filter tick, find the user, click "Activate"
  • From detail page: Tick the "Active User" checkbox and save

8.6 Bulk Job Operations

Admins and Production users can perform bulk operations from the All Jobs page.

How to select jobs for bulk operations

On the All Jobs page, tick the checkbox in the first column of each job row you want to include.

A bulk actions toolbar appears at the top of the table showing how many jobs are selected and offering action buttons.

Available bulk operations

Delete (Admin only)

  • Permanently deletes selected jobs and all associated files (video, VTT, MP3, etc.)
  • A confirmation dialog shows you exactly what will be deleted and asks you to type "DELETE" to confirm
  • ⚠️ This is irreversible. All files in Google Cloud Storage are also deleted.

Reprocess (Admin only)

  • Resets selected jobs back to "Created" status and re-triggers the full AI processing pipeline
  • Use this when: AI generated incorrect content, processing got stuck, or AI prompts have been updated
  • A confirmation dialog will explain what will happen
  • Existing VTT files will be overwritten

Download All Files

  • Generates signed download URLs for all assets across the selected jobs
  • Useful for bulk exporting completed jobs

Return to QC

  • Moves selected jobs back to "Pending QC" status
  • A dialog appears asking for required notes explaining why the jobs are being returned
  • These notes will be visible to reviewers in the QC queue

9. All Jobs List

The All Jobs page is accessible to all users via "All Jobs" in the sidebar.

What you see:

  • A table of jobs you have access to (your own jobs for Clients; all jobs for Reviewers and above)
  • Pagination at the bottom (20 jobs per page)
  • A WebSocket connection status indicator (top right)

Filters (top of page):

Filter How to use
Search box Type any part of the job name, filename, or submitting user's name. Results update as you type.
Created By Click the dropdown to filter by a specific user (shows all users if you are Admin or Reviewer)
Status Click to filter by a specific job status (e.g., show only Completed jobs)
Date From / Date To Pick a date range to see only jobs created within those dates

Table columns:

Column What it shows
Job Name The title given by the client. A small TTS icon appears if TTS was generated.
Created By The user who submitted the job
Date Created When the job was submitted
Languages Number of target languages requested
Status Current status badge
Actions Context-sensitive buttons based on current status

Clicking on a job row (anywhere except the checkbox) opens the Job Detail page.

Action buttons that may appear in the Actions column:

Button When it appears What it does
Review When status = Pending QC Opens QC Review for this job
Final Review When status = Pending Final Review Opens Final Review for this job
Download When status = Completed Opens the Download page
Delete Always (for job owner or Admin) Deletes this job (requires confirmation)

10. Job Detail Page

Click on any job title to open the Job Detail page. This page gives you a complete picture of one job.

Top section

Job title — the name of the job.

Status badge — current status with colour coding.

Progress Indicator (right side panel) — A vertical timeline showing each step in the processing workflow. Completed steps show a green tick, the current step shows a spinning indicator, and future steps are grey.

Steps shown:

  1. Created
  2. Ingesting
  3. AI Processing
  4. Pending QC
  5. Translation
  6. TTS Generation
  7. Rendering Video
  8. Pending Final Review
  9. Completed

Tabs

Overview tab:

  • Job Information card: Original filename, source language, requested output languages, output types requested
  • Review Notes card: A timeline of all status changes with notes from reviewers at each step
  • Download Section: (if Completed) Download buttons for all files

Video Preview tab:

  • Full video player showing the source video
  • Caption overlay enabled
  • Click play to watch with captions

Assets tab:

  • A grid of language cards
  • Each card shows which assets are available: Captions Ready (green), AD Ready (green), MP3 Ready (green), or pending (grey)

History tab:

  • A full processing timeline with timestamps
  • Shows every status change, who made it, and any notes

Error display

If a job encountered an error, a red Error panel appears on the Overview tab showing:

  • Error type and message
  • Which processing step failed
  • For TTS failures: which specific cues failed and which languages were affected

"Retry TTS Generation" button — If the job status is TTS Failed, this button appears. Click it to trigger a new TTS generation attempt. This is useful if TTS failed due to a temporary API error.

TTS Rewrites Caution

If the AI rewrote any audio description text for TTS purposes (e.g., expanding abbreviations or adjusting pronunciation), a yellow "TTS Rewrites" panel appears.

This panel lists each rewrite, showing:

  • Original text — what was in the VTT
  • Rewritten text — what was sent to the TTS engine

These rewrites are intentional improvements for audio quality and do not affect the VTT files.

Return to QC button

If you have Reviewer permissions and the job is in a state where returning to QC is appropriate, a "Return to QC" button appears. Clicking it opens a dialog requiring you to enter notes explaining why you are returning it.

Action buttons

Depending on the job status and your role:

  • "Go to QC Review" — when status is Pending QC (Reviewer role)
  • "Go to Final Review" — when status is Pending Final Review (Reviewer role)
  • "Download Files" — when status is Completed (all users)

11. Notifications

The notification system keeps you informed about job progress without needing to refresh any pages.

The bell icon

The 🔔 bell icon is in the top right of every page (in the navigation bar).

A red badge on the bell shows the number of unread notifications. When the number reaches 99, it shows "99+".

Opening the notification panel

Click the bell icon to open the notification dropdown.

What you see in the notification panel

Header row:

  • "Mark all as read" button — clears all unread indicators at once
  • "Clear all" button — removes all notifications from your list

Notification list:

Each notification shows:

  • A colour-coded dot on the left:
    • 🟢 Green = success (job completed, approval)
    • 🔵 Blue = information (status update)
    • 🟡 Yellow = warning (job rejected, issues found)
    • 🔴 Red = error (processing failure)
  • Message text — what happened
  • Job title (if applicable) — which job this is about
  • Timestamp — how long ago (e.g., "5 minutes ago")
  • "View job" link — click to go directly to that job's detail page
  • ✕ close button (appears on hover) — click to remove this notification

Blue dot indicator: A small blue dot on the left of a notification means it is unread. Clicking the notification or "View job" marks it as read.

Empty state: If you have no notifications, you will see an icon and the message "No notifications yet."

Closing the notification panel

Click anywhere outside the panel, or click the bell icon again.

What triggers a notification

You receive a notification when:

  • Your job (or any job you have access to) changes to an important status: Pending QC, Completed, Rejected
  • An error occurs during processing
  • A bulk operation you triggered completes

12. Connection Status Indicator

On the All Jobs page and Job Detail page, you will see a small coloured dot in the corner labelled with a connection status:

Colour & text What it means
🟢 Connected Live updates are working. Job statuses will update automatically.
🟡 Connecting… The system is trying to establish a live connection. Wait a moment.
Disconnected No live connection. Refresh the page to reconnect.
🔴 Error Connection failed. Check your internet. Refresh the page.

If you see anything other than Connected, job statuses will not update automatically. You can still use the page and refresh it manually to see the latest status.


13. Job Status Reference

This is a complete list of every possible job status and what it means.

Status Colour Meaning Who is responsible
Created Grey Job has been submitted and is waiting to start processing System (automated)
Ingesting 🔵 Blue System is downloading your video and reading its properties System (automated)
AI Processing 🔵 Blue Gemini AI is analysing the video and generating captions + audio descriptions AI (automated)
Pending QC 🟡 Yellow AI processing is complete. A human reviewer needs to check the content Reviewer / Linguist
QC Feedback 🟡 Yellow Job has been returned to QC with feedback notes after a Final Review check Reviewer / Linguist
Approved (English) 🟢 Green English content approved. Translations are starting automatically. System (automated)
Approved (Source) 🟢 Green Source-language content approved (used when video native mode is active). Translations are starting. System (automated)
Translating 🟣 Purple System is translating captions and audio descriptions to other languages System (automated)
TTS Generating 🟣 Purple System is creating MP3 audio voiceovers for all languages System (automated)
Rendering Video 🔵 Blue System is creating the Accessible Video file (if requested) System (automated)
Pending Final Review 🟠 Orange All processing done. A reviewer must check all language versions before delivery Reviewer / Linguist
Completed 🟢 Green Job fully approved and ready to download Client
Rejected 🔴 Red Content was rejected at QC. The system will retry AI processing. System then Reviewer
TTS Failed 🔴 Red Audio generation encountered an error. A reviewer can trigger a retry from the Job Detail page. Admin / Reviewer
Render Failed 🔴 Red Accessible Video rendering failed. Contact your administrator to investigate. Admin

14. Tips & Best Practices

For Clients — Getting the Best Results

Video quality matters most.
The AI transcription is only as good as the audio in your video. Clear dialogue with minimal background noise will produce far more accurate captions than a noisy recording. If your video has very poor audio quality, expect more reviewer correction time.

Use brand names field for technical terms.
The "Brand Names (optional)" field is especially helpful for product names with unusual spellings or pronunciations (e.g., brand names that don't follow standard pronunciation rules), acronyms, and proper nouns. The more context you provide, the fewer corrections will be needed.

Choose Audio Overlay when timing is critical.
If your video has very tight pacing and you cannot afford any inserted pauses, choose the "Audio Overlay" accessible video method. The narration will speak over the video. If compliance requires that descriptions play when no speech is happening, use "Pause & Insert" instead.

Video Native Mode gives better translations.
For marketing or brand content where cultural nuance matters, "Video Native Mode" re-analyses the video in each target language directly instead of translating English word-for-word. The results feel more natural and are worth the slightly longer processing time.

Download your files promptly.
Download links expire after 24 hours. If you need files again later, contact your administrator.


For Reviewers — Efficient Review Workflow

Always watch the video in Side-by-side mode.
This mode lets you click on any caption cue and the video immediately jumps to that point. Use it to verify that the timing of each caption matches the spoken audio.

Fix timing before text.
If the captions are consistently offset (all late or all early), use the Timing Adjustment tool first with the ±0.5s/±1s buttons. This is much faster than editing each timestamp individually.

Use the audio player in Final Review.
In the Final Review page, each language has an audio player for the MP3 voiceover. Always listen to at least a sample of each language's audio — mispronounced brand names are the most common quality issue and are easy to catch by ear.

Reject with specific instructions.
When rejecting a job, write notes that tell the next reviewer (or the client) exactly what the problem is and how to fix it. Vague notes like "bad quality" are not actionable. Good notes: "Spanish translation of cue at 00:02:15 is grammatically incorrect — please re-check."

Bulk approve only jobs you've verified.
The "Approve Selected" bulk button in the QC queue does not warn you to review each job. Only select jobs that you have individually reviewed in their detail pages.


For Admins — User & Job Management

Use Linguist role for external language reviewers.
The Linguist role has the same capabilities as Reviewer. Use it for external language specialists or contractors so you can distinguish them from internal QC reviewers in the user list.

Reprocess sparingly.
The Reprocess bulk action re-runs AI processing from scratch, which overwrites all existing VTT content. Only use it when you know the AI output was fundamentally wrong (e.g., wrong language detected, corrupt output). For minor errors, it is faster for a reviewer to edit the VTT.

Deactivate, don't delete users.
When a team member leaves, deactivate their account (do not create a fresh account later). Deactivating preserves all historical audit data and job records. If they return, you can reactivate the same account.


15. Troubleshooting & FAQ

"My video has been 'AI Processing' for more than 30 minutes. What's wrong?"

Very long videos (45+ minutes) or videos with very complex audio can take up to 1 hour to process. If it has been more than 1 hour:

  1. Refresh the page and check if the status has updated
  2. Check the Job Detail page → History tab for any error messages
  3. Contact your administrator with the Job ID (visible in the URL bar)

"The captions are in the wrong language."

This happens when the AI detects the wrong source language. The reviewer should:

  1. Open QC Review for the job
  2. Edit the VTT content to correct language
  3. If the entire content is wrong, an Admin should use "Reprocess" from the All Jobs bulk actions

Download links expire after 24 hours. Ask the client to check when the email was received. If the links are expired:

  • An Admin needs to regenerate the download URLs (contact the platform administrator to trigger this manually)

"TTS audio sounds wrong — mispronounced words."

  1. In QC Review, open Voice Settings
  2. Check the selected voice model — try switching from Flash to Pro for better quality
  3. For brand names, verify they are listed in the "Brand Names" field
  4. Approve the job and trigger a TTS regeneration by using the voice settings change

If a specific language's audio quality is consistently poor, contact your administrator to try a different voice for that language.


"I can't find a job in the QC queue."

Possible reasons:

  • The job may still be in "AI Processing" — it hasn't reached QC yet. Check All Jobs.
  • The job may have been approved and moved forward already. Use the Status filter on All Jobs to check "Approved (English)" or later statuses.
  • You may not have the Reviewer role required to see the QC queue. Check with your administrator.

"The video player won't load."

Try these steps in order:

  1. Refresh the page (F5 or Cmd+R)
  2. Check your internet connection
  3. Try a different browser (Chrome or Firefox recommended)
  4. Check that you are not on a VPN that blocks Google Cloud Storage domains

If the issue persists, the signed URL may have expired — contact your administrator.


"I accidentally approved a job — can I undo it?"

There is no automatic undo for approvals. However:

  • An Admin or Production user can use the "Return to QC" bulk action on the All Jobs page to move the job back to Pending QC
  • From Job Detail, click "Return to QC" if that button is visible for your role

"The WebSocket shows 'Disconnected' — is the platform down?"

The platform itself may still be fully functional. WebSocket disconnections are usually caused by:

  • Brief network interruptions
  • Browser tab going to sleep (on mobile or energy-saving mode)
  • Firewall or proxy settings blocking WebSocket connections

Try refreshing the page. If the issue persists consistently, contact your administrator. You can still use all features — the page simply won't auto-update statuses until reconnected.


16. Glossary

Term Definition
AD Audio Description — narrated text describing visual content for blind/low-vision viewers
Accessible Video A video file with audio descriptions embedded as a narration track
AI Processing Automatic content generation by the Gemini 2.5 Pro AI model
Cue A single subtitle entry in a VTT file with a start time, end time, and text
ElevenLabs A premium AI text-to-speech service used for high-quality voice generation
Final Review The second human review stage, where all translated content is checked before delivery
GCS Google Cloud Storage — where all video and output files are stored securely
Gemini Google's AI model used for video analysis and content generation
Job A single video upload with all its associated processing, outputs, and history
Linguist A user role for language specialists who review translated content
MP3 Audio file format used for the audio description voiceover
MP4 Video file format used for uploaded source videos and accessible video outputs
QC Quality Control — human review of AI-generated content
SDH Captions Subtitles for the Deaf and Hard of Hearing — includes speaker names, sound effects, and music notation
Signed URL A time-limited secure link to download a file from cloud storage (valid for 24 hours)
Status Badge Coloured label showing the current stage of a job
TTS Text-to-Speech — technology that converts written text into spoken audio
Transcreation AI-assisted cultural adaptation of translated content (more natural than direct translation)
VTT WebVTT — the standard file format for video captions and subtitles
WebSocket The technology that enables real-time status updates without page refreshes
WCAG Web Content Accessibility Guidelines — international standards for digital accessibility

Appendix A — Keyboard Shortcuts (QC Review Page)

Shortcut Action
Ctrl + S Save current VTT changes
Ctrl + Enter Confirm current action
1 Switch to Side-by-side view
2 Switch to Video-only view
3 Switch to Editor-only view
Spacebar Play/Pause video (when video is focused)

Appendix B — Supported Languages

The platform supports translation and TTS generation for the following languages (and many more via Google Translate):

European: English, Spanish, French, German, Italian, Portuguese, Dutch, Swedish, Norwegian, Danish, Finnish, Polish, Czech, Hungarian, Romanian, Greek, Turkish

Asian: Japanese, Korean, Simplified Chinese, Traditional Chinese, Thai, Vietnamese, Indonesian, Malay

Middle East / Other: Arabic, Hebrew, Hindi, Ukrainian, Russian

TTS (audio generation) is supported for most major languages. Contact your administrator if you need a language that is not generating audio.


Appendix C — File Naming Convention

When you download files, they are named using this pattern:

{JobTitle}_{language}_{type}.{extension}

Examples:

  • Q4_Training_en_captions.vtt — English closed captions
  • Q4_Training_es_captions.vtt — Spanish closed captions
  • Q4_Training_en_ad.vtt — English audio description script
  • Q4_Training_en_ad.mp3 — English audio description audio
  • Q4_Training_fr_accessible.mp4 — French accessible video
  • Q4_Training_source.mp4 — Original uploaded video

End of User Guide

Video Accessibility Platform v3.0 | April 2026
For technical support or questions, contact your platform administrator.