Coder Social home page Coder Social logo

dreamlinerm / netflix-prime-auto-skip Goto Github PK

View Code? Open in Web Editor NEW
228.0 7.0 20.0 35.92 MB

Automatically skip Ads, Intros, Recaps, Credits, etc. on Netflix, Prime video, Disney+ (Hotstar, STAR+), Crunchyroll and HBO max

License: GNU General Public License v3.0

JavaScript 4.39% CSS 0.21% HTML 95.23% Python 0.16%
chrome chrome-extension firefox firefox-addon firefox-extension webextension adblock amazon disney netflix

netflix-prime-auto-skip's Introduction

Streaming enhanced Dynamic JSON Badge

Automatically skip Ads, Intros, Recaps, Credits, etc. on Netflix, Prime video, Disney+ (Hotstar, STAR+), Crunchyroll and HBO max

Mozilla Add-on Rating
Chrome Web Store Rating
GitHub Issues or Pull Requests GitHub commit activity

Get Streaming enhanced for Firefox Get Streaming enhanced for Chromium


Browser Compatibility:

Netflix Prime Video Disney+ (Hotstar, STAR+) Crunchyroll HBO

Install on Android

Download Firefox, Kiwi Browser or similar to be able to install the firefox/chrome extension.

The drm for each streaming service will be installed automatically when a video started for the first time and you may need to reload the page once.

Android Compatibility:

Netflix Prime Video Disney+ (Hotstar, STAR+) Crunchyroll HBO
✅(tweaked Desktop Website) ✅(default Desktop Website)

Supported Streaming Services

What it does

The script, "skipper.js", is injected into all urls containing "amazon.*/*/video" or "netflix.com" or "disneyplus.com" or "hotstar.com" or "starplus.com".

It automatically skips Ads, intros, Credits, recaps, and anything else you don't want to watch on Netflix, Prime video and Disney Plus (Hotstar, STAR+).

✨ Features

On Netflix, Prime Video, Disney+ (Hotstar, STAR+), Crunchyroll and HBO max it automatically:

  • Skips Intros & Recaps
  • Either Skips Credits
  • Or Watch Credits
  • Skips Ads
  • Shows TMDB Rating
  • Adds customizable playback speed control
  • Improve subtitle styling
  • Plays on Fullscreen

In addition to the Shared features:

On Netflix it additionally automatically:

  • Picks last used profile
  • Blocks Inactivity Warning (Are you still watching?)

On Amazon Prime Video it additionally automatically:

  • Skips Self promoting ads (Ads for prime video productions)
  • Filters paid content (movies, series)
  • Removes annoying blur when hovering over video

On Crunchyroll it additionally automatically:

  • Adds Filters to Release Calendar

On Disney+ (Hotstar, STAR+) it additionally automatically:

  • goes back to full screen when skipping to the next episode

If you want to see what is implemented go here:

💕 Enjoying Streaming enhanced?

Buy me a coffee! PayPal

Contributing

If you have any suggestions or Bugs, please open an issue or join the Discord. Everyone is welcome to contribute!

Settings

Configure what is skipped in the settings Page.

Import and Export all Settings.

See Statistics. All statistics and settings are not shared but are synchronized with your browser account.

Implemented Feature Overview

abbrev. definition
S season
E episode
Implemented
Not available
Not implemented
? don't know if necessary
Name service specific features
Feature Netflix Prime Video Disney+ (Hotstar, STAR+) Crunchyroll HBO max
Intro brooklyn nine nine S1E4 lucifer S3E4 star wars andor S1E2 One piece
Recaps Outer Banks S2E1 lucifer S3E3 Criminal Minds S1E2 ?
Credits ❌(not necessary if outro is skipped)
Ads 2 Broke Girls ❌(Ublock can do it) ?
Add Speed Slider
Play on Fullscreen
TMDB Rating ❌(MAL ratings better)
Individual Features
  • Inactivity Warning
  • Auto pick last profile
  • Skip Self Ads
  • Paid Content filter
  • Move category "Continue":
  • Remove duplicate Shows
  • Release Calendar Filters

How it works

The addon is observing every mutation of the dom Tree of the Website. The exact classes may be outdated since I do not update these regularly.

On Netflix it matches the buttons with the data-uia tag containing:

  • Intro: player-skip-intro
  • Recap: player-skip-recap, player-skip-preplay
  • Credits: next-episode-seamless-button
  • Inactivity Warning: interrupt-autoplay-continue
  • Basic tier ads: matched by css class .default-ltr-cache-mmvz9h and the speed is set to 16x until the ad is over

