AI processing
Interface verified locallyVideo transcriber
An application that receives video or audio, extracts the track, transcribes locally and produces a downloadable summary.

The challenge
Transcribing audiovisual material often requires desktop tools, external services or manual workflows. The goal was to bring upload, processing, summary and download into one web flow.
My contribution
I built the web experience and processing architecture: Next.js frontend, Python API, FFmpeg extraction, local Faster Whisper transcription and distributed jobs with Celery and Redis.
Key decisions
- Run transcription locally to reduce third-party dependency and retain control over files.
- Process every upload as a queued job so the UI can report progress and several users do not block the API.
- Use Gemini for summaries when available and retain an extractive summary as a fallback.
- Offer TXT and PDF downloads so the output remains useful outside the application.
The product in use
Screenshots captured while running the project or reviewing its published version.

Outcomes
- The flow accepts common video and audio formats from a single upload area.
- Separating the interface, API and workers makes processing scalable without duplicating the web application.
- The solution keeps a functional summary path even when no generative key is configured.
Tech stack
Next.js 16FastAPIFaster WhisperCeleryRedisFFmpeg