# Reels Clipper Β· biba.live Self-hosted Opus Clip alternativa za FOLX TV / PTC. Pretvori 16:9 video v 9:16 reels/shorts/tiktok format z auto face tracking, podnapisi (sl/de/en) in **avto-detekcijo refrena** v glasbenih pesmih. ## Features - πŸ“€ **Drag & drop upload** (do 2 GB) - πŸ“Ί **YouTube URL paste** (yt-dlp) - 🎯 **Smart reframe**: track (face follow), center, blur (za glasbo) - 🎡 **Auto-chorus detection** (Whisper + energy hibrid) - πŸ“ **Burned-in podnapisi** (faster-whisper, multi-jezik) - 🎨 **3 stili podnapisov**: reels, yellow (MrBeast), minimal - πŸ” **HTTP Basic Auth** - πŸ“Š **Real-time progress** (Server-Sent Events) - πŸ“¦ **Docker / Coolify ready** ## Quick start (lokalno) ```bash docker compose up --build # odpri http://localhost:8000 ``` Default login: `sebastjan` / nastavi `AUTH_PASS` v `.env`. ## Coolify deploy 1. V Coolify ustvari nov projekt β†’ **Docker Compose** iz tega repoja 2. Domena: `reels.biba.live` 3. Env vars: ``` AUTH_USER=sebastjan AUTH_PASS= MAX_UPLOAD_MB=2000 ``` 4. Volume `reels_data` se ustvari avtomatsko 5. Deploy β†’ Coolify postavi Traefik reverse proxy + SSL via Let's Encrypt ## Pipeline ``` Upload / YouTube ↓ [ yt_download.py ] ← samo če YouTube ↓ [ find_chorus.py ] ← samo če auto_chorus=true (Whisper + RMS analiza) ↓ [ reframe.py ] ← 16:9 β†’ 9:16 (track / center / blur) ↓ [ subtitle.py ] ← Whisper transkripcija + burn-in ↓ reel.mp4 ``` ## API - `POST /api/upload` β€” multipart file upload, vrne `job_id` - `POST /api/youtube` β€” JSON `{url, mode, lang, ...}` - `POST /api/process` β€” start processing za uploaded job - `GET /api/jobs` β€” list vseh - `GET /api/jobs/{id}` β€” status - `GET /api/stream/{id}` β€” SSE stream progress - `GET /api/download/{id}` β€” final reel - `DELETE /api/jobs/{id}` β€” pobriΕ‘i ## Dependencies - FFmpeg (system) - faster-whisper (transkripcija) - OpenCV (face detection) - yt-dlp (YouTube) - FastAPI + uvicorn (server)