cobalt/web/src/routes/remux/+page.svelte

44 lines
1,007 B
Svelte
Raw Normal View History

<script lang="ts">
2024-08-12 18:06:45 +01:00
import LibAVWrapper from "$lib/libav";
import { openURL } from "$lib/download";
import DragDropArea from "$components/misc/DragDropArea.svelte";
import OpenFileButton from "$components/misc/OpenFileButton.svelte";
let draggedOver = false;
let file: File;
const render = async () => {
2024-08-12 18:06:45 +01:00
const ff = new LibAVWrapper();
await ff.init();
2024-08-12 18:06:45 +01:00
const render = await ff.render({
blob: file,
args: ["-c", "copy"],
});
if (render) {
openURL(URL.createObjectURL(render));
} else {
console.log("not a valid file")
}
};
$: if (file) {
render();
}
</script>
<DragDropArea id="remux-container" bind:draggedOver bind:file>
<OpenFileButton bind:draggedOver bind:file />
</DragDropArea>
<style>
:global(#remux-container) {
display: flex;
justify-content: center;
align-items: center;
width: 100%;
}
</style>