Files
fast-srt-subtitle/index.html
Wiwi Kuan 306d4a1cb3 Add files via upload
change rewind/forward to 3 sec.
2020-02-28 18:21:16 +08:00

109 lines
4.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<html>
<title>Fast and Dirty Captioner</title>
<head>
<meta charset="UTF-8">
<script src="p5.min.js"></script>
<script src="p5.sound.min.js"></script>
<script src="sketch.js"></script>
<script>
(function(a, b) {
if ("function" == typeof define && define.amd) define([], b);
else if ("undefined" != typeof exports) b();
else {
b(), a.FileSaver = {
exports: {}
}.exports
}
})(this, function() {
"use strict";
function b(a, b) {
return "undefined" == typeof b ? b = {
autoBom: !1
} : "object" != typeof b && (console.warn("Deprecated: Expected third argument to be a object"), b = {
autoBom: !b
}), b.autoBom && /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type) ? new Blob(["\uFEFF", a], {
type: a.type
}) : a
}
function c(b, c, d) {
var e = new XMLHttpRequest;
e.open("GET", b), e.responseType = "blob", e.onload = function() {
a(e.response, c, d)
}, e.onerror = function() {
console.error("could not download file")
}, e.send()
}
function d(a) {
var b = new XMLHttpRequest;
b.open("HEAD", a, !1);
try {
b.send()
} catch (a) {}
return 200 <= b.status && 299 >= b.status
}
function e(a) {
try {
a.dispatchEvent(new MouseEvent("click"))
} catch (c) {
var b = document.createEvent("MouseEvents");
b.initMouseEvent("click", !0, !0, window, 0, 0, 0, 80, 20, !1, !1, !1, !1, 0, null), a.dispatchEvent(b)
}
}
var f = "object" == typeof window && window.window === window ? window : "object" == typeof self && self.self === self ? self : "object" == typeof global && global.global === global ? global : void 0,
a = f.saveAs || ("object" != typeof window || window !== f ? function() {} : "download" in HTMLAnchorElement.prototype ? function(b, g, h) {
var i = f.URL || f.webkitURL,
j = document.createElement("a");
g = g || b.name || "download", j.download = g, j.rel = "noopener", "string" == typeof b ? (j.href = b, j.origin === location.origin ? e(j) : d(j.href) ? c(b, g, h) : e(j, j.target = "_blank")) : (j.href = i.createObjectURL(b),
setTimeout(function() {
i.revokeObjectURL(j.href)
}, 4E4), setTimeout(function() {
e(j)
}, 0))
} : "msSaveOrOpenBlob" in navigator ? function(f, g, h) {
if (g = g || f.name || "download", "string" != typeof f) navigator.msSaveOrOpenBlob(b(f, h), g);
else if (d(f)) c(f, g, h);
else {
var i = document.createElement("a");
i.href = f, i.target = "_blank", setTimeout(function() {
e(i)
})
}
} : function(a, b, d, e) {
if (e = e || open("", "_blank"), e && (e.document.title = e.document.body.innerText = "downloading..."), "string" == typeof a) return c(a, b, d);
var g = "application/octet-stream" === a.type,
h = /constructor/i.test(f.HTMLElement) || f.safari,
i = /CriOS\/[\d]+/.test(navigator.userAgent);
if ((i || g && h) && "undefined" != typeof FileReader) {
var j = new FileReader;
j.onloadend = function() {
var a = j.result;
a = i ? a : a.replace(/^data:[^;]*;/, "data:attachment/file;"), e ? e.location.href = a : location = a, e = null
}, j.readAsDataURL(a)
} else {
var k = f.URL || f.webkitURL,
l = k.createObjectURL(a);
e ? e.location = l : location.href = l, e = null, setTimeout(function() {
k.revokeObjectURL(l)
}, 4E4)
}
});
f.saveAs = a.saveAs = a, "undefined" != typeof module && (module.exports = a)
});
</script>
</head>
<body>
<p>用 Node 開 HTTP Server影片檔名取 video.mp4字幕文字檔 subs.txt每句分行放在同一資料夾。</p>
<p>K: 下一行開始 | L: 這一行提前結束 | I: 前捲一行 | O: 後捲一行 | U: 倒帶 3 秒 | P: 前進 3 秒 | Q: 製作 SRT 檔</p>
<p>K: Next Line | L: This Line Ends Early | I: Scroll Back | O: Scroll Forward | U: Rewind | P: Forward | Q: Make SRT File</p>
<p id="status">Test Text.</p>
<textarea id="textArea" rows="10" cols="80">預設的字。</textarea>
</body>
</html>