All Projects → mdhiggins → PlexAutoSkip

mdhiggins / PlexAutoSkip

Licence: MIT license
Automatically skip content in Plex

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to PlexAutoSkip

Plexupdate
Plex Update script to simplify the life of Linux Plex Media Server users.
Stars: ✭ 1,523 (+1503.16%)
Mutual labels:  plex, plex-media-server
Ultimate Media Server Core
A bunch of scripts that I've collected, written, and forked for the ultimate administration & automation of your Media Server - Think of this as your "Media server in a box"
Stars: ✭ 188 (+97.89%)
Mutual labels:  plex, plex-media-server
Plexidrive
Scripts to facilitate the use of cloud storage (such as Google Drive) as storage for Plex media server
Stars: ✭ 118 (+24.21%)
Mutual labels:  plex, plex-media-server
Cloud Media Scripts
Upload and stream media from the cloud with or without encryption. Cache all new and recently streamed media locally to access quickly and reduce API calls
Stars: ✭ 84 (-11.58%)
Mutual labels:  plex, plex-media-server
flixctl
A toolkit for controlling the infrastructure necessary for a true MaSaS (Movies and Shows as a Service) architecture.
Stars: ✭ 43 (-54.74%)
Mutual labels:  plex, plex-media-server
Plex Lastfm Scrobbler
Scrobble played audio items Last.FM from the Plex Media Server application.
Stars: ✭ 88 (-7.37%)
Mutual labels:  plex, plex-media-server
Usenet Docker
Docker-compose configuration for Sabnzbd, CouchPotato, Plex, Sonarr, Plexpy, Nzbhydra, Muximux, Radarr, NZBGet and Ombi with a Nginx proxy.
Stars: ✭ 153 (+61.05%)
Mutual labels:  plex, plex-media-server
Plex.py
Python interface for the Plex Media Server API
Stars: ✭ 22 (-76.84%)
Mutual labels:  plex, plex-media-server
plex-utills
Manage your Plex library automatically
Stars: ✭ 258 (+171.58%)
Mutual labels:  plex, plex-media-server
discord-rich-presence-plex
Display your Plex status on Discord using Rich Presence
Stars: ✭ 180 (+89.47%)
Mutual labels:  plex, plex-media-server
plex-music
Web/Desktop app for streaming music from your Plex Media Server
Stars: ✭ 42 (-55.79%)
Mutual labels:  plex, plex-media-server
plex-api
.NET Core SDK for Plex Media Server
Stars: ✭ 70 (-26.32%)
Mutual labels:  plex, plex-media-server
Plexus
A suite of tools to help manage your media collection.
Stars: ✭ 78 (-17.89%)
Mutual labels:  plex, plex-media-server
Conv2mp4 Ps
This Powershell script will recursively search through a user-defined file path and convert all videos of user-specified file types to MP4 with H264 video and AAC audio using ffmpeg. The purpose of this script is to reduce transcoding CPU load on a media server like Plex or Emby and increase video compatibility across platforms.
Stars: ✭ 97 (+2.11%)
Mutual labels:  plex, plex-media-server
Porthole
A window into the status of multiple services related to Plex Media Server (Plex, Couchpotato, Sickrage, Deluge, Sabnzbd+, etc.).
Stars: ✭ 30 (-68.42%)
Mutual labels:  plex, plex-media-server
Media Docker
all-in-one deployment and configuration for an all-in-one media server, running on docker.
Stars: ✭ 148 (+55.79%)
Mutual labels:  plex, plex-media-server
Telly
An IPTV proxy
Stars: ✭ 557 (+486.32%)
Mutual labels:  plex, plex-media-server
Iptv.bundle
Plex plug-in that plays live streams (like IPTV) from a M3U playlist
Stars: ✭ 739 (+677.89%)
Mutual labels:  plex, plex-media-server
conv2mp4-py
Python script that recursively searches through a user-defined file path and converts all videos of user-specified file types to MP4 with H264 video and AAC audio using ffmpeg. If a conversion failure is detected, the script re-encodes the file with HandbrakeCLI. Upon successful encoding, Plex libraries are refreshed and source file is deleted. …
Stars: ✭ 37 (-61.05%)
Mutual labels:  plex, plex-media-server
Youtube-DL-Agent.bundle
A plex metadata agent for Youtube-DL downloads
Stars: ✭ 92 (-3.16%)
Mutual labels:  plex, plex-media-server

