Add ACE-Step music generation to the studio and library.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -280,3 +280,34 @@ export function clipSettingsRows(clip: {
|
||||
if (loras) rows.push({ label: 'LoRA', value: loras })
|
||||
return rows
|
||||
}
|
||||
|
||||
export function trackSettingsRows(track: {
|
||||
tags?: string
|
||||
lyrics?: string
|
||||
duration?: number
|
||||
steps?: number
|
||||
seed?: number
|
||||
cfg?: number
|
||||
instrumental?: boolean
|
||||
engine?: string
|
||||
samplerName?: string
|
||||
scheduler?: string
|
||||
lyricsStrength?: number
|
||||
}) {
|
||||
const rows: SettingsRow[] = []
|
||||
if (track.engine) rows.push({ label: 'Engine', value: track.engine === 'ace-step-1.5' ? 'ACE-Step 1.5' : 'ACE-Step' })
|
||||
if (track.tags?.trim()) rows.push({ label: 'Tags', value: track.tags.trim() })
|
||||
if (track.instrumental) rows.push({ label: 'Instrumental', value: 'On' })
|
||||
else if (track.lyrics?.trim()) rows.push({ label: 'Lyrics', value: track.lyrics.trim() })
|
||||
if (typeof track.duration === 'number' && track.duration > 0) {
|
||||
const rounded = Math.round(track.duration * 10) / 10
|
||||
rows.push({ label: 'Duration', value: Number.isInteger(rounded) ? `${rounded}s` : `${rounded.toFixed(1)}s` })
|
||||
}
|
||||
if (track.steps != null) rows.push({ label: 'Steps', value: String(track.steps) })
|
||||
if (track.cfg != null) rows.push({ label: 'CFG', value: formatNum(track.cfg) })
|
||||
if (track.samplerName) rows.push({ label: 'Sampler', value: track.samplerName })
|
||||
if (track.scheduler) rows.push({ label: 'Scheduler', value: track.scheduler })
|
||||
if (track.lyricsStrength != null) rows.push({ label: 'Lyric strength', value: formatNum(track.lyricsStrength) })
|
||||
if (track.seed != null) rows.push({ label: 'Seed', value: String(track.seed) })
|
||||
return rows
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user