Bayyinah Subtitle Suite
Volunteers Only
Please enter the access password provided by your team coordinator.
📜
Bayyinah Subtitle Suite
Transcribe · Edit · Track · Export
API Keys: not set

📚 Episode Library

EpisodeStatusProgress Text ✓Timestamps ✓Last Updated CommentsActions
Add a new episode to the library
🎙 Audio Transcription
Upload audio (any size up to ~200MB). Whisper transcribes with auto-chunking for large files, then Claude refines per Bayyinah's 4 hard rules: uniform Arabic handling, mandatory translations, mandatory references, first-occurrence transliteration.
⚠ Running from file:// — API calls will fail. Run from local server: cd ~/Downloads && python3 -m http.server 8080 then open http://localhost:8080/Bayyinah_Subtitle_Suite.html
🔑
Both API keys required
Click "API Keys" in the top right to add your OpenAI (Whisper) and Anthropic (Claude) keys.

Episode Details

🎵
Upload Audio File
Click or drag & drop — any size up to ~200MB
Processing…
Setting up
🗂 Audio Library
Browse Bayyinah's audio archive and pick episodes to transcribe directly. No need to download files manually — click any episode and the suite will fetch it and run the full transcription pipeline.
No episode loaded — open one from the Library
Insert:
🎵 Audio Reference
🎵
No audio loaded
Cue Timeline — click to jump
Open an episode to see timeline
📄
Open an episode from the Library or transcribe audio to begin
📖 Bayyinah Subtitle Suite — Volunteer Guide
Everything you need to transcribe, edit, and finalize subtitles for BTV content.
📄 Open full guide (PDF) — opens in new tab
🚀 Getting Started
Open the suite: go to the URL your coordinator gave you, enter the access password, and click Unlock. Your session is remembered on this device — you won't normally have to log in again.
Add your API keys (one-time): click the API Keys indicator at the top right. Paste your OpenAI key (Whisper transcription, looks like sk-…) and your Anthropic key (Bayyinah style guide via Claude, looks like sk-ant-…), then Save. Keys are stored only in your own browser, never on a Bayyinah server. Treat them like passwords — don't share them or paste them elsewhere.
No keys yet? Contact your team coordinator and they'll share them with you.
🌍 Your Work Is Shared With the Team
All episodes are stored in one shared cloud library. When you add or edit an episode, everyone else sees it too (after they reload). You're all working from the same set of episodes — not separate copies.
Switching devices is fine. Start on your laptop, continue on your desktop — your episodes follow you, because they live in the cloud, not in one browser.
If two people edit the same episode at once: the suite warns you with a banner rather than silently overwriting. You can choose to keep your version or reload theirs. To avoid clashes, coordinate so two volunteers aren't editing the same episode at the same time.
Audio is not stored in the cloud — only your text and timestamps. For Audio Library episodes, the audio loads automatically when you open the episode (it streams from S3, so the first play may take a few seconds to buffer). Your text edits are always saved.
🎧 Loading an Episode from the Audio Library
The Audio Library tab gives direct access to all 1,262 Bayyinah Deeper Look episodes across 73 Surahs — no downloading or uploading needed.
Browse: Surahs are grouped collapsibly. Use the Surah dropdown (in Quranic order), the search box (e.g. "Yusuf", "patience", "ayah 250"), or the status filter to find "Not transcribed" episodes to start on. Use Expand all / Collapse all to navigate.
Start work: find your assigned episode and click 🎙 Transcribe this. The suite downloads the audio from S3, runs Whisper, applies the Bayyinah style guide via Claude, and opens it in the Editor — automatically.
Large files (>24 MB) are chunked automatically — you'll see a "chunks" indicator.
Badges in the Audio Library: Not transcribed = not started · ✓ In your library = already transcribed, click Open in Editor to resume · ⚠ possible duplicate = multiple files share a name; verify with your coordinator before transcribing to avoid doing the work twice.
📄 Uploading Your Own VTT/SRT File (alternative)
Only for content not in the Audio Library. In the Transcribe tab, click the 📄 VTT File (skip transcription) toggle, drag in your .vtt or .srt file, give the episode a title, and click 📥 Load VTT into Episode. Cues load instantly — no API calls.
To listen while editing, open the episode and use ↑ Upload Audio File in the audio panel — it loads for playback only and doesn't affect your cues. Use ↑ Load Audio again to swap files.
Note: VTT-uploaded files do NOT get the AI style guide applied automatically — apply Bayyinah formatting manually, or re-transcribe from audio.
✏️ Editing in the Editor
Listen: use the player in the left panel; click ▶ on any cue to jump to that moment.
Fix words the AI got wrong (proper nouns, scholar names, technical terms — see Style Guide below).
Add ayah references: the AI marks unknown ayahs as (?:?) — replace with the correct (Surah:Ayah).
Adjust timestamps: edit directly or use the +/- buttons to nudge by 0.05s.
Merge with below: the ⤓ Merge with below button joins the current cue with the one beneath it.
Add an empty cue: the ➕ Add empty cue button inserts a new blank cue right after the selected one — no need to split to make space.
Splitting a cue: adjust both handles in the split window — the top marks where the 2nd half's audio begins, the bottom where its text begins.
QA Report (top-right of editor) flags gaps, overlaps, and formatting issues.
Undo: Cmd+Z (Mac) / Ctrl+Z (Windows) in any text field; the toolbar keeps a short edit history for larger reverts.
✎ Renaming Episodes
Click the small ✏ pencil next to a title, type a clearer name, press Enter (Esc to cancel). Renamed episodes show a ✎ renamed badge; click ↻ to restore the original. Only rename genuinely useless titles (random IDs, hex strings) — simple lowercase titles will be auto-fixed in a future build.
⚠ Re-Transcribing Is Destructive
Re-transcribing replaces ALL existing cues with a fresh AI transcription. There is no undo. If you've spent time editing, click ⬇ Save & Export VTT first to back up your work — you can always re-upload it if the new transcription is worse. If you clicked Re-transcribe by mistake and haven't picked a file yet, just close the dialog; nothing changes until you confirm AND select audio.
✅ Marking & Exporting
When the text is done, click Mark Text Done. When timestamps are confirmed, click Mark Timestamps Done. Then Save & Export VTT to download the finished file, and send it to your coordinator (or follow your team's upload process for Bayyinah TV).
Status badges (Library tab): 🎙 Transcribed (from AI audio) · 📄 VTT Loaded (from upload) · ✏️ Text Edited · ⏱ Timestamps Done · ✅ Complete (ready for export).
📐 Subtitling Style Guide
🇬🇧 English Subtitles — Line Structure
Follow natural speech pauses (what Ustadh says before taking a breath) — usually 4–10 words per line.
Keep complete sentences together unless Ustadh deliberately pauses mid-sentence for emphasis. Two lines per cue is acceptable for >10 words, but NEVER exceed 2 lines.
Clean up minor irregularities without changing meaning: merge unnecessarily-split cues; condense false starts (e.g. "but then, cuz they asked for help" → "because they asked for help"). Never split a greeting — it must appear in full within one cue.
⏰ Timestamping & Formatting
Tolerance ±50ms. Larger gaps are fine at natural pauses. Delete all empty/invalid/duplicate entries.
American English spelling. Time: 10:00 am – 12:00 pm. Lists numbered 1. 2. 3. Hadith ref: (Sahih Al-Bukhari). Ayah ref: (Surah:Ayah).
Remove all: bold/italic/underline, asterisks (*), quotation marks, emojis, stray !/? punctuation, stray diacritics, Latin letters with lines (ā š ō etc.), AI words (Delve, Transform, Profound), fillers (aah, uhm), Oxford commas, long hyphens. Replace square brackets [ ] with round ( ).
📖 Arabic — Quranic Ayahs
First line: complete Ayah in Arabic with all harakat. Second line: M.A.S. Abdel Haleem English translation. Both lines end with the reference in round brackets (Surah:Ayah), no spaces.
*** Strict Requirement *** All ayahs must be verified independently on Quran.com — Arabic spelling, harakat, translation, and reference — even if the transcript matches the speaker. No exceptions. Pay special attention to the opening du'aa and Arabic at the start of episodes, where errors are most common.
For repeated quotations of the same ayah, you may use Arabic-only or English-only depending on what the speaker cites. Don't split an ayah across cues unless it's too long for readability.
🌐 Arabic — Vocabulary & Terms
Frequently-used words: first time Arabic (transliteration / English) e.g. حُزْن (huzn / sadness); afterwards Arabic only e.g. حُزْن.
Grammar terms being discussed (haal, nasab, mubtada, khabar…) stay in transliteration — not translated.
Non-Quranic Arabic (hadith, tafsir, poetry, slides): only write Arabic if well-known, clearly spoken, and easily written — then add the English when Ustadh translates. Otherwise default to English only; do NOT insert Arabic from external sources.
📝 Bayyinah Spelling Standards
Allah: not Allaah · use جل جلاله (not SWT) · capitalize pronouns He Him His We Our You Your · Ar-Rahman (hyphen).
Prophet Muhammad (not SAW/PBUH). Capitalize "Prophet"; add (AS) after prophet names: Adam, Nuh, Ibrahim, Isma'eel, Ishaq, Ya'qub, Yusuf, Musa, Harun, Dawud, Sulayman, Yunus, Isa, etc.
Companions: add (RA) — Abu Bakr RA, Umar RA, Uthman RA, Ali RA. Angels: add (AS) — Jibreel, Mikaeel, Israfeel, etc.
Terminology: Quran (not Qur'an), Surah (not surat), Ayah/Ayat (not Ayaat), Tafsir (not Tafseer), Shaykh (not Sheikh), Imaan, Salah (not salat), Zakah (not Zakat), Du'aa, Da'wah, Akhirah, Wudhu, Fardh.
Greetings/dhikr: Assalamu alaikum wa rahmatullahi wa barakatuhu · insha'Allah (not inshaAllah) · SubhanAllah · Alhamdulillah · JazakAllahu khairan.
Places: Makkah, Madinah, Madyan, Ka'bah, Qiblah, Al-Hudaibiah. Names: Fir'awn (not Firaun), Bani Isra'eel, Thamud.
📋 Opening & Closing Du'aa — Quick Copy
Ustadh's standard opening and closing du'aa. Click Copy to paste into a cue, then verify every ayah independently (strict requirement above).
May Allah accept your service and bless your efforts.