PlexAutoSkip

Automatically skip tagged content in Plex

A background python script that monitors local playback on your server and will automatically 'press' the Skip Intro button or skip other similarly tagged content automatically. Maintains real-time playback states for your server (not dependent on API updates) for accurate skip timing. Threaded to handle multiple players simultaneously. Several layers of state validation to prevent unnecessary stuttering/buffering. Custom definitions allow you to expand on features and functionality beyond what is automatically detected by Plex

Only works on LAN sessions (not remote) as Plex does not allow seeking adjustments via the API for remote sessions

Notice

Plex has recently removed the "advertise as player" feature from the Plex Web client as well as its desktop clients for Windows/Mac/Linux which breaks the PlexAutoSkip functionality. All other players that have Plex Companion continue to work normally. I'm unclear why this feature which has been stable and present for years was removed without warning from this small subset of players, but the patch notes can be found here and here.

Currently I would recommend rolling back to Plex Desktop Client Plex-1.41.0.2876-e960c9ca or Plex Server Plex-1.27.2.5929-a806c5905 which still includes Plex Web 4.76.1. If you access the web player via plex.tv/web this will be a newer version of the web player which will not support "advertise as player", you'll need to access the web client from the local plex server address (localhost:32400/web).

You can disable the auto update feature of the Plex Desktop Client by accessing the plex.ini file in C:\Users\<username>\AppData\Local\Plex and adding the disableUpdater line to the debug section

[debug]
disableUpdater=true

This is a temporary solution unfortunately and I would encourage all of your who support this project and hope for similar projects in the future to voice your support on the Plex forums

Features

  • Skip any Plex identified markers with adjustable offsets
    • Markers
      • Intros (Plex Pass)
      • Commercials (Plex Pass)
    • Chapters
      • Advertisements
  • Only skip for watched content
  • Ignore skipping series and season premieres
  • Skip last chapter (credits)
  • Bypass the "Up Next" screen
  • Custom Definitions
    • Define your own markers when auto detection fails
    • Filter clients/users
    • Export and audit Plex markers to make corrections / fill in gaps
    • Bulk edit marker timing
    • Negative value offsets to skip relative to content end
  • Mute or lower volume instead of skipping
    • Client must support Plex setVolume API call
  • Docker

Requirements

  • Python3
  • PIP
  • PlexPass (for automatic markers)
  • PlexAPI
  • Websocket-client

Setup

  1. Enable Enable local network discovery (GDM) in your Plex Server > Network settings
  2. Enable Advertise as player on Plex players
  3. Ensure you have Python and PIP installed
  4. Clone the repository
  5. Install requirements using pip install -R ./setup/requirements.txt
  6. Run main.py once to generate config files or copy samples from the ./setup directory and rename removing the .sample suffix
  7. Edit ./config/config.ini with your Plex account or Plex server settings
  8. Run main.py

Script has fallback methods for when GDM is not enabled or is nonfunctional

config.ini

custom.json

Optional custom parameters for which movie, show, season, or episode should be included or blocked. You can also define custom skip segments for media if you do not have Plex Pass or would like to skip additional areas of content

Docker

custom_audit.py

Additional support script that contains features to check and modify your custom definition files in mass. Can offset entire collections of markers, export data from Plex, convert between GUID and ratingKey formats and more

# Get started
python custom_audit.py --help

Special Thanks

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].