Spaces:
Running
Running
File size: 1,056 Bytes
3d4392e 0d218b1 3d4392e 6215321 3d4392e 6215321 3d4392e 6215321 3d4392e 6215321 3d4392e 6215321 09a7c47 6215321 3d4392e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
"use client"
import { ClapProject, ClapSegment } from "@aitube/clap"
import { generateImage } from "./generateImage"
import { LayerElement } from "../../core/types"
import { useStore } from "@/app/state/useStore"
export async function resolve(segment: ClapSegment, clap: ClapProject): Promise<LayerElement> {
const { prompt } = segment
let assetUrl = ""
try {
// console.log(`resolveImage: generating video for: ${prompt}`)
assetUrl = await generateImage({
prompt,
width: clap.meta.width,
height: clap.meta.height,
token: useStore.getState().jwtToken,
})
// console.log(`resolveImage: generated ${assetUrl}`)
} catch (err) {
console.error(`resolveImage failed (${err})`)
return {
id: segment.id,
element: <></>
}
}
// note: the latent-image class is not used for styling, but to grab the component
// from JS when we need to segment etc
return {
id: segment.id,
element: <img
className="latent-image object-cover h-full"
src={assetUrl}
/>
}
} |