Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Skip intros.

Project description

Codacy Badge Travis Status Cov GitHub Releases PyPI version GitHub last commit

A tool for skipping intro and outro for plex.

Features

  • identify outro start and end scanning the video for credits text.
  • identify intro start and end using themes song or blackframes and audio silence.
  • identify if the video has a recap using subtitles and audio.
  • download theme songs.
  • process on playback start.
  • process on recently added.
  • control the client to skip intro/outro.
  • start next episode when the credits start.

Install

You should install this from github as this project isnt stable. pip install -e git+https://github.com/Hellowlol/bw_plex.git#egg=bw_plex or using a docker docker pull hellowlol/bw_plex

Usage

CPU/Memory usage can be rather high, so use a 64 bit python install. Note: This tool only works on your local network.

Usage: bw_plex

[OPTIONS] COMMAND [ARGS]...

  CLI tool that monitors pms and jumps the client to after the theme.

Options:
  -d, --debug             Add debug logging.
  -u, --username TEXT     Your plex username
  -p, --password TEXT     Your plex password
  -s, --servername TEXT   The server you want to monitor.
  --url TEXT              url to the server you want to monitor
  -t, --token TEXT        plex-x-token
  -c, --config TEXT       Not in use atm.
  -vs, --verify_ssl TEXT  Enable this to allow insecure connections to PMS
  --help                  Show this message and exit.

Commands:
  add_theme_to_hashtable  Create a hashtable from the themes.
  check_db                Do a manual check of the db.
  create_config           Create a config file.
  export_db               Export the db to some other format.
  ffmpeg_process          Simple manual test for ffmpeg_process with...
  manually_correct_theme  Set the correct fingerprint of the show in...
  match                   Manual match for a file.
  process                 Manual process some/all eps.
  set_manual_theme_time   Set a manual start and end time for a theme.
  watch                   Start watching the server for stuff to do.

You can read the help for the subcommands using –help: bw_plex export_db --help

The most common will be: bw_plex watch

How it works:

Bw_plex listens for playing events using websocket. We download the first 10 minutes of that episode and/or the theme music from YouTube/tvtunes/Plex.

We then create a audio print from the theme song that we match against the audio of the 10 minutes of the episode. (There’s a backup method that uses audio silence in combination with black frames too).

We then check if this episode has a recap using subtitles and audio where we look for clues like last season, previously on (add you own words in the config), then we download last part of the episode an and indentify the start and end of the outro.

Depending on your settings we will then allow playback until the theme start or just jump straight to intro end if we also should skip recaps.

Since this is a rather slow process we also start processing the next episode so next time you watch the same show we instantly seek the client to the end of the theme.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for bw-plex, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size bw_plex-0.1.0.tar.gz (83.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page