A combination of .flac and .cue files is a highly popular format in backing up or sharing music. It is especially suitable for creating backups of your music collection, as it offers 100% original sound quality, unlike the MP3/AAC/OGG formats. The .flac audio files are typically accompanied by a .cue file, which is used to store the CD track layout information. Handling these files however can sometimes be a bit tricky, especially on the Linux platform.
FLAC (Free Lossless Audio Codec, .flac) is a codec (compressor-decompressor or coder-decoder) which allows digital audio to be losslessly compressed such that file size is reduced without any information being lost. Digital audio compressed by FLAC’s algorithm can typically be reduced to 50–60% of its original size, and decompressed into an identical copy of the original audio data.
A cue sheet, or .cue file, is a metadata file which describes how the tracks of a CD are laid out. Cue sheets are stored as plain text files and commonly have a “.cue” filename extension. CDRWIN software first introduced the cue sheets, which are now supported by many optical disc authoring applications and media players.
Exact Audio Copy (EAC) is a proprietary but free to use CD ripping program for Microsoft Windows. It has also been tested to work under newer versions of Wine on Linux. This program was created by Andre Wiethoff in 1998, stating he became “fed up with other audio grabbers”, and decided to develop his own.
Whats the problem?
While EAC is an excellent audio ripper, it produces cue sheet files (.cue) that are non-compliant, as they include more additional metadata about the audio disc than the .cue sheet file format was originally specified for.
How to record .flac files in combination with a non-compliant .cue sheet to a CD?
On Windows side, there are several good solutions to achieve this. The Linux users are less lucky, as no native Linux application that I am aware of can handle these perfectly. Therefore Wine must be used for Windows emulation.
Best Option: Use Exact Audio Copy
The EAC has a CD recording functionality, and it can obviously handle it’s own non-compliant .cue sheet format. EAC is also one of the very few CD-recording apps where a write off-set can be defined, which is needed for 100% bit perfect copies of the original audio CD.
- Download and install EAC
- Go through it’s setup wizard process, and use AccurateRip feature to get correct read and write offsets for your drive
- EAC cannot decode .flac files while recording, so you must decompress them first.
- Also check using a text editor that the .cue sheet refers to songs in .wav format and not to .flac files - if it does, just modify the sheet replasing “.flac” entries with “.wav”.
- Click on Tools-menu and Write CD-R, open your .cue file and burn!
Additional preparation steps on Linux:
- Before attempting to install EAC, install the Wine to provide Windows compatibility.
- Check in Wine configuration that your CD-recorder is included under Drivers.
- Before attempting to launch EAC, open your Terminal window and enter the following commands:
$ cd ~/.wine/drive_c/Program\ Files\ (x86)/Exact\ Audio\ Copy/
$ regsvr32 sql*
Alternative methods for Windows and Linux:
ImgBurn is a great disc recording application for Windows that also partially works on Wine. It is very good at handling .cue sheets generated by EAC and can decode .flac files on the fly, using a DireDirectShow filter.
Cons: DirectShow decoding of .flac files does not work on Wine. You must decode the files beforehand and make sure that the .cue sheet points to .wav files instead of .flac (Linux only). You cannot define the write offset in ImgBurn, so your resulting copy is not 100% bit perfect
An old freeware application Burrrn is able to handle (most) .cue sheets and decode .flac files on the fly. Using Burrrn is more straight forward than EAC, as the a .cue sheet that points to the .flac files can be used, without decoding the files first. Burrrn also installs and works under Wine perfectly without additional configuration steps.
Cons: You cannot define the write offset in Burrrn, so your resulting copy is not 100% bit perfect. Also I have seen some .cue files that Burrrn is unable to handle.
This guide deliberately does not cover all the details of these applications, as there are already a lot of well written guides on the topic (but also bad ones).