Generate accurate English subtitles (SRT files) for your audio and video files using OpenAI Whisper, FastAPI, and Next.js.
- Drag-and-drop or select audio/video files (MP4, MKV, MOV, WMV, AVI, FLV, WEBM, MP3, WAV, M4A, AAC, OGG, OPUS, TS, MTS, 3GP, M4V, MPEG, MPG, and more)
- FastAPI backend with Whisper for transcription
- Real-time status updates, animated progress bar, transcript preview, and download link for generated SRT
- Uploaded files are deleted after processing for privacy
- No user media is stored
- Modern, animated UI/UX: glassmorphism, 3D/hover effects, animated background, custom cursor, toast notifications, entrance/microinteractions
- Upload a supported media file via the web interface
- The backend transcribes it with Whisper and generates an SRT
- Download the SRT as soon as it's ready
- Frontend: Next.js, Tailwind CSS
- Backend: FastAPI, OpenAI Whisper, FFmpeg
- Clone the repo
- Install Python and Node.js dependencies
- Start the FastAPI backend:
python3 -m uvicorn main:app --reload --port 8001 - Start the Next.js frontend:
- With npm:
npm run dev(fromfrontend/) - With pnpm:
pnpm dev(fromfrontend/)
- With npm:
- Set
NEXT_PUBLIC_BACKEND_URLin your frontend.envif backend is not on defaulthttp://localhost:8001
- All major video/audio formats supported thanks to Whisper + ffmpeg: MP4, MKV, MOV, WMV, AVI, FLV, WEBM, MP3, WAV, M4A, AAC, OGG, OPUS, TS, MTS, 3GP, M4V, MPEG, MPG, and more.
- For rare formats, ensure ffmpeg is installed and available in your backend environment.
- Uploaded files are deleted immediately after transcription
- SRT files are generated and served for download, not stored long-term
MIT