Save FLAC with Tags πΆ
The One I'd Actually Archive With πΆ
- audio
- cover_image
- audio
- file_path
If you generate music locally and keep any of it, Save FLAC with Tags πΆ is the node from the comfy-audio-tagger pack you should actually build your workflow around. FLAC is lossless - the file is a bit-exact copy of what your model produced, no encoder deciding which frequencies to throw away - and its Vorbis-comment tagging is the standard every modern player reads. MP3 is for shipping to people; FLAC is for keeping the master.
Same wall of fields, different payoffs
The input schema is shared across all five save nodes in this pack: audio in, then the tag fields. Fill the ones that matter:
filename_prefix- defaultaudio/ComfyUI_FLAC, subfolders auto-created underoutput/. This one writesoutput/audio/ComfyUI_FLAC_00001.flac.commentandlyrics- both multiline, and this is the pair that makes the pack worth it. Drop your full generation prompt, seed, and settings into the comment. Two years from now the file still tells you exactly how it was made.license- the CC dropdown. For music you might actually distribute, embedding "CC0 1.0" or "CC-BY 4.0" in the file itself beats hoping whoever you send it to reads the chat message.cover_image- optional IMAGE input, JPEG-compressed and embedded as a proper FLAC picture block. Most players render it as the album art.
Outputs are audio (the original signal passed through untouched, so you can keep wiring into Preview Audio) and file_path, which feeds this pack's Read Audio Tags π or Send Audio to Telegram βοΈ nodes.
What happens under the hood
Encode with torchaudio.save(format="flac") - FLAC is natively supported by torchaudio, so unlike MP3 or M4A this one doesn't lean on an FFmpeg backend, and you won't hit the "silently passed through unsaved" failure those nodes have. Then mutagen opens the file and writes Vorbis comments (TITLE, ARTIST, BPM, INITIALKEY, LICENSE, LYRICS, the works). One nice detail in the source: torchaudio's FLAC writer can leave a stray ID3 header behind, so the node explicitly deletes that dirty tag before writing the clean Vorbis set. That's the kind of attention to format hygiene you'd expect from a tagging tool and usually don't get.
Because FLAC and OGG both use Vorbis comments, the tagging logic is nearly identical between them - but the cover-art embedding is different per container, and this node does it the standard way (a binary Picture block in the FLAC file, versus OGG's base64 metadata_block_picture).
The one real complaint
File size. Lossless on a multi-minute generated track is going to eat disk space at roughly 10 MB per minute of stereo music, and there's no way around that - it's the price of lossless. If you're batch-generating hundreds of tracks for a playlist you'll listen to on a phone, you may genuinely prefer the MP3 node. If you're keeping a library or sending a master into a video project, the disk cost is worth it.
Install
Same as every node in the pack - it's one small custom node set with a single dependency:
cd ComfyUI/custom_nodes
git clone https://github.com/lakeconstance78/comfy-audio-tagger
cd comfy-audio-tagger
pip install -r requirements.txt # Windows portable: ..\..\..\python_embeded\python.exe -m pip install -r requirements.txt
or search "ComfyUI Audio Tagger" in ComfyUI Manager. Restart, and add audio β Save FLAC with Tags to the end of your music workflow. For an archive you intend to keep, this is the node in the pack to reach for - the only reason to pick another format is if the destination demands it.
Inputs (20)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | β | |
| filename_prefix | STRING | audio/ComfyUI_FLAC | β |
| title | STRING | My Title | β |
| artist | STRING | My Artist | β |
| album | STRING | My Album | β |
| genre | STRING | My Genre | β |
| year | STRING | 2026 | β |
| publisher | STRING | My Publisher | β |
| copyright | STRING | My Copyright | β |
| composer | STRING | My Composer | β |
| album_artist | STRING | My Album Artist | β |
| bpm | STRING | 120 | β |
| initial_key | STRING | C maj | β |
| isrc | STRING | My ISRC | β |
| encoder | STRING | ComfyUI Audio Tagger | β |
| track_number | STRING | 1 | β |
| license | COMBO | CC-BY 4.0 (Attribution - Credit required) | 8 options: CC-BY 4.0 (Attribution - Credit required), CC0 1.0 (Public Domain - Free for any use), CC-BY-SA 4.0 (ShareAlike - Credit + adapt under same license), CC-BY-NC 4.0 (NonCommercial - Credit + no commercial use), CC-BY-NC-SA 4.0 (NonCom + ShareAlike - No commercial + adapt under same), CC-BY-ND 4.0 (NoDerivs - Credit + no modifications), +2 |
| comment | STRING | Generated with ComfyUI | β |
| lyrics | STRING | β | |
| cover_imageopt | IMAGE | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | β |
| file_path | STRING | β |