On Prime video it matches buttons with the Css Classes:

  • Intro: skipelement
  • Credits: nextupcard-button
  • Self promoting ads: .fu4rd6c.f1cw2swo
  • Paid Content: .o86fri (yallow text indicates paid films)

The freevee ad text contains the ad length which is matched by

  • Freevee ads: .atvwebplayersdk-ad-timer-text

and then skipped by forwarding by the ad length -0.1 seconds which will fix a lot of issues it turns out.

Run the Extension

Chrome

To run the extension in chrome you can just load the chrome folder as an unpacked extension. But every time you modify the code you have to reload the extension on the extension page manually. I primarily just develop in firefox and then copy the code into chrome and replace browser with chrome in the code.

Firefox

Just like chrome you can temporarily load the extension by going to about:addons, clicking on the gear icon and then Install Add-ons From File. Then you can load the firefox folder as a temporary extension.

Install web-ext and Firefox for a better development experience

npm install --global web-ext to install web-ext globally

npm start to start in firefox

debug

Create a profile named test in Firefox in the about:profiles page. Then you can login into Netflix etc. in the profile and then every time you run the command you don't have to login again.

npm run profile to start in firefox with the profile "test" selected

All Commands

npm start start the firefox development

npm run start-android start on firefox android

npm run profile start the firefox development with the profile "test" selected

npm run lint lint all the js files

npm run esLint lint all the manifest files

npm run build copy files from firefox to chrome and build the zips files to upload

npm run copy copy files from firefox to chrome

npm run zip build the zips files to upload

npm test test with python Selenium testsOutdated

Test the Extension with Selenium python

Setup

  • insert your own firefox profile filepath to be logged into every platform in the test.py file.
  • install Python
  • install selenium pip install -U selenium

Run

npm test

Cli ARGS:

  • none : all tests
  • 'n': Netflix tests
  • 'p': Prime Video tests
  • 'd': Disney tests

npm test n p d

Changelog

You can see the Changelog in the addon or in the published versions.

Disclaimer

Netflix, Amazon Prime video and Disney+ (Hotstar, STAR+), Crunchyroll and HBO max are trademarks and the author of this addon is not affiliated with these companies.

netflix-prime-auto-skip's People

Contributors

andercard0 avatar dreamlinerm avatar sirchnik avatar smsilva98 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

netflix-prime-auto-skip's Issues

[BUG] Sometimes the settings open expanded

Describe the bug
Sometimes the settings open expanded

To Reproduce
Steps to reproduce the behavior:
click on addon
maybe when browser just started

Expected behavior
settings open closed

Desktop (please complete the following information):

  • OS: Windows
  • Browser Firefox
  • Version 1.0.20

Block Ads from Amazon freevee

Blocking the Ads from Amazon freevee, so you can watch the videos.
I allready paid for amazon prime why do i need to watch ads.

Freevee: no skip when ads are triggered due to user interaction

Description

When a user presses the "forward by 10 seconds" button which leads them to hit an ad marker or they manually choose a point in the video which lies behind an ad marker, then the ad will play anyway - it does not get skipped by this extension.

Findings

This seems to be caused by the extension checking whether the video is currently playing before a skip. I would guess that the user interaction causes the video to be marked as "paused" for a short moment.

