Drop ACE and YuEGP defaults from studio music queue and library labels.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -166,17 +166,12 @@ function sanitizeImageV2Settings(raw: unknown): ImageV2PresetSettings {
|
|||||||
|
|
||||||
function sanitizeMusicSettings(raw: unknown): MusicPresetSettings {
|
function sanitizeMusicSettings(raw: unknown): MusicPresetSettings {
|
||||||
const rec = raw && typeof raw === 'object' ? raw as Record<string, unknown> : {}
|
const rec = raw && typeof raw === 'object' ? raw as Record<string, unknown> : {}
|
||||||
const instrumental = rec.instrumental === true
|
|
||||||
return {
|
return {
|
||||||
tags: sanitizeMusicTags(rec.tags),
|
tags: sanitizeMusicTags(rec.tags),
|
||||||
lyrics: sanitizeMusicLyrics(rec.lyrics, instrumental),
|
lyrics: sanitizeMusicLyrics(rec.lyrics, false),
|
||||||
instrumental,
|
|
||||||
duration: clampMusicDuration(rec.duration),
|
duration: clampMusicDuration(rec.duration),
|
||||||
steps: clampMusicSteps(rec.steps),
|
|
||||||
seed: typeof rec.seed === 'number' && Number.isFinite(rec.seed) ? Math.max(0, Math.floor(rec.seed)) : undefined,
|
seed: typeof rec.seed === 'number' && Number.isFinite(rec.seed) ? Math.max(0, Math.floor(rec.seed)) : undefined,
|
||||||
cfg: rec.cfg == null ? undefined : clampMusicCfg(rec.cfg),
|
engine: 'yue2'
|
||||||
engine: parseMusicEngine(rec.engine),
|
|
||||||
...(parseMusicEngine(rec.engine) === 'yue' ? { yueProfile: rec.yueProfile === 3 ? 3 as const : 1 as const } : {})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -923,7 +923,7 @@ function repairStaleJobs(jobs: StudioJob[]) {
|
|||||||
job.updatedAt = Date.now()
|
job.updatedAt = Date.now()
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if (!job.payload.upscale && job.payload.musicEngine !== 'yue' && job.payload.musicEngine !== 'yue2' && job.status === 'error' && isTransientComfyError(job.lastError)) {
|
if (!job.payload.upscale && job.kind !== 'music' && job.status === 'error' && isTransientComfyError(job.lastError)) {
|
||||||
job.status = 'waiting'
|
job.status = 'waiting'
|
||||||
job.liveJobId = undefined
|
job.liveJobId = undefined
|
||||||
job.lastError = undefined
|
job.lastError = undefined
|
||||||
@@ -932,7 +932,7 @@ function repairStaleJobs(jobs: StudioJob[]) {
|
|||||||
job.updatedAt = Date.now()
|
job.updatedAt = Date.now()
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if (!job.payload.upscale && job.payload.musicEngine !== 'yue' && job.payload.musicEngine !== 'yue2' && job.status === 'held' && isTransientComfyError(job.lastError)) {
|
if (!job.payload.upscale && job.kind !== 'music' && job.status === 'held' && isTransientComfyError(job.lastError)) {
|
||||||
job.status = 'waiting'
|
job.status = 'waiting'
|
||||||
job.liveJobId = undefined
|
job.liveJobId = undefined
|
||||||
job.lastError = undefined
|
job.lastError = undefined
|
||||||
@@ -1407,8 +1407,7 @@ async function startStudioMusicJob(item: StudioJob) {
|
|||||||
lyricsStrength: payload.instrumental ? 0 : (payload.lyricsStrength ?? 0.9),
|
lyricsStrength: payload.instrumental ? 0 : (payload.lyricsStrength ?? 0.9),
|
||||||
instrumental: payload.instrumental === true,
|
instrumental: payload.instrumental === true,
|
||||||
folderLocked: payload.folderLocked,
|
folderLocked: payload.folderLocked,
|
||||||
engine: payload.musicEngine || 'ace-step',
|
engine: 'yue2',
|
||||||
yueProfile: payload.yueProfile ?? 1,
|
|
||||||
samplerName: payload.samplerName || 'euler',
|
samplerName: payload.samplerName || 'euler',
|
||||||
scheduler: payload.scheduler || 'simple'
|
scheduler: payload.scheduler || 'simple'
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -5,14 +5,10 @@ import type { ImageV2PresetSettings } from '~/utils/imageV2'
|
|||||||
export type GenerationPresetKind = 'video' | 'image' | 'imagev2' | 'music'
|
export type GenerationPresetKind = 'video' | 'image' | 'imagev2' | 'music'
|
||||||
|
|
||||||
export type MusicPresetSettings = {
|
export type MusicPresetSettings = {
|
||||||
yueProfile?: 1 | 3
|
|
||||||
tags?: string
|
tags?: string
|
||||||
lyrics?: string
|
lyrics?: string
|
||||||
instrumental?: boolean
|
|
||||||
duration?: number
|
duration?: number
|
||||||
steps?: number
|
|
||||||
seed?: number
|
seed?: number
|
||||||
cfg?: number
|
|
||||||
engine?: import('~/utils/music').MusicEngine
|
engine?: import('~/utils/music').MusicEngine
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -299,9 +299,18 @@ export function trackSettingsRows(track: {
|
|||||||
}) {
|
}) {
|
||||||
const rows: SettingsRow[] = []
|
const rows: SettingsRow[] = []
|
||||||
if (track.engine) {
|
if (track.engine) {
|
||||||
|
const engine = String(track.engine)
|
||||||
rows.push({
|
rows.push({
|
||||||
label: 'Engine',
|
label: 'Engine',
|
||||||
value: track.engine === 'ace-step-1.5' ? 'ACE-Step 1.5' : track.engine === 'yue' ? 'YuE' : 'ACE-Step'
|
value: engine === 'yue2' || engine === 'yue-2'
|
||||||
|
? 'YuE2'
|
||||||
|
: engine === 'ace-step-1.5'
|
||||||
|
? 'ACE-Step 1.5 (legacy)'
|
||||||
|
: engine === 'yue'
|
||||||
|
? 'YuE (legacy)'
|
||||||
|
: engine.startsWith('ace')
|
||||||
|
? 'ACE-Step (legacy)'
|
||||||
|
: engine
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
if (track.tags?.trim()) rows.push({ label: 'Tags', value: track.tags.trim() })
|
if (track.tags?.trim()) rows.push({ label: 'Tags', value: track.tags.trim() })
|
||||||
|
|||||||
Reference in New Issue
Block a user