Overhaul Studio controls and add image batch from one still.

Video and Image pickers, thumbwheels, aspect icons, and a Scale to MP paddle; extra prompts default to batch so each run starts from the original image.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Towsty
2026-08-30 23:16:19 -05:00
co-authored by Cursor
parent 8df265cbf3
commit 755aaeede8
17 changed files with 791 additions and 233 deletions
+6
View File
@@ -37,6 +37,12 @@ export const IMAGE_SCALE_MP_MIN = 0.01
export const IMAGE_SCALE_MP_MAX = 16
export const IMAGE_SCALE_MP_STEP = 0.01
export const IMAGE_SCALE_MP_DEFAULT = 1
export const IMAGE_PASS_MODES = ['batch', 'chain'] as const
export type ImagePassMode = (typeof IMAGE_PASS_MODES)[number]
export function parseImagePassMode(raw: unknown): ImagePassMode {
return raw === 'chain' ? 'chain' : 'batch'
}
export const VIDEO_CFG_MIN = 0
export const VIDEO_CFG_MAX = 20
+1
View File
@@ -170,6 +170,7 @@ export type ImageV2PresetSettings = {
steps?: number
cfg?: number
megapixels?: number
scaleToTotalPixels?: boolean
turbo?: boolean
strength?: number
width?: number
+1 -1
View File
@@ -169,7 +169,7 @@ export function stillSettingsRows(still: { width?: number; height?: number; sett
if (settings.mode === 'refine' && settings.strength != null) {
rows.push({ label: 'Strength', value: formatNum(settings.strength) })
}
if (settings.mode !== 'generate' && settings.megapixels != null) {
if (settings.mode !== 'generate' && settings.scaleToTotalPixels !== false && settings.megapixels != null && settings.megapixels > 0) {
rows.push({ label: 'Scale to MP', value: formatNum(settings.megapixels) })
}
} else {