Skip to main content

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.


  • 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.


You should install this from github as this project isnt stable. pip install -e git+ or using a docker docker pull hellowlol/bw_plex


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


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

  -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.

  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.

Source Distribution

bw_plex-0.1.0.tar.gz (83.1 kB view hashes)

Uploaded source

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