// ==UserScript==
// @name html5 video speed controller (vlc like)
// @namespace github.com/sky-bro
// @version 1.0.0
// @description Simple html5 video speed control with '{', '}', and '=' (vlc like). '{': decrease by 0.1, '}': increase by 0.1, '=': back to 1.0x
// @author https://sky-bro.github.io
// @match https://www.youtube.com/*
// @match *://*.zhihuishu.com/*
// @grant none
// @downloadURL none
// ==/UserScript==
(function() {
'use strict';
window.addEventListener('keypress', function(event) {
var player = document.querySelector("video");
console.log(event);
var curRate = Number(player.playbackRate);
// vlc actually uses '[' and ']', but they are used by vimium
if (event.key == "{") {
console.log("{ pressed");
curRate -= 0.1;
player.playbackRate = (curRate < 0.1) ? 0.1 : curRate;
} else if (event.key == "}") {
console.log("} pressed");
curRate += 0.1;
player.playbackRate = (curRate > 10) ? 10 : curRate;
} else if (event.key == "=") {
console.log("= pressed");
player.playbackRate = 1;
}
console.log("playing in %sx", (player.playbackRate).toFixed(1));
});
})();