Spaces:
Runtime error
Runtime error
| <script lang="ts"> | |
| import { lcmLiveStatus, LCMLiveStatus, streamId } from '$lib/lcmLive'; | |
| import { getPipelineValues } from '$lib/store'; | |
| import Button from '$lib/components/Button.svelte'; | |
| import Floppy from '$lib/icons/floppy.svelte'; | |
| import { snapImage } from '$lib/utils'; | |
| $: isLCMRunning = $lcmLiveStatus !== LCMLiveStatus.DISCONNECTED; | |
| $: console.log('isLCMRunning', isLCMRunning); | |
| let imageEl: HTMLImageElement; | |
| async function takeSnapshot() { | |
| if (isLCMRunning) { | |
| await snapImage(imageEl, { | |
| prompt: getPipelineValues()?.prompt, | |
| negative_prompt: getPipelineValues()?.negative_prompt, | |
| seed: getPipelineValues()?.seed, | |
| guidance_scale: getPipelineValues()?.guidance_scale | |
| }); | |
| } | |
| } | |
| </script> | |
| <div | |
| class="relative mx-auto aspect-square max-w-lg self-center overflow-hidden rounded-lg border border-slate-300" | |
| > | |
| <!-- svelte-ignore a11y-missing-attribute --> | |
| {#if isLCMRunning} | |
| <img | |
| bind:this={imageEl} | |
| class="aspect-square w-full rounded-lg" | |
| src={'/api/stream/' + $streamId} | |
| /> | |
| <div class="absolute bottom-1 right-1"> | |
| <Button | |
| on:click={takeSnapshot} | |
| disabled={!isLCMRunning} | |
| title={'Take Snapshot'} | |
| classList={'text-sm ml-auto text-white p-1 shadow-lg rounded-lg opacity-50'} | |
| > | |
| <Floppy classList={''} /> | |
| </Button> | |
| </div> | |
| {:else} | |
| <img | |
| class="aspect-square w-full rounded-lg" | |
| src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" | |
| /> | |
| {/if} | |
| </div> | |