Skip to main content

This script will set all movies and shows in your local Plex library to English non forced subtitles by default.

Project description

PlexPreferNonForcedSubs

Short description:

This python script will set all movies and shows in your local Plex library to English non forced subtitles by default. The subtitle selections will apply to your Plex profile and be remembered on other devices. This script should work on any OS where Python is installed (Windows, MacOS and Linux etc).

Long description:

This script was created with the help of ChatGPT Open AI and further edited and completed by me. It uses Plex Python Api. It will set all movies and shows in your local Plex library to English non forced subtitles by default. The subtitle selections will apply to your Plex profile and be remembered on other devices. Assuming your Plex subtitles settings are setup in your server settings Plex will default to Forced Subtitles by default when they are available for a given item. Plex will not allow you to prefer non forced subtitles natively hence why this script was created.

This script is confirmed tested and working. Feel free to use this code for your own purposes. I will be running this code periodically on my home server along with some of my other neat little plex scripts like Plex Auto Delete. Thanks to all who helped! If you use this script and run into any bugs feel free to open an issue. Cheers!

What are "non-forced" subtitles?

Non-forced subtitles provide subtitles everytime a characters speaks.

What are "forced" subtitles?

Forced subtitles only provide subtitles when the characters speak a foreign or alien language.

Install Instructions:

  1. Install Python.
  2. Run python -m pip install PlexPreferNonForcedSubs in command line.
  3. Make sure Plex media server is running then run the script using PlexPreferNonForcedSubs in command line.
  4. On first run the script will ask you to fill in your Plex token. Your token will be saved locally in the same folder as token.txt.
  5. Done.

See below for details on how to run, update and uninstall.

Run:

PlexPreferNonForcedSubs in command line.

Update:

python -m pip install PlexPreferNonForcedSubs --upgrade in command line.

Uninstall:

python -m pip uninstall PlexPreferNonForcedSubs in command line.

Alternative manual no install method:

  1. Download the latest .py script from the releases page and move it to the file directory of your choice.
  2. Run the script by running PlexPreferNonForcedSubs.py OR open terminal and navigate to folder where PlexPreferNonForcedSubs.py is located. Run PlexPreferNonForcedSubs.py in terminal.
  3. On first run the script will ask you to fill in your Plex token. Your token will be saved locally in the same folder as token.txt.
  4. Done.

See above for details on how to run, update and uninstall.

Known issues/future outlook:

  • Several lines of redundant code can be shortened and/or removed

Also posted on:

Screenshots:

Plex subtitle dropdown after script is done running:

Plex Subtitle Dropdown

PlexPreferNonForcedSubs.py script in action:

PlexPreferNonForcedSubs.py Script in Action

Sponsorships, Donations and Custom Projects:

Like my scripts? Become a sponsor and support my projects! See below for other donation options. Need help with a project? Open an issue and I will try my best to help! For other inquiries and custom projects contact me on Twitter.

More donation options:

  • Cashapp: $rileyxx
  • Venmo: @rileyxx
  • Bitcoin: bc1qrjevwqv49z8y77len3azqfghxrjmrjvhy5zqau
  • Amazon Wishlist: Link ↗

License: MIT

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

PlexPreferNonForcedSubs-2.1.3.tar.gz (5.7 kB view hashes)

Uploaded Source

Built Distribution

PlexPreferNonForcedSubs-2.1.3-py3-none-any.whl (6.1 kB view hashes)

Uploaded Python 3

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