-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathyoutube-delay.js
47 lines (37 loc) · 1.59 KB
/
youtube-delay.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// ==UserScript==
// @name Simple Youtube Surround
// @name:ko 유튜브 서라운드
// @name:zh-CN 简单YouTube环境
// @namespace https://github.com/KBluePurple/youtube-delay
// @supportURL https://github.com/KBluePurple/youtube-delay/issues
// @version 0.2
// @description Makes the youtube sound more surrounded ( It's better when you listen to music )
// @description:ko 조금 더 서라운드를 느낄 수 있도록 해줍니다. ( 노래를 들을 때 더 좋음 )
// @description:zh-CN 让您再感受一点环绕感。 (听歌的时候更好)
// @author KBluePurple
// @match https://www.youtube.com/*
// @match https://music.youtube.com/*
// @match https://m.youtube.com/*
// @match https://www.youtube-nocookie.com/*
// @license MIT
// @icon none
// @grant none
// ==/UserScript==
(function() {
'use strict';
const context = new AudioContext();
const video = document.querySelector("#movie_player > div.html5-video-container > video");
const source = context.createMediaElementSource(video);
const splitter = context.createChannelSplitter(2);
const merger = context.createChannelMerger(2);
const leftDelay = context.createDelay();
const rightDelay = context.createDelay();
leftDelay.delayTime.value = 0;
rightDelay.delayTime.value = 0.01;
source.connect(splitter);
splitter.connect(leftDelay, 0);
splitter.connect(rightDelay, 1);
leftDelay.connect(merger, 0, 0);
rightDelay.connect(merger, 0, 1);
merger.connect(context.destination);
})();