Add extension-frame refine and lossless anchor options.
Prefer clip anchor PNGs for handoffs, optionally run Bilateral+Flux cleanup before I2V, and save decoded last-frame anchors so sequential extensions accumulate less compression damage. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -69,6 +69,9 @@ export interface StudioJobPayload {
|
||||
maskStillFilename?: string
|
||||
refineStrength?: number
|
||||
extendFromClipId?: string
|
||||
refineExtensionFrame?: boolean
|
||||
saveLosslessAnchor?: boolean
|
||||
refinementDenoise?: number
|
||||
lyrics?: string
|
||||
instrumental?: boolean
|
||||
lyricsStrength?: number
|
||||
@@ -1156,7 +1159,10 @@ async function startStudioExtendJob(item: StudioJob) {
|
||||
duration: item.payload.duration,
|
||||
loraStack: item.payload.loraStack || item.payload.loraName,
|
||||
folderLocked: item.payload.folderLocked,
|
||||
name: item.payload.name || item.name
|
||||
name: item.payload.name || item.name,
|
||||
refineExtensionFrame: item.payload.refineExtensionFrame,
|
||||
saveLosslessAnchor: item.payload.saveLosslessAnchor,
|
||||
refinementDenoise: item.payload.refinementDenoise
|
||||
})
|
||||
await markStudioLive(item.ownerKey, item.id, live.id)
|
||||
} catch (error) {
|
||||
@@ -1294,6 +1300,9 @@ export async function startStudioJob(item: StudioJob) {
|
||||
useIdentityRefs: identity,
|
||||
queueAutoRun: extensions.length ? payload.queueAutoRun : false,
|
||||
queueBudget: extensions.length && payload.queueAutoRun ? extensions.length : 0,
|
||||
refineExtensionFrame: payload.refineExtensionFrame !== false,
|
||||
saveLosslessAnchor: payload.saveLosslessAnchor === true,
|
||||
refinementDenoise: payload.refinementDenoise,
|
||||
globalLocks: payload.globalLocks,
|
||||
permanenceRefs: payload.permanenceRefs,
|
||||
shotPermanenceRefs: payload.shotPermanenceRefs,
|
||||
|
||||
Reference in New Issue
Block a user