Skip to main content

Subtitle merging tool

Project description

Submerger

Watching movies in a foreign language with dual subtitles is a good way to learn that language. However, most of the subtitles are in a single language. This project aims to overcome that barrier by providing the functionality to create dual subtitles by merging two separate subtitle files.

Dualsubtitle example

System requirements

Python >= 3.10

Install

pip install submerger

Install for development

You have to include $HOME/.local/bin to your $PATH. Simply add export PATH="$HOME/.local/bin:$PATH" to .bashrc.

pip install --prefix=$(python -m site --user-base) --editable .

NOTE: --prefix=$(python3 -m site --user-base) is a workaround for a known setuptools issue

Usage

Merge two .srt files

submerge --subtitles subtitle1.srt subtitle2.srt --output dualsub.srt

Create a dual subtitles by extracting embedded subtitles from a video file

submerge --video video.mkv --language eng ger --output dualsub.srt

Merge subtitles for all videos in a directory

submerge --global --language eng ger --directory path/to/series

Check for available subtitles

ffprobe -loglevel error -print_format json video.mkv -print_format json -show_entries "stream=index:stream_tags=language" -select_streams s

Testing

Run unit tests

python scripts/run_tests.py --unit

Run integration tests

python scripts/run_tests.py --integration

Run lint tests

python scripts/run_tests.py --lint

Or run periodically with watch

watch python scripts/run_tests.py --all

License

GPLv3

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

submerger-2023.5.13.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

submerger-2023.5.13-py3-none-any.whl (23.4 kB view details)

Uploaded Python 3

File details

Details for the file submerger-2023.5.13.tar.gz.

File metadata

  • Download URL: submerger-2023.5.13.tar.gz
  • Upload date:
  • Size: 21.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for submerger-2023.5.13.tar.gz
Algorithm Hash digest
SHA256 7eef2d47be2e5dc2e0ceaeedddb6947ff4684f88b742f0665e27b3d2b1bfdaa9
MD5 c1ff843cd89b21c593dcb8d627391428
BLAKE2b-256 9b3a6ad7500e2d7e29e285108d1db12bf33d4673530ea2f94c075415736a5613

See more details on using hashes here.

File details

Details for the file submerger-2023.5.13-py3-none-any.whl.

File metadata

File hashes

Hashes for submerger-2023.5.13-py3-none-any.whl
Algorithm Hash digest
SHA256 ca65b08b418c649eb048da5ea8c6865f94a306d02306f51104890d79546abf3c
MD5 a93b1cc8fb619983385dd15689f10ba8
BLAKE2b-256 601f0a9ef17d3e2d50e0bc8c796020c375c5bc18b9eba74fc4de5eedcd99c1e5

See more details on using hashes here.

Supported by

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