diff --git a/src/lib/converters/ffmpeg.svelte.ts b/src/lib/converters/ffmpeg.svelte.ts index 963b975..bfb8fc4 100644 --- a/src/lib/converters/ffmpeg.svelte.ts +++ b/src/lib/converters/ffmpeg.svelte.ts @@ -32,6 +32,7 @@ export class FFmpegConverter extends Converter { log(["converters", this.name], `created converter`); if (!browser) return; try { + // this is just to cache the wasm and js for when we actually use it. we're not using this ffmpeg instance this.ffmpeg = new FFmpeg(); (async () => { const baseURL = @@ -40,7 +41,6 @@ export class FFmpegConverter extends Converter { coreURL: `${baseURL}/ffmpeg-core.js`, wasmURL: `${baseURL}/ffmpeg-core.wasm`, }); - // this is just to cache the wasm and js for when we actually use it. we're not using this ffmpeg instance this.ready = true; })(); } catch (err) { diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 1555deb..206721f 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -11,17 +11,29 @@ import Uploader from "$lib/components/functional/Uploader.svelte"; import { converters } from "$lib/converters"; + import { vertdLoaded } from "$lib/store/index.svelte"; import { AudioLines, Check, Film, Image } from "lucide-svelte"; const getSupportedFormats = (name: string) => converters.find((c) => c.name === name)?.supportedFormats.join(", ") || "none"; - const supportedFormats = { - images: getSupportedFormats("libvips"), - audio: getSupportedFormats("ffmpeg"), - video: getSupportedFormats("vertd"), - }; + const status = $derived({ + images: { + ready: converters.find((c) => c.name === "libvips")?.ready, + formats: getSupportedFormats("libvips"), + }, + audio: { + ready: converters.find((c) => c.name === "ffmpeg")?.ready, + formats: getSupportedFormats("ffmpeg"), + }, + video: { + ready: + converters.find((c) => c.name === "vertd")?.ready && + $vertdLoaded, + formats: getSupportedFormats("vertd"), + }, + });
+ Status: + {status.images.ready ? "ready" : "not ready"} +
Supported formats: - {supportedFormats.images} + {status.images.formats}
+ Status: + {status.audio.ready ? "ready" : "not ready"} +
Supported formats: - {supportedFormats.audio} + {status.audio.formats}
@@ -107,7 +127,14 @@ >Learn more. -Supported formats: {supportedFormats.video}
++ Status: + {status.video.ready ? "ready" : "not ready"} +
++ Supported formats: + {status.video.formats} +