/mpv-autosub

Fully automatic subtitle downloading for the MPV media player

Primary LanguageLuaMIT LicenseMIT

  • Cross-platform: Windows, Mac and Linux
  • Multi-language support
  • Subtitle provider login support
  • No hotkeys required: opening a video will automatically trigger subtitles to download
    (Only when the right subtitles are not yet present)

Dependencies

This Lua script uses the Python program subliminal to download subtitles. Make sure you have both installed:  

pip install subliminal

Setup

  1. Copy autosub.lua into:

    OS Path
    Windows [Drive]:\Users\[User]\AppData\Roaming\mpv\scripts\
    Mac/Linux ~/.config/mpv/scripts/
    mkdir ~/.config/mpv/scripts
    cat > ~/.config/mpv/scripts/autosub.lua
    [Paste script contents and CTRL+D]
  2. Specify the correct subliminal location for your system:

    • To determine the correct path, use:

      OS App Command
      Windows Command Prompt where subliminal
      Mac/Linux Terminal which subliminal
    • Copy this path to the subliminal variable at the start of the script:

      local subliminal = '/path/to/your/subliminal'

      On Windows, the backslashes in the path need to be escaped, e.g.:
      C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python37\\Scripts\\subliminal.exe

Customization

  • Optionally change the subtitle languages / ISO codes. Be sure to put your preferred language at the top of the list.
    If necessary, you can manually trigger downloading your first choice language by pressing b,
    or your second choice language by pressing n.
  • Optionally specify the login credentials for your preferred subtitle provider(s), if you have one.
  • If you do not care for the automatic downloading functionality, and only wish to use the hotkeys,
    simply change the auto bool to false.
  • For added convenience, you can specify the locations to exclude from auto-downloading subtitles, or alternatively,
    the only locations that should auto-download subtitles.

This script is under the MIT License, so you are free to modify and adapt this script to your needs:
check out the MPV Lua API for more information.

If you find yourself unable to find the correct subtitles for some niche movies/series, you might be interested in the submod command line tool I've written to manually correct subtitle timing.

Credits

Inspired by selsta's and fullmetalsheep's autosub scripts.