Skip to main content

Subliminal

Subtitles, faster than your thoughts.

Latest Version Documentation Status Code coverage License Discord
Project page:

https://github.com/Diaoul/subliminal

Documentation:

https://subliminal.readthedocs.org/

Community:

https://discord.gg/kXW6sWte9N

Usage

Demo of the app CLI usage

CLI

Download English subtitles:

$ subliminal download -l en The.Big.Bang.Theory.S05E18.HDTV.x264-LOL.mp4
Collecting videos  [####################################]  100%
1 video collected / 0 video ignored / 0 error
Downloading subtitles  [####################################]  100%
Downloaded 1 subtitle

Configuration

Arguments can be passed to the CLI using a configuration file. By default it looks for a subliminal.toml file in the default configuration folder (see the CLI help for the exact platform-specific default path). Or use the -c option to specify the path to the configuration file.

Look for this example configuration file or use the generate_default_config function from the subliminal.cli module to generate a configuration file with all the options and their default values:

$ python -c "from subliminal.cli import generate_default_config; print(generate_default_config())"

Library

Download best subtitles in French and English for videos less than two weeks old in a video folder:

#!/usr/bin/env python

from datetime import timedelta

from babelfish import Language
from subliminal import download_best_subtitles, region, save_subtitles, scan_videos

# configure the cache
region.configure('dogpile.cache.dbm', arguments={'filename': 'cachefile.dbm'})

# scan for videos newer than 2 weeks and their existing subtitles in a folder
videos = scan_videos('/video/folder', age=timedelta(weeks=2))

# download best subtitles
subtitles = download_best_subtitles(videos, {Language('eng'), Language('fra')})

# save them to disk, next to the video
for v in videos:
    save_subtitles(v, subtitles[v])

Docker

Run subliminal in a docker container:

$ docker run --rm --name subliminal -v subliminal_cache:/usr/src/cache -v /tvshows:/tvshows -it ghcr.io/diaoul/subliminal download -l en /tvshows/The.Big.Bang.Theory.S05E18.HDTV.x264-LOL.mp4

Debugging

By default, subliminal output is minimal. Run with the –debug flag before the download command to get more information:

$ subliminal --debug download -l en The.Big.Bang.Theory.S05E18.HDTV.x264-LOL.mp4

Installation

For a better isolation with your system you should use a dedicated virtualenv. The preferred installation method is to use pipx that does that for you:

$ pipx install subliminal

Subliminal can be also be installed as a regular python module by running:

$ pip install --user subliminal

If you want to modify the code, fork this repo, clone your fork locally and install a development version:

$ git clone https://github.com/<my-username>/subliminal
$ cd subliminal
$ pip install --user -e '.[docs,types,tests,dev]'

To extract information about the video files, subliminal uses knowit. For better results, make sure one of its provider is installed, for instance MediaInfo.

Integrations

Subliminal integrates with various desktop file managers to enhance your workflow:

  • Nautilus/Nemo: See the dedicated project page for more information.

  • Dolphin: See this Gist. for more details.

Contributing

We welcome contributions from the community! If you’re interested in contributing, here are a few ways you can get involved:

  • Browse Issues and Pull Requests: Check out the existing Issues and Pull Requests to see where you can help.

  • Report Bugs or Request Features: If you encounter a bug or have a feature request, please create a GitHub Issue.

  • Follow the Contribution Guide: For detailed instructions on how to contribute, please refer to our Contribution Guide.

Your contributions are greatly appreciated and help make this project better for everyone!

Metadata

Release files for subliminal 2.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for subliminal 2.8.0
File Size Uploaded
subliminal-2.8.0.tar.gz 4.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for subliminal 2.8.0
File Interpreter ABI Platform
subliminal-2.8.0-py3-none-any.whl Python 3 none any Details

Total release size: 4.2 MB

Release files / subliminal-2.8.0.tar.gz

Download URL subliminal-2.8.0.tar.gz
Size 4.0 MB
Tags Source
SHA-256 checksum
How to use checksums
0d784e621d0fa7d173f75798427b3572d4ab071a90bc0b9a8a88f1925670f691
BLAKE2b-256 checksum
How to use checksums
e73dff49ee5bffbac38dc4d4a154d11115e854859c0d65315594090a8275e1ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / subliminal-2.8.0-py3-none-any.whl

Download URL subliminal-2.8.0-py3-none-any.whl
Size 125.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b26d22796ab426c3ef97ff0f37b57f9413adbd17bea92351252b82d0f87b5143
BLAKE2b-256 checksum
How to use checksums
4fd6ffc717aee49e2d9485b6fb50caa3c1c5ddf2a146215561ed607aff04fba9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.8.0 This release

2 release files

2.7.1

2 release files

2.7.0

2 release files

2.6.0

2 release files

2.5.0

2 release files

2.4.0

2 release files

2.3.2

2 release files

2.2.1

2 release files

2.2.0

2 release files

2.1.0

3 release files

2.0.5

3 release files

2.0.4

3 release files

2.0.3

3 release files

2.0.2

3 release files

2.0.1

3 release files

2.0.0

3 release files

1.1.1

3 release files

1.1

3 release files

1.0.1

3 release files

1.0

3 release files

0.7.5

2 release files

0.7.4

1 release file

0.7.3

1 release file

0.7.2

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.4

1 release file

0.6.3

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.1

1 release file

0.5

1 release file

0.4

1 release file

0.3

1 release file

0.2

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page