유튜브 동영상 볼륨 증폭

Volume Control 버튼이 좌측 하단에 계속 따라다니며, 해당 버튼을 누르면 1~10까지 볼륨 조절이 가능하며 ↑방향키와 ↓방향키로도 볼륨 조절이 가능합니다

目前為 2023-02-28 提交的版本,檢視 最新版本

// ==UserScript==
// @name          유튜브 동영상 볼륨 증폭
// @namespace     유튜브 동영상 볼륨 증폭
// @match       https://www.youtube.com/*
// @version       0.1
// @description   Volume Control 버튼이 좌측 하단에 계속 따라다니며, 해당 버튼을 누르면 1~10까지 볼륨 조절이 가능하며 ↑방향키와 ↓방향키로도 볼륨 조절이 가능합니다
// @icon          data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAALBJREFUOE+lk9ERwiAQRB8dUIp2YAmWQDpIB2ol2oFJB0kFWkJKSAfnHARnjCETwn0xzO1jORZDYZlCPV+AgAUOE/CUAHfT/tvAqGsPEHDAPdNNZeBhJJz6yhTH9qMCzsBzJ6BSwBW4LAKGAZyDLl79r+u2DhAJiraFugYF/tZGQN8HJ9kAFejJTZMakXeQHqK1MPrnTpUfYtkzFgcpeptFWV1ptOe1HOWdIfKy4t/4AcydNym183KEAAAAAElFTkSuQmCC
// @author        mickey90427 <[email protected]>
// ==/UserScript==

(function() {
    'use strict';

    var audioCtx = new AudioContext();
    var gainNode = audioCtx.createGain();
    var videoElement = document.querySelector("video");
    var mkttalk_source = audioCtx.createMediaElementSource(videoElement);
    mkttalk_source.connect(gainNode);
    gainNode.connect(audioCtx.destination);
    gainNode.gain.value = 1;

    // Create volume control button
    var volumeBtn = document.createElement("button");
    volumeBtn.setAttribute("style", "position: fixed; bottom: 10px; left: 10px; z-index: 9999;");
    volumeBtn.innerText = "Volume Control";
    document.body.appendChild(volumeBtn);

    // Create volume control box
    var volumeBox = document.createElement("div");
    volumeBox.setAttribute("style", "position: fixed; bottom: 60px; left: 10px; width: 50px; height: 100px; padding: 10px; background-color: #fff; border: 1px solid #ccc; display: none; z-index: 9999;");
    volumeBox.innerHTML = '<label for="volume-input">Volume:</label><input id="volume-input" type="number" min="1" max="10" value="1">';
    document.body.appendChild(volumeBox);

    // Add event listener to volume control button
    volumeBtn.addEventListener("click", function() {
        volumeBox.style.display = (volumeBox.style.display === "none") ? "block" : "none";
    });

    // Add event listener to volume input box
    var volumeInput = document.getElementById("volume-input");
    volumeInput.addEventListener("change", function() {
        gainNode.gain.value = volumeInput.value;
    });

})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址