Better Short Player

Replaces shorts player with the "normal" youtube player

От 29.01.2023. Виж последната версия.

// ==UserScript==
// @name         Better Short Player
// @namespace    http://tampermonkey.net/
// @version      0.5
// @description  Replaces shorts player with the "normal" youtube player
// @author       Phorz
// @match        https://www.youtube.com/*
// @license MIT
// @grant        GM_addStyle
// ==/UserScript==

(function() {
    'use strict';
    let currentUrl = window.location.href;
    var firstStart = true;
    setInterval(function() {
            if(window.location.href.includes("short")) {
            let playButton = document.querySelector("yt-icon-button.style-scope.ytd-shorts-player-controls button#button");
        if(playButton.getAttribute("aria-label").includes("Pause")){
        playButton.click();
        }
        if (currentUrl !== window.location.href || firstStart || !document.getElementById("embed-player")) {
            currentUrl = window.location.href;
            let videoId = currentUrl.split("/shorts/")[1];
            setTimeout(function() {
                let player = document.querySelector(".video-stream.html5-main-video");
                GM_addStyle(`ytd-reel-player-overlay-renderer #overlay.ytd-reel-player-overlay-renderer {
               visibility: hidden;
               }
               .player-controls.ytd-reel-video-renderer {
               display: none;
               }`);
                if (player) {
                    let oldPlayer = document.getElementById("embed-player");
                    if(oldPlayer){
                      oldPlayer.remove();
                    }
                    let newPlayer = document.createElement("iframe");
                    newPlayer.width = player.clientWidth;
                    newPlayer.height = player.clientWidth * 1.776;
                    newPlayer.src = "https://www.youtube.com/embed/" + videoId + "?autoplay=1";
                    newPlayer.frameBorder = "0";
                    newPlayer.allow = "fullscreen";
                    newPlayer.id = "embed-player";
                    player.parentNode.replaceChild(newPlayer, player);
                    firstStart = false;
                }
            }, 500);
        }
      }
    }, 100);
})();