UIDCaption

ElectronWhisper AIFFmpeg
UIDCaption

UIDCaption is my Windows app for adding animated captions to videos. You load a clip, press "Generate captions" and get the text in sync with the voice, with the spoken word highlighted. Then you arrange it the way you like and export a video ready to post on TikTok, Reels or YouTube.

What you can do with it

Text animates per word, per letter or for the whole line, with the fonts bundled in the app or the ones already in Windows. The same clip comes out portrait, landscape or square, and the app finds the face in the shot and frames the picture around it. There's a timeline for cutting and joining clips, separate text for titles, and saved styles so you don't redo them for every video. At the end you export the video or just the captions. The interface is in 13 languages.

Why it's built this way

Speech recognition runs on your own computer with Whisper, OpenAI's transcription model, and so does the face detection used for framing. I went this way so nothing you load ever leaves your machine. It works on any processor, and with an NVIDIA graphics card it's much faster.

The interface is built with Electron, the technology behind VS Code and Discord, because it gives me a Windows app with a modern interface that I can change quickly. The video work is done by FFmpeg, the open-source program that has handled video conversion and processing for years.

On first launch the app downloads what it needs on its own. If the connection drops it resumes where it stopped, and if something goes missing, a repair button puts it back. Updates install in one click, and the licence, sold through Gumroad, is activated right in the app.

Support and the dashboard

When something goes wrong, the user exports an encrypted diagnostic log from the Help menu that only I can open. I see exactly what happened without reproducing the problem. The logs land in the dashboard I built for myself, also in Electron, where I handle licences and sales, the website's statistics, publishing updates and the offers on the site.

Built with

  • Electron
  • JavaScript
  • Node.js
  • Python
  • Whisper AI
  • ONNX Runtime
  • FFmpeg
  • SQLite
  • Cloudflare R2
  • Gumroad