Skip to main content

A tool for generating subtitles using Google Gemini models.

Project description

Subtitle tool

codecov

This utility uses Google Gemini to generate subtitles to audio and video files.

Dependencies

ffmpeg needs to be installed for audio extraction.

Process

  1. Extract the audio from the video
  2. Send the audio to Gemini for transcription
  3. Backup the existing subtitle
  4. Save the new subtitle

Dependencies

  • Export the API key for Gemini to the environment variable GEMINI_API_KEY or specify it in the command line with the flag --api-key.

  • ffmpeg needs to be installed (brew install ffmpeg, apt-get install ffmpeg or dnf install ffmpeg)

  • Ensure uv installs its dev dependencies with uv sync --extra dev.

Installation

pip install subtitle-tool

Developing

For local development it is useful to install the binary from the development location into the user's PATH. For this, run the following commands:

uv tool install -e .
uv tool update-shell

Usage

  • Subtitle files with the defaults:
subtitle-tool video.avi
subtitle-tool audio.mp3
  • Usage options:
Usage: subtitle-tool [OPTIONS] MEDIAFILE

  Generate subtitles for a media file

Options:
  --api-key TEXT                  Google Gemini API key
  -m, --ai-model TEXT             Gemini model to use  [default:
                                  gemini-2.5-flash]
  -s, --subtitle-path TEXT        Subtitle file name [default: MEDIAFILE.srt]
  -v, --verbose                   Enable debug logging for subtitle_tool
                                  modules
  -d, --debug                     Enable debug logging for all modules
  -k, --keep-temp-files           Do not erase temporary files
  -l, --audio-segment-length INTEGER
                                  Length of audio segments to be subtitled in
                                  seconds  [default: 30]
  -p, --parallel-segments INTEGER
                                  Number of segments subtitled in parallel
                                  [default: 5]
  --help                          Show this message and exit.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

subtitle_tool-0.1.53.tar.gz (50.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

subtitle_tool-0.1.53-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file subtitle_tool-0.1.53.tar.gz.

File metadata

  • Download URL: subtitle_tool-0.1.53.tar.gz
  • Upload date:
  • Size: 50.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.4

File hashes

Hashes for subtitle_tool-0.1.53.tar.gz
Algorithm Hash digest
SHA256 32563302ba4f5aef3b97f4b8ed7cd2c7863c2bf8a91c66e73511cb4472564a9a
MD5 f37a6dae6931fe153a1a6af2a6f306c0
BLAKE2b-256 87b049021eb04d6de71b6efe75f199ac871ad3e65676bb37d47e42861ad8801d

See more details on using hashes here.

File details

Details for the file subtitle_tool-0.1.53-py3-none-any.whl.

File metadata

File hashes

Hashes for subtitle_tool-0.1.53-py3-none-any.whl
Algorithm Hash digest
SHA256 e5a2d96a7bb9e85e7e81dc4af389a51acd2044cd7d43d5aabd88e09198b8c599
MD5 207dc07c2002abd9ad68221d44f8d5ff
BLAKE2b-256 8d7e87bbaa72c0061e9a7bd118f225d150371586b5ca73f4c76c99348269aaec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page