Moving from AIFF to FLAC

My main Roon library has all PCM files in AIFF. This is the vast majority of my local content. This library has been painstakingly curated over many years, mostly in the realm of grouping album versions together (eg a local PCM album and TIDAL and Qobuz versions).

I happen to have a duplicate local library where all AIFF files are in FLAC format. Same files, transcoded with XLD over the years. I did it once to consider moving to FLAC but never actually moved. However, I maintain the content the same, so if I rip a CD or buy a download, I make sure to have a FLAC version of it, with the same directory structure, etc.

Question: Is there a way to move all my Roon content from an AIFF file version to a FLAC file version, or will I inevitably loose all the curation I have done?


You could manually merge the flac with the aiff versions, make the flac primary, then either hide the aiff duplicates or delete them, given you’re not preferring file meta data over Roon’s.

Drag drop the .flac album folder over the .aiff album folder to replace it. As the album is already in the database, the filenames will be updated, but keep your curation. Roon will still notice that the .aiff files are missing, so goto settings > library and ‘clean up library’ to remove the orphaned filenames.

Sure, but why? FLAC is just as bit-perfect, so no need to keep both :wink:

Yes, why do you want to change?

AIFF is effectively WAV with metadata - ‘in theory’ and on PCs at least, AIFF/WAV doesn’t require as much processor power as FLAC. Now storage is so cheap, any compression isn’t really necessary IMO

I always buy AIFF from the likes of Bandcamp


ADD a FOLDER with Flac and disable the AIFF folder; still there but Roon won’t see it. Easy to reverse process…

I migrated from AIFF to FLAC in 2015. I ended up re-ripping all the optical discs over a few months when time allowed.

I hope you don’t end up with a backlog of reconciling the curation you did.

I have a couple of thousand albums.

Ok so this is similar to what I wanted the result to be: I would restore the Roon db which has the AIFF data onto a disc that has the same exact file locations (but obviously not file types, ie different extensions) and hope Roon realizes it is the same album. It is unclear whether this would work at all but can give it a try.

Just size. Running out of space. Yes, storage is cheap. I initially chose AIFF because I am on mac - AIFF plays nicely with macs, I started re-ripping all my CDs in 2013. At the time there was talk about WAV/AIFF sounding better than FLAC. I am not sure whether this is the case or not. Regardless, for these two reasons I use AIFF.

It will not work.

I just tested (but in the other direction, i.e. FLAC → AIFF)

Indicated in Green: changes I made in Roon

Disabled Storage

Replaced Music folders (2) with same but converted to AIFF
Re-enabled realtime watching:

All my updates are gone.

1 Like

Correct. Different file types, sizes, and dates equal different album imports.


there was a time when I felt AIFF sounded better than FLAC, but this was before Macs had native FLAC support. most hardware today will decode FLAC natively, so the old argument probably no longer holds true. same with processing power.

still, I have a large AIFF library, and feel no need to convert. I don’t think I’d gain anything, certainly no improvement in SQ.

The easiest way to convert your existing AIFF files to FLAC, is using the command-line, i.e., FFmpeg or FLAC. This is available for Linux, macOS, and Windows.

for i in *.aiff; do flac "$i" "$(basename "${i/.aiff}")".flac; done

# FFmpeg
for i in *.aiff ; do ffmpeg -i "$i" "$(basename "${i/.aiff}")".flac; done

These examples should work with macOS, and will not remove the original files. However, this isn’t recursive, so you’ll need something like the script below, which also removes the original file. However, this may not work with macOS.


for filepath in ~/Music/**/*.aiff
    filename=$(basename "$filepath" .aiff) 
    mv $filepath "$directory/$filename.tmp"
    flac --verify --decode-through-errors --preserve-modtime --compression-level-0 --verify --delete-input-file --force --output-name="$filepath" "$directory/$filename.tmp"    

The options create non-compressed FLAC files, and preserve the original file modification time, so it shouldn’t affect your library import date. Always check using copies of sample files first, and have a backup. It may work with BASH, but I haven’t tested this.

1 Like

This is very useful. I created my initial FLAC version of my library this way. Then the incremental transcoding as I add albums is done with XLD.

Pardon my off topic although somewhat related question. I collect live music and also have a large collection of commercial recordings as well. I have always curated the metadata for each, album, show, song etc. on the files themselves using an editor. That way it doesn’t really matter where I use them. I guess my question is how do you “curate” in Roon in such a way that you would lose it? I’m curious, I might be missing a way to organize!
Thanks, and I’ll take this elsewhere if it’s to OT. . .

You can edit metadata in Roon but this doesn’t get written to the files and is saved only in the Roon database.


Thank you. I’ll stick to my editor and save to the files themselves. Appreciate the info, thanks again!!

1 Like

I do this as well, as completely as possible. I rip CDs (with XLD on mac) and SACDs (Sony DVD player with hack to rip DSF files) and curate the metadata carefully with Yate - even adding WORK and PART to the files for Roon to group properly. I even check that the file metadata on my download purchases to make sure they are correct (I have my rules for Album Artists, etc).

The curation that happens in Roon exclusively, which I am trying to preserve, is mostly album groupings and primary album in those groupings. You cannot do this in the file metadata.

Correct. I edit all data that really belongs in the files via Yate on mac. The part that is not editable there is album groupings. For example: Group my local album with Qobuz and TIDAL versions, choose the primary album, possibly tweak the artwork shown in my local version (sometimes the album art picked by Roon is not what I want and I prefer the one in the files that I put in).