Compare commits

..

No commits in common. "master" and "v1" have entirely different histories.
master ... v1

5 changed files with 56 additions and 20 deletions

View File

@ -25,9 +25,9 @@ Alternatively:
**There are better / easier to use methods in the above recommendations.**
- video-swap-new - [userscript](https://github.com/pixeltris/TwitchAdSolutions/raw/master/video-swap-new/video-swap-new.user.js) / [ublock](https://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/master/video-swap-new/video-swap-new-ublock-origin.js) / [ublock (permalink)](https://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/0b5ea5ed8959a6b4eb4c1ea406aaa56313c9c907/video-swap-new/video-swap-new-ublock-origin.js)
- video-swap-new - [userscript](https://github.com/pixeltris/TwitchAdSolutions/raw/master/video-swap-new/video-swap-new.user.js) / [ublock](https://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/master/video-swap-new/video-swap-new-ublock-origin.js) / [ublock (permalink)](https://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/477085016b84beba8ccf0035689dd4b51fce929d/video-swap-new/video-swap-new-ublock-origin.js)
- Uses a lower resolution stream during ads.
- vaft - [userscript](https://github.com/pixeltris/TwitchAdSolutions/raw/master/vaft/vaft.user.js) / [ublock](https://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/master/vaft/vaft-ublock-origin.js) / [ublock (permalink)](https://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/0b5ea5ed8959a6b4eb4c1ea406aaa56313c9c907/vaft/vaft-ublock-origin.js)
- vaft - [userscript](https://github.com/pixeltris/TwitchAdSolutions/raw/master/vaft/vaft.user.js) / [ublock](https://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/master/vaft/vaft-ublock-origin.js) / [ublock (permalink)](https://raw.githubusercontent.com/pixeltris/TwitchAdSolutions/477085016b84beba8ccf0035689dd4b51fce929d/vaft/vaft-ublock-origin.js)
- The same as `video-swap-new` but attempts to get a clean stream faster (may suffer from more freezing / playback issues).
## Applying a script (uBlock Origin)

View File

@ -34,13 +34,22 @@ twitch-videoad.js text/javascript
var IsPlayerAutoQuality = null;
var workerStringConflicts = [
'twitch',
'isVariantA'// TwitchNoSub
'isVariantA',// TwitchNoSub
'besuper/'// TwitchNoSub (0.9)
];
var workerStringAllow = [];
//
// TwitchNoSub (userscript) conflicts in this scenario:
// - TwitchAdSolutions : TwitchNoSub : window.Worker
//
// But it's fine in this scenario:
// - TwitchNoSub : TwitchAdSolutions : window.Worker
//
// This is because their script ignores the incoming blob (our script) and replaces it with their own importScripts call
// To fix this we scoop out TwitchNoSub and re-insert it so that it inherits from our worker
var workerStringReinsert = [
'isVariantA',// TwitchNoSub (prior to (0.9))
'besuper/',// TwitchNoSub (0.9)
'${patch_url}'// TwitchNoSub (0.9.1)
'isVariantA',// TwitchNoSub
'besuper/'// TwitchNoSub (0.9)
];
function getCleanWorker(worker) {
var root = null;

View File

@ -1,7 +1,7 @@
// ==UserScript==
// @name TwitchAdSolutions (vaft)
// @namespace https://github.com/pixeltris/TwitchAdSolutions
// @version 17.0.0
// @version 16.0.0
// @description Multiple solutions for blocking Twitch ads (vaft)
// @updateURL https://github.com/pixeltris/TwitchAdSolutions/raw/master/vaft/vaft.user.js
// @downloadURL https://github.com/pixeltris/TwitchAdSolutions/raw/master/vaft/vaft.user.js
@ -46,13 +46,22 @@
var IsPlayerAutoQuality = null;
var workerStringConflicts = [
'twitch',
'isVariantA'// TwitchNoSub
'isVariantA',// TwitchNoSub
'besuper/'// TwitchNoSub (0.9)
];
var workerStringAllow = [];
//
// TwitchNoSub (userscript) conflicts in this scenario:
// - TwitchAdSolutions : TwitchNoSub : window.Worker
//
// But it's fine in this scenario:
// - TwitchNoSub : TwitchAdSolutions : window.Worker
//
// This is because their script ignores the incoming blob (our script) and replaces it with their own importScripts call
// To fix this we scoop out TwitchNoSub and re-insert it so that it inherits from our worker
var workerStringReinsert = [
'isVariantA',// TwitchNoSub (prior to (0.9))
'besuper/',// TwitchNoSub (0.9)
'${patch_url}'// TwitchNoSub (0.9.1)
'isVariantA',// TwitchNoSub
'besuper/'// TwitchNoSub (0.9)
];
function getCleanWorker(worker) {
var root = null;

View File

@ -33,13 +33,22 @@ twitch-videoad.js text/javascript
var twitchWorkers = [];
var workerStringConflicts = [
'twitch',
'isVariantA'// TwitchNoSub
'isVariantA',// TwitchNoSub
'besuper/'// TwitchNoSub (0.9)
];
var workerStringAllow = [];
//
// TwitchNoSub (userscript) conflicts in this scenario:
// - TwitchAdSolutions : TwitchNoSub : window.Worker
//
// But it's fine in this scenario:
// - TwitchNoSub : TwitchAdSolutions : window.Worker
//
// This is because their script ignores the incoming blob (our script) and replaces it with their own importScripts call
// To fix this we scoop out TwitchNoSub and re-insert it so that it inherits from our worker
var workerStringReinsert = [
'isVariantA',// TwitchNoSub (prior to (0.9))
'besuper/',// TwitchNoSub (0.9)
'${patch_url}'// TwitchNoSub (0.9.1)
'isVariantA',// TwitchNoSub
'besuper/'// TwitchNoSub (0.9)
];
function getCleanWorker(worker) {
var root = null;

View File

@ -1,7 +1,7 @@
// ==UserScript==
// @name TwitchAdSolutions (video-swap-new)
// @namespace https://github.com/pixeltris/TwitchAdSolutions
// @version 1.35
// @version 1.34
// @updateURL https://github.com/pixeltris/TwitchAdSolutions/raw/master/video-swap-new/video-swap-new.user.js
// @downloadURL https://github.com/pixeltris/TwitchAdSolutions/raw/master/video-swap-new/video-swap-new.user.js
// @description Multiple solutions for blocking Twitch ads (video-swap-new)
@ -45,13 +45,22 @@
var twitchWorkers = [];
var workerStringConflicts = [
'twitch',
'isVariantA'// TwitchNoSub
'isVariantA',// TwitchNoSub
'besuper/'// TwitchNoSub (0.9)
];
var workerStringAllow = [];
//
// TwitchNoSub (userscript) conflicts in this scenario:
// - TwitchAdSolutions : TwitchNoSub : window.Worker
//
// But it's fine in this scenario:
// - TwitchNoSub : TwitchAdSolutions : window.Worker
//
// This is because their script ignores the incoming blob (our script) and replaces it with their own importScripts call
// To fix this we scoop out TwitchNoSub and re-insert it so that it inherits from our worker
var workerStringReinsert = [
'isVariantA',// TwitchNoSub (prior to (0.9))
'besuper/',// TwitchNoSub (0.9)
'${patch_url}'// TwitchNoSub (0.9.1)
'isVariantA',// TwitchNoSub
'besuper/'// TwitchNoSub (0.9)
];
function getCleanWorker(worker) {
var root = null;