Nodes/ComfyUI-SongLRC/Song Filename (legacy)
ComfyUI Node

Song Filename (legacy)

The old name for a node that's still doing the work

By TheAwaken1·Created 22 days ago·Updated 17 days ago· 6
Song Filename (legacy)
    • filename_prefix
    • safe_title
    ◄title►
    ◄folderaudio/songs►
    ◄lyrics—►

    MiniMaxSongFilename is the deprecated alias for SongFilename - the same class, kept under the pack's old name so workflows saved back when this was ComfyUI-MiniMaxLRC don't explode into red boxes. If you've got a song graph from 2025 open on your screen, this is the node that's building your filename prefix, and it's working fine.

    What it produces

    It turns a title into a path stem, so the audio file and the lyric file end up with the same name. Two required widgets:

    • title - the song title. Blank means "derive one from the lyrics".
    • folder - the subfolder inside ComfyUI's output directory. Default audio/songs.

    Plus an optional lyrics input, used only when title is blank.

    Two string outputs: filename_prefix (audio/songs/Hold The Line Tonight) and safe_title (Hold The Line Tonight). Wire the prefix into Save Audio (Advanced) and into one of the two LRC savers; the five-digit counter is appended downstream, never here.

    The title gets sanitised on the way through - illegal filename characters (<>:"/\|?*, control codes) become spaces, whitespace collapses, leading/trailing dots and dashes are trimmed, and it's capped at 80 characters with Generated Song as the empty fallback.

    The one behavioural difference from the new node

    The default folder changed when the pack was renamed. MiniMaxSongFilename in a freshly created node defaults to audio/songs too, because it inherits the modern class - but a workflow saved under the old pack has its own value stored in the JSON, and that value is usually audio/YuE2. Nothing rewrites it on load.

    So the failure looks like this: you update the pack, run an old graph, and the song lands in output/audio/YuE2/ while everything else in your library is in output/audio/songs/. Fix is one click - set folder to audio/songs on the node and re-save the workflow. The README flags this exact change, and it's the only old default anyone trips over.

    Swap it or keep it

    Keeping it costs you nothing today. Swapping it takes a right-click: Fix node (recreate) on the node, and it comes back as SongFilename with identical outputs (filename_prefix, safe_title) and identical widget values, so the wires downstream reconnect and the folder setting survives. That's worth doing if you'll keep the workflow around - the live class is the one that gets new options.

    Note that you can't add a legacy node intentionally. Deprecated class names are hidden from the node search menu, which is deliberate: the pack wants newcomers to find "Song Filename", not its ancestor.

    Install

    Manager → search ComfyUI-SongLRC, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/TheAwaken1/ComfyUI-SongLRC
    pip install -r ComfyUI-SongLRC/requirements.txt
    

    Then remove the old ComfyUI-MiniMaxLRC directory. Both packs claim these class names, and leaving them side by side is how you get duplicate registration warnings and, occasionally, the wrong implementation winning. Delete the old folder after the new pack is installed and the workflow saved, so the aliases cover the gap while you convert.

    Categoryaudio/SongLRC

    Inputs (3)

    NameTypeDefaultDescription
    titleSTRINGLeave blank to derive a title from the lyrics.
    folderSTRINGaudio/songsSubfolder inside ComfyUI's output directory.
    lyricsoptSTRINGUsed to derive a title when the title field is blank.

    Outputs (2)

    NameTypeDescription
    filename_prefixSTRING—
    safe_titleSTRING—