Commit Graph

10 Commits

Author SHA1 Message Date
592a235cf9 Update Handoff (Whisper fallback) and document CLI transcription in README
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P1w53ybPWArpZpcei9JPYX
2026-08-29 22:23:16 +02:00
a3eb962b90 Transcribe videos without subtitles via faster-whisper fallback
When yt-dlp yields no subtitle files, the server now runs
scripts/transcribe.py (faster-whisper, large-v3-turbo, CUDA with CPU
fallback) on the downloaded media and feeds the resulting VTT through
the existing Markdown conversion.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P1w53ybPWArpZpcei9JPYX
2026-08-29 22:20:55 +02:00
891886b6e8 Update Handoff: yt-dlf deployed on Gisela (systemd user unit, 172.30.1.11:3300)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P1w53ybPWArpZpcei9JPYX
2026-08-29 21:36:35 +02:00
4b60070def Normalize package-lock.json (npm on Gisela drops libc fields)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01P1w53ybPWArpZpcei9JPYX
2026-08-29 21:36:35 +02:00
d21cc69d20 Update Handoff: subtitle dedup fix, push to Gitea, move to Gisela
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-29 21:17:04 +02:00
a7d7d1cf50 Handle untagged continuation lines in rolling auto-captions
Short continuations (e.g. a single trailing word) carry no inline timing
tags, so filtering by tags missed them. Instead, in files with inline
timing tags, drop leading cue lines that repeat the previous cue's last
line — covers both tagged and untagged new text.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-29 21:13:29 +02:00
03eec79b4c Fix duplicated text in Markdown from YouTube auto-captions
Rolling auto-caption cues repeat the previous line as plain text and
carry the new text in lines with inline word-timing tags. Keep only the
tagged lines in such cues (JS module and Python CLI); skip writing
Markdown files whose content is identical to one already written.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-29 21:11:42 +02:00
361c88be65 Add Handoff.md (session handoff document)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-29 20:57:35 +02:00
6df26c12e6 Add login, ad columns and user management
Unauthenticated visitors see the app with left/right ad columns (loaded
from ads-left.html and ads-right.html). Logged-in users see no ads and
get a logout link in the top bar.

Login is at /login (not linked). Users are managed in users.txt via
scripts/add_user.py (scrypt-hashed passwords). users.txt is gitignored.

New env vars: USERS_FILE, ADS_DIR.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-16 21:21:48 +02:00
3544a89609 Initial commit — yt-dlf YouTube downloader & transcript extractor
SvelteKit web frontend for yt-dlp and ffmpeg. Paste a YouTube URL to
download best-quality video, subtitles (original + EN + DE), and thumbnail.
Subtitles are converted to clean Markdown. Optional audio extraction to MP3.

Supports ZIP & Send mode: downloaded files are packed into a ZIP and
delivered to the browser, with optional server-side cleanup after delivery.
An extra directory (ZIP_EXTRA_DIR) can be bundled into every ZIP.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-16 20:33:23 +02:00