From 306f96164784a8cbf405e72fa4364d6523366e95 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Mon, 5 May 2025 15:09:54 +0200 Subject: old dir --- bv1/codec-web/web/main.ts | 69 ----------------------------------------------- 1 file changed, 69 deletions(-) delete mode 100644 bv1/codec-web/web/main.ts (limited to 'bv1/codec-web/web/main.ts') diff --git a/bv1/codec-web/web/main.ts b/bv1/codec-web/web/main.ts deleted file mode 100644 index b1b1df7..0000000 --- a/bv1/codec-web/web/main.ts +++ /dev/null @@ -1,69 +0,0 @@ -/// - -import init, { decode_frame, decode_init } from "./codec_web.js" -console.log("init wasm"); -await init() -console.log("done"); - -index("..") - -async function index(url: string) { - const res = await fetch(url) - if (!res.ok) throw new Error("not ok"); - document.body.innerHTML = await res.text(); - const h1 = document.createElement("h1") - h1.textContent = "bv1 web player" - document.body.prepend(h1) - document.body.querySelectorAll("a").forEach(e => { - const u = url + "/" + e.textContent - e.onclick = ev => { - ev.preventDefault() - if (!u.endsWith(".bv1")) return alert("thats not bv1!") - document.body.innerHTML = "" - play(u.toString()) - } - }) -} - -async function play(url: string) { - decode_init(1920, 1080) - document.body.innerText = "downloading…" - const res = await fetch(url) - if (!res.ok) throw new Error("not ok"); - let buf: Uint8Array | undefined = new Uint8Array(await res.arrayBuffer()) - document.body.innerText = "" - - const canvas = document.createElement("canvas") - canvas.width = 1920 - canvas.height = 1080 - document.body.append(canvas) - document.body.style.backgroundColor = "#111" - const ctx = canvas.getContext("2d")! - let debug = false; - - document.body.addEventListener("keydown", ev => { - if (ev.code == "KeyD") debug = !debug; - }) - - setInterval(() => { - const frame = decode_frame(buf ?? new Uint8Array(), debug); - buf = undefined - - const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height); - const data = imageData.data; - - for (let y = 0; y < 1080; y++) { - for (let x = 0; x < 1920; x++) { - const ti = (x + y * 1920) * 4; - const si = (x + y * 1920) * 3; - data[ti + 0] = frame[si + 0] - data[ti + 1] = frame[si + 1] - data[ti + 2] = frame[si + 2] - data[ti + 3] = 255 - } - } - - ctx.putImageData(imageData, 0, 0); - - }, 1000 / 30) -} -- cgit v1.2.3-70-g09d2