Skip to content

Generate subtitles for your video or audio files using the power of AI

License

Notifications You must be signed in to change notification settings

andreabak/whispersubs

Repository files navigation

WhisperSubs

PyPI: latest release PyPI: Python Version CI: pre-commit
Build: Hatch Linting: ruff Code style: black Mypy: checked License: LGPL-3.0

Generate subtitles for your video or audio files using the power of AI.

Installation

Prerequisites:

  • git for cloning this repo
  • Python 3.8 or higher, with pip

For faster results, it is recommended to use a GPU with CUDA support. Running transcription on the CPU is significantly slower (up to 10~20x slower, depending on the hardware).
The optional dependencies required for GPU acceleration can be installed with the [cuda] extra when installing the package.

Install latest release

Use the following to install the latest release in an isolated environment using pipx, with CUDA libraries for GPU acceleration:

pipx install whispersubs[cuda]

N.B. omit the [cuda] extra if you don't have a GPU or don't want to use it.

Replace pipx with pip from the command above if you want to manually manage your own environment (or install user- or system-wide).

Install repository version

You can install the latest version from this repository with the following command:

pipx install 'whispersubs[cuda] @ git+https://github.com/andreabak/whispersubs.git'

Usually this is going to be the same as the latest release, but it might contain some additional features or bugfixes that are not yet released.

Usage

WhisperSubs can be used from the command line. The basic usage requires an input file, which will be the source for the transcription. The output will be a subtitle file in the SRT format in the same directory as the input file. The language will be automatically detected.

whispersubs <input_file>

For a full list of options, run:

whispersubs --help