Repository URL to install this package:
|
Version:
1.3.0 ▾
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div id="main"></div>
<script>
(function(root) {
const loadAppScript = function(src){
const appScript = document.createElement('script');
appScript.src = src;
document.body.appendChild(appScript);
}
if(typeof(require) === 'undefined') return loadAppScript('bundle.js');
let remote = null;
try {
remote = require('electron').remote;
} catch(err) {
return loadAppScript('bundle.js');
}
const config = remote.require('config');
let playbackTimeout = null;
let stopPlayback = true;
const revPlay = function() {
this.playbackRate = 1;
clearTimeout(playbackTimeout);
if(this.currentTime === 0 || stopPlayback) {
clearTimeout(playbackTimeout);
//this.pause();
} else {
this.currentTime += -.5;
setTimeout(revPlay.bind(this), 80);
}
};
const play = function() {
const media = document
.querySelectorAll('audio,video');
const src = media[0];
stopPlayback = true;
clearTimeout(playbackTimeout);
src.play();
};
const stop = function() {
const media = document
.querySelectorAll('audio,video');
const src = media[0];
stopPlayback = true;
clearTimeout(playbackTimeout);
src.playbackRate = 1;
src.pause();
};
const rew = function() {
const media = document
.querySelectorAll('audio,video');
const src = media[0];
stopPlayback = true;
};
const fwd = function() {
const media = document
.querySelectorAll('audio,video');
const src = media[0];
stopPlayback = true;
src.playbackRate = 2;
};
root.ffplay = play;
root.ffstop = stop;
root.fffwd = fwd;
root.ffrwd = rew;
require('electron').ipcRenderer
.on('pedal', (event, message) => {
const payload = JSON.parse(message);
console.log(payload.device.messages);
const media = document.querySelectorAll('audio,video');
if(media.length === 0) return;
payload.device.messages.forEach(function(msg) {
const src = media[0];
console.log(msg);
switch(msg) {
case 'play':
play();
break;
case 'stop':
stop();
break;
case 'rew':
rew();
break;
case 'fwd':
fwd();
break;
case 'fwdplay':
stopPlayback = false;
src.playbackRate = 2;
src.play()
break;
case 'rewplay':
stopPlayback = false;
src.play()
playbackTimeout = setTimeout(revPlay.bind(src), 80);
break;
}
});
});
return loadAppScript('bundle.js');
})(this)
</script>
</body>
</html>