• Stars
    star
    261
  • Rank 156,173 (Top 4 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created about 6 years ago
  • Updated almost 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Block advertisements that are inserted in Twitch streams directly.

Motivation

Twitch is playing a 15-30 second advertisement whenever one starts watching a new channel. For people who jump around a bit this is pretty annoying.

Twitch staff has been fairly quick to remove client side fixes that disable advertisements. Since they're able to inject advertisementst into the HLS stream directly (SSAI, Twitch's SureStream if you want to research further), I believe such fixes will not always be available.

This extension monkey patches the web worker (among others) Twitch uses and edits the m3u8 playlist that gets requested every few seconds to simply remove segments that are marked as advertisments with SCTE-35 flags.

Right now Twitch also makes the actual stream available in those playlist files after a few seconds, which means that after just around 5 seconds the real stream begins, instead of 30 seconds of advertisements.

Installation

To install manually for Chrome:

  1. Check releases for the latest zip or download the source
  2. Unzip into a directory and keep the directory in mind
  3. Go to chrome://extensions/ and enable Developer Mode
  4. Click on 'Load unpacked' and go to the directory with the extension (see if manifest.json is in the directory)

To install manually for FireFox:

  1. Download the latest release (xpi file)
  2. Go to about:addons and load addon from file

Limitations

Generally it seems to work fine. Whenever one loads up a new channel, if there's an advertisment injected by Twitch, after a few seconds of loading the real stream begins without any indication of an advertisment.

However I've seen rare instances where the stream breaks, which requires a browser reload. This happened once when the advertisment loaded 2-3 seconds after the stream has started normally.

Currently this is only tested on the latest stable chromium browser and latest Firefox stable.

Contributing

I appreciate any contributions, be it pull requests or issues. Right now there's no tests however, so make sure to test extensively on Twitch before submitting a pull request.

More Repositories

1

mac-screenshot-tracker

Screenshot Tracker for Mac - Rewatch what you've worked on.
Python
62
star
2

qubo-nn

Classifying, auto-encoding and reverse-engineering QUBO matrices
Python
43
star
3

MinigamesAPI

Rich MinigamesAPI supporting different types of Minigames
Java
33
star
4

RAT

Simple RAT (only on own network) made in C++
C++
16
star
5

chromium-snss-parse

Single header library for parsing Chromium's SNSS files
C++
12
star
6

fish-rl-alife

Running RL algorithms on the fish/shark aquarium environment to find unexpected biological insights.
Python
10
star
7

zoho-mail-api-example

Minimal example for the Zoho Mail API using Flask. Supports OAuth refresh tokens and shows how to automatically send a HTML mail from a Flask server.
Python
6
star
8

skins

Create a player's skin out of blocks
Java
5
star
9

InstanceClient

Modded Minecraft Client with a few Utilities
Java
4
star
10

BootlegAlphaZero

AlphaZero written in C++, for research. Includes some tangential goodies such as imitation learning, Python implementations and a plethora of experiments.
Python
4
star
11

LightLevelHolograms

Small requested tool for showing light levels with holograms
Java
3
star
12

MinigamesAPI-Bungee

Bungee support for MinigamesAPI signs
Java
3
star
13

Snake-Minigame

The 90s Game in Minecraft with a growing line of Sheep visualizing the snake
Java
3
star
14

GRAB0

It GRABs you, it consumes you. What is GRAB doing you ask? It is learning. With 0 domain knowledge.
C++
3
star
15

Destroyer

A bigger new minigame plugin for bukkit
Java
2
star
16

SimpleHoeffdingTree

Super simple, research only
Python
2
star
17

instance01

2
star
18

RTDP

Real-time Dynamic Programming (RTDP)
Python
2
star
19

MC-Console-Client

MCCC: Minecraft Console Client for sending messages and commands without the 3D aspect of the game.
C#
2
star
20

Soundcloud-Console-Downloader

A Soundcloud Downloader in a small Console app
C#
2
star
21

MinigamesParty

The Minigames Party plugin
Java
2
star
22

NaturalDisasters

Java
1
star
23

HorseRacingPlus

A HorseRacing plugin
Java
1
star
24

i-love-coding.com

I love coding, do YOU love coding?
PHP
1
star
25

SimpleYTDownloader

Download videos as mp3 into your music library
C#
1
star
26

UCIWrapper

Event based UCI wrapper
C#
1
star
27

Mob-Escape

DragonEscape with more mobs
Java
1
star
28

BungeeStartup

Bungee Startup Plugin for starting all subservers automatically
Java
1
star
29

CrashClient

A plugin to crash a minecraft client
Java
1
star
30

osmnx-mdp

Solving routing with uncertainty using Markov decision processes
Python
1
star
31

boatgame

The SeaBattle minigame
Java
1
star
32

IPVisitor

Autovisits a link with different http header IPs a given times.
C++
1
star
33

DrakonnasSystem

An enjin like CMS and points system for Bukkit servers
PHP
1
star