147

Github GitHub - pixeltris/TwitchAdSolutions

 3 years ago
source link: https://github.com/pixeltris/TwitchAdSolutions
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

TwitchAdSolutions

This repo aims to provide multiple solutions for blocking Twitch ads.

Recommendations

M3U8 proxies (or full proxies / VPNs) are currently the most reliable way of avoiding ads. More proxy hosts would be ideal (see #8).

Alternatively:

  • notify-strip is ok-ish.
  • Alternate Player for Twitch.tv consistently updates with new ad-blocking methods.
  • ttv_adEraser somewhat fixes the purple screen issue of ttv-ublock.
  • ttv-tools (firefox) has nice features.

Current solutions

These solutions generally aren't compatible with other Twitch ad blockers. e.g. ttv-ublock will break some of these.

If you want a perfect solution, please use Twitch AdBlock.

  • notify-strip (ublock / userscript)
    • The same as strip, but notifies Twitch that ads were "watched" (reduces preroll ad frequency).
  • notify-reload (ublock / userscript)
    • Notifies that ads were watched, then reloads the player.
    • Repeats this until no ads (which may never happen ~ infinite reload).
    • You should expect 3-10 player reloads (give or take). Once successful you shouldn't see preroll ads for a while on any stream (10+ minutes?).
  • strip (ublock / userscript)
    • Ad segments are replaced by low resolution stream segments (on a m3u8 level).
    • TODO: Fix midrolls issues (stream freezes for several seconds / potentially longer low res than needed).
    • NOTE: Removing segments doesn't notify Twitch that ads were watched (aka more served ads).
  • low-res (ublock / userscript)
    • No ads.
    • The stream is 480p for the duration of the stream.
  • mute-black (ublock / userscript)
    • Ads are muted / blacked out for the duration of the ad.
    • You might see tiny bits of the ad.
  • video-swap (ublock / userscript)
    • Ads are replaced by a low resolution stream for the duration of the ad.
    • Similar to strip, but skips closer to 20 seconds when switching to the live stream (TODO: low latency support).
    • You might see tiny bits of the ad.
    • Audio controls wont work whilst the ad is playing.
    • There are various UX/UI issues with this script which need to be addressed.
  • proxy-m3u8 (ublock / userscript) (proxy currently points to a dead url)
    • Uses a proxy server to fetch an ad-free stream.
    • Currently only the initial m3u8 is proxied, so there shouldn't be any additional latency.
    • Assumes the proxy server acts in good faith and maintains a good uptime.

The following renamed/deprecated scripts will be removed from the master branch on 1st March 2021:

  • dyn renamed to strip as this better reflects the functionality (strips ad segments).
  • dyn-skip removed as it no longer works.
  • dyn-skip-midroll renamed to notify-reload as the original name has lost its meaning.
  • dyn-skip-midroll-alt renamed to notify-strip as the original name has lost its meaning.
  • dyn-video-swap renamed to video-swap.

Applying a solution (uBlock Origin)

  • Navigate to the uBlock Origin Dashboard (the extension options)
  • Under the My filters tab add twitch.tv##+js(twitch-videoad).
  • Under the Settings tab, enable I am an advanced user, then click the cog that appears. Modify the value of userResourcesLocation from unset to the full url of the solution you wish to use (if a url is already in use, add a space after the existing url). e.g. userResourcesLocation https://github.com/pixeltris/TwitchAdSolutions/raw/master/notify-strip/notify-strip-ublock-origin.js
  • To ensure uBlock Origin loads the script I recommend that you disable/enable the uBlock Origin extension (or restart your browser).

Applying a solution (userscript)

  • Viewing one of the userscript files should prompt the given script to be added.

Other solutions / projects

For a more detailed description of the following please refer to this.


NOTE/TODO

NOTE: Many of these solutions could do with improvements.
TODO: Test midroll ads.
TODO: More testing in general.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK