1
0
mirror of https://github.com/pixeltris/TwitchAdSolutions.git synced 2024-11-22 18:32:46 +01:00
Go to file
2021-01-01 01:02:36 +00:00
base Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
dyn Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
dyn-skip Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
dyn-skip-midroll Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
dyn-skip-midroll-alt Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
dyn-video-swap Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
low-res Rename userscript files for easier install #2 2020-12-26 12:08:27 +00:00
mute-black Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
proxy-m3u8 Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
other-solutions.md Describe other solutions in more detail 2021-01-01 01:02:36 +00:00
README.md Describe other solutions in more detail 2021-01-01 01:02:36 +00:00
utils.bat Add page for testing m3u8 modifications and latency 2020-12-28 06:22:10 +00:00
utils.cs Update m3u8 proxy url (obfuscated) 2020-12-31 19:43:35 +00:00
utils.js Add page for testing m3u8 modifications and latency 2020-12-28 06:22:10 +00:00

TwitchAdSolutions

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

Recommendations

M3U8 proxies (or full proxies) are currently the most reliable way of avoiding ads (assuming you trust the third party). More proxy hosts would be ideal (see #8).

If you don't trust third parties then:

  • dyn-skip / dyn-skip-midroll-alt are decent.
  • 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 dyn-skip (and others).

  • dyn-skip (ublock / userscript)
    • Notifies Twitch that ads were watched before requesting the main live stream.
    • Falls back to mute-black if this fails (use an alternative solution if it always fails for you, as it adds additional load).
    • Midroll ads are muted/blacked out. See dyn-skip-midroll-alt for an alternative solution.
  • dyn-skip-midroll-alt (ublock / userscript)
    • A mix of dyn-skip / dyn. During midrolls this plays a low resolution stream instead of nothing - might be a little glitchy but should always play something.
    • If you see a Waiting for ads to finish banner without midroll in the banner text, you should be able to just refresh the page to get a regular stream.
  • dyn-skip-midroll (ublock / userscript) (not recommended)
    • The same as dyn-skip, but attempts to fully skip midroll ads (I'm not sure if this has ever actually worked - infinite reload).
    • This requires the script to work perfectly, otherwise the player will hit a reload loop.
  • dyn-video-swap (ublock / userscript)
    • Ads are replaced by a low resolution stream for the duration of the ad.
    • Similar to dyn, but skips closer to 20 seconds when switching to the live stream.
    • You might see tiny bits of the ad.
    • Audio controls wont work whilst the ad is playing.
  • dyn (ublock / userscript)
    • Ad segments are replaced by low resolution stream segments (on a m3u8 level).
    • Skips 2-3 seconds when switching to the live stream.
    • Stuttering and looping of segments often occur (during the ad segments).
    • 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.
  • proxy-m3u8 (ublock / userscript)
    • 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.
    • Uses proxy from Twitch Video Ad Blocker - host asks for donations to cover costs.
    • Assumes the proxy server acts in good faith and maintains a good uptime.

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://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/master/dyn/dyn-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 above refer to this.

NOTE/TODO

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