Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1,322 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TTV AB

Version License Tests Manifest Firefox Chrome GitHub

A lightweight browser extension that blocks Twitch ads on live streams and VODs while keeping playback stable.

πŸ“₯ Install

⚠️ Supported browsers: Firefox and Chromium-based desktop browsers only. TTV AB can't run on WebKit-based browsers like Orion, or on anything on iOS/iPadOS (every iOS browser is WebKit under the hood). The ad-blocker can't load there and the player goes to a black screen, so please use Firefox or a Chromium-based browser on a computer.

Store Link Status
Firefox Add-ons TTV AB - Twitch Ad Blocker Stable
Chrome Web Store TTV AB - Lightweight, powerful ad blocker Stable

Retro Theme Channel Stats Card

✨ Features

  • βœ… Blocks preroll and midroll ads on live streams and VODs
  • βœ… Supports both live playback and Twitch /videos/<id> archives
  • βœ… Cleans up stale Twitch ad UI after recovery
  • βœ… Avoids purple-screen playback interruptions
  • βœ… Restores your chosen quality after ad recovery
  • βœ… Manifest V3 compatible
  • βœ… Simple enable/disable toggle
  • βœ… Accessible popup controls and live-updating stats
  • βœ… Persistent "Ads Blocked" statistics
  • βœ… Statistics Dashboard with time saved, weekly charts, and achievements
  • βœ… 12 Achievement Badges to unlock as you block ads
  • βœ… Language Selector - 12 languages supported (EN, ES, FR, DE, PT, IT, JA, KO, ZH-CN, ZH-TW, RU, UK)
  • βœ… Per-channel ad blocking breakdown
  • βœ… Modern, animated UI (Retro/Neon aesthetic)
  • βœ… Theme Picker - switch between the default Retro synthwave theme and the original Neon theme via two color circles in the popup
  • βœ… Lightweight and fast

πŸš€ Usage

  1. Install the extension from your browser's add-on store
  2. Navigate to twitch.tv and open any live stream or VOD
  3. Ads are blocked automatically, no configuration needed
  4. Click the extension icon to view stats or toggle Ad Blocking, Ad Spoofing, and Low Quality Fallback
  5. Change language via the dropdown in the popup footer

βš™οΈ How It Works

TTV AB intercepts Twitch's HLS video playlists at the network level. When Twitch injects ad-marked segments or forces the player onto an ad-only path, the extension:

Animated ad-blocking pipeline: the worker fetch hook inspects every Twitch playlist; clean playlists pass straight through to native playback, while ad breaks are stripped and bridged with a clean backup stream until native quality is restored.

  • Strips ad segments from M3U8 media playlists in real time
  • Fetches clean backup streams using alternative player types when the native stream is ad-locked
  • Serves a valid empty video segment in place of blocked ad content to keep the decoder stable
  • Monitors playback health and automatically recovers from stalls after ad breaks
  • Restores your original quality and volume settings once native playback resumes

When a channel opens during an ad, or an ad starts mid-stream, the extension switches to a clean backup stream within a couple of seconds so video starts playing right away. The backup targets the quality your connection has been sustaining (even if the player had just restarted on a low rung when the ad hit), with a 360p floor so a channel-open preroll never starts blurrier than 360p while the player is still ramping up from its lowest quality. Your full native quality and audio are restored automatically and seamlessly once the ad window ends. The optional Low Quality Fallback toggle trades some quality for an even faster first frame, starting on a quick low-resolution stream and climbing back up as the break ends.

πŸ”” What's New

v16.0.9 - 2026-08-15

  • Fixed live playback buffering indefinitely when an ad continued after native recovery. Rapid ad continuation now keeps backup ownership synchronized and returns a stranded playhead to the actively advancing clean stream instead of exhausting source retries (#59).

v16.0.8 - 2026-08-14

  • Fixed error 4000 on enhanced-quality HEVC and AV1 streams. Temporary Twitch quality changes no longer break recovery during repeated ads, and a stuck player can now rebuild from a verified compatible stream instead of remaining frozen (#50).

v16.0.7 - 2026-08-13

  • Fixed overlapping or out-of-sync audio after ad recovery. Stale Twitch players now stay muted, quality changes keep audio and video on one timeline, and playback is cleanly rebuilt after an emergency low-quality backup (#58).

v16.0.6 - 2026-08-13

  • Made Low Quality Fallback changes smoother and easier to diagnose. Disabling it no longer reloads the player, clean fallback playback keeps advancing while other sources are checked, and Generate Log now shows the active setting and actual selected backup resolution.

See CHANGELOG.md for the complete list of changes.

πŸ› οΈ Development

git clone https://github.com/GosuDRM/TTV-AB.git
cd TTV-AB
npm install
npm run build          # compiles TypeScript, minifies, and bundles
npm run package:chrome # creates Chrome Web Store upload archive
npm run lint           # runs Biome linter
npm run knip           # checks for unused exports

The build outputs to dist/. Load the unpacked extension from dist/manifest.json in your browser's developer mode after building.

The source tree under src/ is organized by concern: modules/ for core ad-blocking logic (processor, parser, player, hooks, worker, state, API), scripts/ for the bridge and background service worker, and popup/ for the extension UI.

πŸ’¬ Support

  • Found a bug? Open an issue
  • Want to contribute? Pull requests are welcome
  • If TTV AB saves you from ads, consider supporting development:

Donate

πŸ”’ Privacy

TTV AB operates entirely on your device. No data is ever sent to external servers: not your browsing history, not your Twitch activity, not your ad-block statistics. All counters and settings are stored in your browser's local storage. See PRIVACY.md for the full privacy policy.

πŸ“„ License

MIT License with Attribution. See LICENSE for details.

About

Twitch Adblocker for Chromium browsers. Blocks preroll & midroll ads on Twitch.tv live streams.

Topics

Resources

Stars

72 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages