Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

There are several unrelated command-line tools named subdl, so the right install command depends on which project you mean. The current SmallThingz project is a Zig-based CLI and TUI that searches, lists, and downloads subtitles from multiple providers. Older Python projects with the same name target different services and have different language defaults and requirements.

Which subdl should you install?

Check the repository owner and project description before installing. Commands are not interchangeable: SmallThingz documents a Zig project with several subtitle providers, while the older Python tools each focus on a different workflow or source.

Project Runtime and source Key requirements and behavior
SmallThingz/subdl Zig; searches multiple subtitle sites through one API and offers CLI and TUI entry points. Requires Zig 0.16.0-dev.2905+ and network access for normal provider use. CLI and TUI are enabled by default; archive extraction and browser automation are compiled out by default.
dhirajt/subdl Python; movie and TV subtitle downloader. Its README advertises installation with sudo pip install -U subdl. It can scan directories, prompt for a choice, accept a title, and filter with three-character language codes; when no language is specified, its README says it downloads English subtitles.
alexanderwink/subdl Python; targets OpenSubtitles.org. Installs from Git with pip install git+https://github.com/alexanderwink/subdl. The project says official support for subdl was dropped.
awpetrik/SubDL Python; SubSource.net downloader. Requires Python 3.9+ and a SubSource API key. Its README says Indonesian (id) is the default and the only fully implemented language; it lists common codes including English, Spanish, French, and German.

If you want the current multi-provider CLI described here, use the SmallThingz repository and its documentation. Do not use an older package’s pip command for this Zig project.

Build and run the SmallThingz CLI

Install the required Zig development version, clone the SmallThingz repository, and run the documented build commands from its project directory. Normal provider searches also need network access.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Free Fling File Transfer Software for Windows [PC Download]
  • Intuitive interface of a conventional FTP client
  • Easy and Reliable FTP Site Maintenance.
  • FTP Automation and Synchronization
  1. Build the project: zig build.
  2. Optionally run tests: zig build test.
  3. Install the built artifacts: zig build install.
  4. List configured providers: zig build run -- --list-providers.
  5. Search for a title: zig build run -- --query "The Matrix".
  6. Launch its terminal interface: zig build run -- --tui.

The project also documents running the compiled binary directly, for example ./zig-out/bin/scrapers --providers isubtitles_org --query "Interstellar".

Choose providers and a subtitle result

The CLI can narrow a search to one or more providers, then select a title and subtitle result by index. Its documented example searches Podnapisi and SubSource for Inception, selecting title index 1 and subtitle index 0:

zig build run -- --providers podnapisi_net,subsource_net --query "Inception" --title-index 1 --subtitle-index 0

SmallThingz documents these canonical provider IDs: subdl_com, opensubtitles_com, opensubtitles_org, moviesubtitles_org, moviesubtitlesrt_com, podnapisi_net, yifysubtitles_ch, subtitlecat_com, isubtitles_org, my_subs_co, subsource_net, and tvsubtitles_net. The parser also accepts dotted or hyphenated forms, such as subsource.net. Use --list-providers to inspect the providers available in your build.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Set output and extraction behavior

Use --out-dir DIR to select an output directory; the documented default is downloads. Archive extraction is not enabled in the default build. To use --extract, build with -Denable-unarr=true.

Browser automation is also compiled out by default. The project documents these as build-time capabilities, so a command-line flag alone does not enable either feature in a default build.

What the command-line options do

Option Purpose
--query <text> Search using a title or other query text.
--providers <list> Specify a comma-separated provider list.
-p <provider> Add a provider; this option is repeatable.
--title-index N Select a result title by its index.
--subtitle-index N Select a subtitle result by its index.
--out-dir DIR Set the download destination; the default is downloads.
--extract Extract downloaded archives; requires a build made with -Denable-unarr=true.
--list-providers List provider IDs supported by the build.
--tui Start the terminal user interface.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Does subdl support OpenSubtitles and SubSource?

The SmallThingz project lists both opensubtitles_com and opensubtitles_org, as well as subsource_net. That is distinct from the older alexanderwink Python tool, which targets OpenSubtitles.org and says official support for subdl was dropped, and the awpetrik Python tool, which is specifically for SubSource.net and requires its own API key.

Language codes depend on the project

There is no single language-code rule for every tool called subdl. The dhirajt README describes three-character codes such as eng and says English is the default if no language is specified. The awpetrik README uses two-character codes such as id; it says Indonesian is the default and only fully implemented language. The SmallThingz CLI reference supplied for this version does not establish a specific language flag or accepted code format, so do not assume either Python tool’s syntax applies to it.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Can you automate subtitle downloads with an API?

SubDL’s official API documentation describes searches by film name, filename, IMDb ID, TMDB ID, SubDL ID, season and episode numbers, movie or TV type, release year, and language. It says the returned subtitle URL is appended to the dl.subdl.com endpoint to download the file. The API also checks the account, paid plan, per-key usage, and account-wide request and download quotas, so API access and limits depend on the account and key.

That API is a separate integration path from the SmallThingz CLI’s multi-provider interface. Consult the official API documentation for request details and account-specific limits.

How large is SubDL’s subtitle catalog?

SUBDL’s product page claims its Downloader has over 6 million subtitles. This is a company product-page figure, not an independently audited catalog count; see SUBDL’s Downloader page.

Quick Recap

Bestseller No. 1
Free Fling File Transfer Software for Windows [PC Download]
Free Fling File Transfer Software for Windows [PC Download]
Intuitive interface of a conventional FTP client; Easy and Reliable FTP Site Maintenance.; FTP Automation and Synchronization

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.