Automatic 'skip intro' for Plex with Chromecast support
Project description
Skippex
Skippex skips intros automatically for you on Plex, with support for the Chromecast.
IMPORTANT NOTE: This is still pretty much beta software. Expect bugs and please report them!
Installation
Installing Skippex through Docker is the easiest way to get started:
$ docker pull ghcr.io/sprt/skippex
Docker-compose example coming soon.
If you prefer not to use Docker, you can also use pipx, which will install Skippex in its own virtual environment:
$ pipx install skippex
Or you can just use pip:
$ pip install --user skippex
Usage
The first time you use Skippex, you'll first have to authorize the application with Plex using the following command. This will open a new tab in your Web browser allowing you to authenticate and authorize the application to access your Plex account.
Docker | pipx & pip |
---|---|
$ docker run -v skippex:/data --network host ghcr.io/sprt/skippex auth
|
$ skippex auth
|
Once that's done, you can simply run Skippex and it'll start monitoring your playback sessions and automatically skip intros for you on supported devices:
Docker | pipx & pip |
---|---|
$ docker run -v skippex:/data --network host ghcr.io/sprt/skippex run
|
$ skippex run
|
Et voilà! When this command says "Ready", Skippex is monitoring your shows and will automatically skip intros for you.
Note: Due to a Chromecast limitation, the Docker container has to run with host mode networking.
Things to know
- Clients need to have "Advertise as player" enabled.
- Only works for players on the local network.
- Only skips once per playback session.
- Solely based on the intro markers detected by Plex; Skippex does not attempt to detect intros itself.
Tested and supported players
- Plex Web App
- Plex for iOS (both iPhone and iPad)
- Chromecast v3
The NVIDIA SHIELD might be supported as well, but I don't have one so I can't test it. Other players might also be supported. In any case, please inform me by creating a new issue, so I can add your player to this list.
Known issues
-
With a Chromecast, when seeking to a position, the WebSocket only receives the notification 10 seconds later. Likewise, the HTTP API starts returning the correct position only after 10 seconds. This means that if, before the intro, the user seeks to within 10 seconds of the intro, they may view it for a few seconds (before the notification comes in and saves us).
One workaround would be to listen to Chromecast status updates using
pychromecast
, but that would necessitate a rearchitecture of the code.
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
Built Distribution
File details
Details for the file skippex-0.2.4.tar.gz
.
File metadata
- Download URL: skippex-0.2.4.tar.gz
- Upload date:
- Size: 20.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.4 CPython/3.6.12 Linux/4.4.0-200-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51b91722c88ae182cabaad227e3a1c638429b5591fbed2f22607ab98e58d9553 |
|
MD5 | b869ea8122cd90fea3826d651cec4d96 |
|
BLAKE2b-256 | 294f18b82229fb7086eca3b93bf3124a0bda74648a4ed41efd4386ee879fc0d5 |
File details
Details for the file skippex-0.2.4-py3-none-any.whl
.
File metadata
- Download URL: skippex-0.2.4-py3-none-any.whl
- Upload date:
- Size: 21.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.4 CPython/3.6.12 Linux/4.4.0-200-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d94c62a1901a17f8eee2fce73f8102bff93e8dfc683a0b685f2dac3f10e6fd82 |
|
MD5 | 7b52659909b662f630cd58bbb5c5bb7e |
|
BLAKE2b-256 | 6309d32ac283191b70c6adaa13063fc4d1d5223c0f2b72269ca30fb9eb88c2d5 |