[App] Subgen - AI subtitle generation for your *arr-stack

SubGen runs Whisper locally to automatically generate subtitles for your media library, designed to work alongside Bazarr as a fallback when no external subtitles can be found. This uses a LOT of RAM for storing the movie and CPU for the AI model, so it will probably not work well on a RPi.
The full movie will be loaded up in RAM, and therefor a 2 hour movie will easily take up 8+ Gb of RAM.

Features:

  • Local Whisper-based transcription, running on your HA host
  • Bazarr integration: timeouts and score thresholds are configurable so SubGen only kicks in when Bazarr’s own providers come up empty
  • Works alongside an existing Jellyfin/Sonarr/Radarr/Bazarr/Prowlarr stack

Installation:

  1. Add https://github.com/Xornop/ha-apps as a repository under Settings → Apps → Install app → ⋮ → Repositories
    or just use this Open your Home Assistant instance and show the add app repository dialog with a specific repository URL pre-filled.
  2. Install “Subgen”
  3. Configure the Bazarr connection in the app options: provider settings, score threshold, and timeout
  4. Restart Bazarr so it picks up the new provider

cool. ive not looked at the repo, but in relation to the comment about RAM use when looking at movies…is it possible to initially extract the audio only with ffmpeg?

ffmpeg -i input.mp4 -vn -acodec copy output.aac

maybe that helps.

Cool stuff

Thanks for replying. Your idea seems great, however, Bazarr already extracts the audio before sending it to Subgen/WhisperAI. The RAM issue is with both the AI model and loading the entire file, and mainly cause by Subgen. Since this is just an App wrapper, I probably can’t improve the RAM use much, but you’re welcome to make a PR on the git