if (!document.querySelector(".fu4rd6c.f1cw2swo") && video != null && !video.paused && adTimeText != null && lastAdTimeText != adTimeText.textContent) {

@Dreamlinerm It seems like you just added this condition in the v1.0.16 release . Was there a particular need for this? If not, can this condition be removed again?

[BUG]Buffering when trying to skip ad

Describe the bug
When watching shows that have ads (for instance BuzzFeed Unsolved: Supernatural, it will switch to the next episode, It will click the skip ad button but will cause it to sit and buffer.

To Reproduce
Steps to reproduce the behavior:

  1. Go to a show with ads like 'BuzzFeed Unsolved: Supernatural'
  2. Click on 'N/A'
  3. Scroll down to 'N/A'
  4. See error N/A
  5. Wait for an episode to end, then when it switches to a new episode, it will click the skip ad button and cause it to buffer at times. This does not happen every time, I think it may be detecting the auto skipping feature since it happens almost instant. Maybe have a small delay on it could fix the issue?

Expected behavior
It should skip the ad and go directly into the episode.

Screenshots
N/A

Background information:

  • URL: [Amazon.com]
  • OS: [Windows 11 22H2 latest]
  • Browser [Chromium Version 111.0.5563.147 (Official Build) (64-bit)]
  • Addon-Version [Version: 1.0.32]

Additional context
N/A If you need me to do anything else just ask and I will try my best. I love this Extension and would like to help make it as easy as possible for you to fix any issues that may arise.

Stays stuck at ad screen on Netflix[BUG]

The extension is able to skip ads but stays stuck on the last ad screen instead of getting back to the show.
This is on Netflix.
Browser is Opera.
This happens to ads in the middle of the show. The ad before the intro is skipped just fine.

settings page the buttons fade in

because of the transition the buttons fade in
let sliders = document.getElementsByClassName("slider");
for (let slider of sliders) {
slider.style.transitionDuration = "0s";
}

show statistics

save the amount of ad time skipped so the time saved and show it in the addon

[FEATURE] [Prime] add a delay to the skip process

Hello !

First, the plugin is really nice !

I use it for Amazon Prime in FireFox, and the skip is too fast in my opinion.
For exemple, when the intro is skipped, I really do not see any part of the intro. To a point where I am wondering if i am missing aon some actual content.

It would be nice to delay the skip by 1 or 2 seconds, so it is clear that something is skipped.
Adding a setting for such delay would also be appreciated.

Infinite Loading on Prime Video

After watching an episode it skips to the next one but the page starts to buffer for infinite time. Only way to fix this is reloading the page or disable the skip Selfads option. Brave browser if helps

Addon disables subtitles on new episode

Add-on disables subtitles, initially it works fine but after Amazon moves to the next episode subtitles fail to appear and I need to refresh the page and go back into that episode or disable then re-enable subtitles.
This is still better than having to watch trailers for amazon prime material between episodes (on a service i pay for) but it would be nice if its easily fixable.

[FEATURE] Add Localisation; anyone can submit their language

If you want, you can look into the localisation of the add-on to make it in more languages.

Add addon Localisation:
Here you can see all supported locales:
https://developer.chrome.com/docs/webstore/i18n/#choosing-locales-to-support
The files to translate is

  • _locales/en/messages.json: The add-on
  • Publish/descriptionEN.txt: The Web store page

to understand the structure:
https://developer.chrome.com/docs/webstore/i18n/
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Internationalization

[BUG]Prime Video does not add speed slider.

Describe the bug
The speed slider is not added in Prime Video even though the speed slider is turned on in the extension settings.

To Reproduce
Steps to reproduce the behavior:

  1. Enable "Shared Settings" → "Add Speed Slieder" in the settings screen of the extension.
  2. Play videos on Prime Video.
  3. Speed slider not added to player controls

Expected behavior
A speed slider will be added.

Background information:

  • URL: amazon.co.jp
  • OS: Windows 11
  • Browser Chrome
  • Addon-Version v.1.0.49

Edge browser fails to add skip Netflix

Describe the bug
When you install the Netflix-Prime-Auto-Skip addon from the chrome extension store in the Edge browser, then play a netflix video, ads will fail to skip.

To Reproduce
Steps to reproduce the behavior:

  1. open microsoft edge browser
  2. go to chrome extension website
  3. install netflix-prime-auto-skip addon
  4. go to netflix and play a video
  5. ads fail to skip in videos

Expected behavior
Ads should skip

Background information:

  • URL: netflix.com
  • OS: windows 10
  • Browser Edge
  • Addon-Version 1.0.47

Netflix ad skip audio/video sync

Bug
Sometimes after netflix ad skipping the audio and video will no longer be synced, a refresh of the browser fixes the sync until the next one or two ad skips.

To Reproduce
Steps to reproduce the behavior:

  1. open chrome and go to netflix
  2. play a netflix video and wait for a few ads to play
  3. start noticing audio/video sync issues

Expected behavior
Audo/video is synced after ads

Background information:

  • URL: netflix.com
  • OS: windows 10
  • Browser chrome
  • Addon-Version 1.0.45

White screen after load after prime video changes.

Describe the bug
Since Amazon prime video updated it's looks it loads for a few seconds then turns to a blank white page (See video for context)
To Reproduce
Steps to reproduce the behavior:

  1. Go to 'prime video'
  2. Wait for 'Screen to turn white'

Expected behavior
To load and not turn to a white screen?

Screenshots
https://imgur.com/a/9eyNJpN VIDEO

Desktop (please complete the following information):

  • OS: WIndows 11 version 22H2 Build: 22621.1485
  • Browser Chromium
  • Version 111.0.5563.147 (Official Build) (64-bit)

Additional context
This behavior stops if I go to Netflix/Prime auto-skip extension and disable the Amazon automations.

Add select to shared options

Change shared options to label like this:

<select name="Option" id="Option">
    <option value="Both">Both</option>
    <option value="Amazon">Amazon</option>
    <option value="Netflix">Netflix</option>
  </select>

image

[FEATURE] Add Setting for speed slider cutsomization

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.