Greasy Fork

Greasy Fork is available in English.

Twitchᴾˡᵘˢ Ad Skipper (🚫 No Ads • No Downloads • No Virus)

Automatically skips ads on Twitch livestreams. No downloads, no viruses, just ad skipping.

// ==UserScript==
// @name         Twitchᴾˡᵘˢ Ad Skipper (🚫 No Ads • No Downloads • No Virus)
// @version      1.0
// @description Automatically skips ads on Twitch livestreams. No downloads, no viruses, just ad skipping.
// @author       TonNom
// @match        https://www.twitch.tv/*
// @grant        none
// @run-at       document-end
// @namespace http://greasyfork.icu/users/1465338
// ==/UserScript==

(function() {
    'use strict';

    const observer = new MutationObserver(() => {
        const video = document.querySelector('video');
        const adBanner = document.querySelector('.ad-banner, .tw-c-background-overlay');

        // Si une pub est détectée (flux noir ou overlay), on recharge le lecteur
        if (video && (video.adBanner || video.duration === 0)) {
            console.log('[Twitch Ad Skipper] Ad detected, refreshing player...');
            const refreshButton = document.querySelector('[data-a-target="player-overlay-click-handler"]');
            if (refreshButton) refreshButton.click();
        }

        // Supprimer les overlays pub éventuels
        const adOverlays = document.querySelectorAll('.ad-banner, .player-ad-overlay');
        adOverlays.forEach(el => el.remove());
    });

    observer.observe(document.body, { childList: true, subtree: true });

    console.log('[Twitch Ad Skipper] Script actif');
})();