您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Detects when YouTube tries to do "loudness normalization" and sets the volume back to what's set on the volume slider.
当前为
// ==UserScript== // @name YouTube, STOP CHANGING MY VOLUME! // @namespace Violentmonkey Scripts // @match https://www.youtube.com/watch // @grant none // @version 1.0 // @author Elara6331 <[email protected]> // @license GPLv3 // @description Detects when YouTube tries to do "loudness normalization" and sets the volume back to what's set on the volume slider. // ==/UserScript== window.onload = () => { player = document.querySelector('video'); volumeHandle = document.querySelector('.ytp-volume-slider-handle'); function checkVolume() { // Get the distance in pixels of the volume slider handle from the beginning of the slider var volumeHandleLeft = volumeHandle.style.left.substr(0, volumeHandle.style.left.length - 2); // The maximum distance is 40px, so divide by 40 to get the desired volume value var volumeHandleValue = parseFloat(volumeHandleLeft) / 40; if (volumeHandleValue != player.volume) { console.warn("Volume discrepancy detected. YouTube is up to its shenanigans again. Changing volume from " + player.volume * 100 + "% to " + volumeHandleValue * 100 + "%"); player.volume = volumeHandleValue; } } player.onvolumechange = checkVolume; player.onplaying = checkVolume; }