CuEd - a free online cuesheet editor

You can try the functions of the cuesheet editor right now by opening a demo cuesheet. Feel free to play around with all the options to get a feeling for the possibilities.

Or you can go on and read the following introduction into cuesheets and this editor. I'll mention the "foobar" player frequently: see the recommended software section near the bottom of the page.

Index

What are cuesheets?

Cuesheets are text files with meta information on soundfiles, for playback via software or for burning CDs. Cuesheets can be created manually, or they are genrated when a CD gets "ripped", i. e. the audio data are extracted from the CD to a computer.

A CD rip that is just intended for making a CD copy mostly doesn't need any editing. But if the sound data are to be stored on another medium, e. g. a USB stick or an external hard disc, for playback with a software player, then one might wish to adjust the displayed information, like track titles or performers to one's own preferences.

Using cuesheets for playback in suitable players allows to play different tracks from one single soundfile without needing to split it into parts.

The structure of cuesheets is quite simple and easy to understand and easy to edit manually. But when a lot of changes has to be made, or if the cuesheet has many tracks, then work gets tedious and error prone, and a special cuesheet editor is useful for the task.

Cuesheets as playlists vs. tagged files

You can also create a playlist kind of cuesheet with CuEd, if you enter a list of soundfile paths into the track titles edit area and then click "Files → playlist". This creates a track for each file and uses the file name as track title - stripped of path and file extension. If there was text in the cuesheet edit area before it is replaced by the newly created cuesheet. The given file paths should be relative to the location at which you want to store the cuesheet. So, if you want to store your cuesheet in the same folder as the soundfiles, there should be no path at all, just the file names.

If you use cuesheets as playlists there might be a surprise: Whatever you write into the cuesheet, the player display remains unchanged and differs from your cuesheet data. In this case there are meta data, "tags", embedded within the soundfiles, and the player gives these precedence over the cuesheet.

By removing all meta data from the soundfile (which can be done in some players, e. g. foobar, or with specialised software), you can make sure the player uses the cuesheet data for display. Many people prefer to have the meta data within the soundfiles, so they can't get lost. I prefer the opposite, to be able to change things without fiddling with the soundfiles themselves. This way you can also have different "views" upon a set of soundfiles, just by adding a new cuesheet.

When you change tagging within a soundfile I recommend to keep a copy of the original files, until you are sure you got all the information you need transferred to the cuesheet. An easy way to copy track titles out of tags is to open the set of soundfiles in the player and to copy the tracktitles to the clipboard (e. g. with the foobar player).

Embedded cuesheets

Especially with the lossless, compressed soundfile format "flac" you can also have a cuesheet embedded within the soundfile, which needs to be removed to let an external cuesheet determine the display. If you can't get rid of some meta data from losslessly compressed soundfiles you can uncompress them, e. g. with foobar, to get a "clean", uncompressed "wav" file plus a cuesheet, which you can then edit to your liking.

CuEd features

Most of the editor functions are good for general use, some though were made specifically for modifying classical music titles.

  • Cuesheet edit area. Cuesheets can be imported via loading files or via copy and paste.
  • Supported character encodings for loading Cuesheet files are UTF-8 (default, all languages), Latin-1 (ISO-8859-1), common for Western European languages, including English, and Cyrillic (Windows cp1251 / ISO-8859-5 / MacCyrillic), which is common for Russian. When text is inserted via copy and paste the browser converts the text to UTF-8 automatically, and mostly it guesses the encoding correctly. This way texts with other than the above mentioned encodings can also be entered.
  • Track titles edit area. This allows to import the track titles from one coherent text without the need to enter each title separately at the respective position within the cuesheet. Also useful when you use a list of track titles from other sources.
  • File list to playlist. A playlist like cuesheet can be generated out of a list of file paths, with automatic track title naming according to the files.
  • Compact track titles. Optional removal of redundant parts of track titles of works with several movements. (See demo cuesheet.)
  • De-numbering. Unwanted numbering (including some punctuation) can be removed from the beginnings of track titles.
  • Translation of musical keys. Keys in track titles can be translated from and into all of the following languages: English (en), French (fr), German (de), Italian (it), Portuguese (pt), Romanian (ro), Russian (ru) and Spanish (es). Only "long", unabbreviated variants get recognised and replaced.
  • Transcription of Russian. Russian Cyrillic text in track titles can be transcribed to Latin script, according to different methods.
  • Sub-indices to tracks. Sub-indices of tracks can be converted into tracks (for players that ignore sub-indices).
  • Deleting track details. Details of track data can be selectively deleted: Flags, ISRC, Performer, Rem, Songwriter, Title, Pregap, Postgap.
  • Re-numbering. Track numbering in cuesheets is required to be continuous (within the track data, not the titles). After adding or deleting a track this function can adjust the numbering.
  • Undo. The editor itself doesn't have an "undo"-function, but you can use the browser's "back to previous page" function (a button or a combination of keys, [ALT]+[←] and [ALT]+[→] on my computer).

An example work flow for editing a cuesheet

  • Rip a CD to obtain a "wav" file, containing the audio data, and a "cue" file, containg the track information etc.
  • Open the CuEd editor page.
  • Select the cuesheet file in the sky-blue "Use source file" area of the online editor controls. You can also select the character encoding of your source file: "UTF-8" is the default. "Latin-1" is common for Western European languages, including English. "Cyrillic" is "Windows cp1251", which is common for Russian.
  • Click "apply options" to import and process the cuesheet and get the track titles displayed in the track titles edit area. If no relevant data (at least one correctly formatted soundfile line) or an error in the cuesheet data structure are detected you will either see an error message or simply no data. Currently bad data often are just ignored. Future versions should give more information on the kind of error.
  • Now editing can be done in the track title and cuesheet edit areas, and options can be selected from the menu above. Note that the automatic numbering of the titles in the track titles area is intended for the orientation of the user only. It does not refer to the number attribute of the track data.
  • EITHER click "set WITHOUT tracknumbers": The first numbering is stripped from each of the titles in track titles area, then they are inserted into the cuesheet, which is then processed with the options selected above.
  • OR click "set WITH tracknumbers": The unchanged titles from the track titles area, including numbering, are inserted into the cuesheet, which is then processed with the options selected above. Use this button if you entered the track titles manually and want to keep the numbering.
  • OR click "apply options": The cuesheet gets processed with the options selected above. Titles in the track titles area are ignored.
  • The resulting track titles and cuesheet are displayed again. A rotation of the little indicator next to the "apply" button shows that the data have been newly processed, even if nothing has changed. Green indicator fields mean "ok", red means "an error has occured".
  • Save the cuesheet file back to your computer using the white "save (UTF-8)" button.

Instead of loading the cuesheet file from within the online editor you can also open it with a text editor on your computer and transfer the text via copy and paste into or back from the online edit field.

The size of the edit fields can be adjusted by browser control elements (Firefox: bottom right corners of the edit areas), but only until the next processing step. There are also some session permanent sizing choices in the options part of the editor page.

The cuesheet format

UTF-8

Cuesheets are pure textfiles. Nowadays it is mostly possible to create texts in UTF-8 format. This allows to display characters of most of the languages of the world together in one text. Modern text editors offer to save texts in UTF-8 format with or without BOM. The BOM (byte order marker) is a sequence of bytes that marks the following text as being in UTF-8 format, and suitable software does not display it with the text. Such editors can also try to detect the text format without BOM by analysing the characters in the text, but an audio player may require a BOM to deal properly with UTF-8 cuesheets. So, if your software (editor and player) are suited to UTF-8, it is recommended to use this universal format, but only with BOM.

A cuesheet has a head part with general information on the whole medium, followed by a track data part. An example for a full cuesheet can be seen here, in this demo cuesheet, loaded into the editor page.

All cuesheet commands are written in capitals at the beginning of a line, optionally preceded by spaces or tabs for better readability.

The head part

(All optional:)

CATALOG the 13 digit EAN/UPC number of the CD
TITLE "..." the CD title
PERFORMER "..." performer, for the whole CD
REM an arbitrary remark
SONGWRITER "..." composer, for the whole CD,
not commonly used.
I prefer to write
TITLE "Composer - Work(s)"

The track part

Only common elements of audio CDs are mentioned.

FILE "Prokofiev - Peter and the Wolf.flac" WAVE
  TRACK 01 AUDIO
	TITLE "Peter and the Wolf (piano version)"
	PERFORMER "Walter Hämmerer, piano"
	SONGWRITER "Prokofiev"
	FLAGS PRE
	ISRC XYZ123456780
	INDEX 00 00:00:00
	INDEX 01 00:03:00

The track part of a cuesheet begins with a FILE element containing the path to a soundfile, ending with a marker for the kind of sound data (WAVE or MP3). Often you find "WAVE" for lossless sound files, like wav, flac or ape, and "MP3" for mp3 files.

Attention: If you compress a wav file of a CD rip you have to change the file name in the cuesheet accordingly, otherwise the player won't be able to play the cuesheet.

After the FILE follow the tracks that refer to positions within that file. (Several files can appear within one cuesheet.) Track numbers must be double-digit (and therefore not above 99) and continuous. After the track number follows AUDIO for audio tracks. (There could also be data tracks.) After this the following optional elements can follow: TITLE, PERFORMER, SONGWRITER, FLAGS, ISRC.

FLAGS can have several values. The flag value PRE is especially important. It marks audio data with pre-emphasis. That means the high frequencies of the audio signal have been amplified and need to be reduced to normal level again for playback. In modern CD productions this technique is used only rarely, but it was not uncommon in earlier times. Most software players ignore the PRE flag in cuesheets, therefore it is important to remove pre-emphasis from soundfiles that are intended for other purposes than burning a CD. There are programs available to do the removal. I use SoX, a commandline program with many soundfile related functions. Soundfiles with unhandled pre-emphasis tend to sound piercing or grating. With dull originals the effect is sometimes less obvious. If pre-emphasis has been removed from the soundfile the PRE flag should also be removed from the cuesheet, to avoid future confusion about the state of the file, even if the player ignores it.

Note: since a CD/DVD drive in the computer delivers only raw data which need to be processed by the player software for listening, playing a CD with pre-emphasis on the computer will also pass through pre-emphasis unchanged (unless the player software can handle it correctly). As far as I know this is even the case when you can plug your headphones directly into sockets on the front of the computer's CD drive.

ISRC is an international track identification, similar to UPC/EAN for other goods.

Usually after this follows the INDEX information, first the two-digit index number, then the "cue", i. e. a position in the sound file, in the format "minutes:seconds:frames" (two-digit each). Frames are 75ths of seconds.

INDEX 00 is optional and points to silence before the beginning of the actual track, where playback should start. INDEX 00 points to an existing position within the soundfile, other than PREGAP and POSTGAP. These two commands request insertion of extra silence before or after the track. But when the insertion point of the audio signal is not digital zero this can result in audible clicks (and an interruption of natural background noise by "dead" silence).

INDEX 01 is required and marks the beginning of the track.

INDEX 02 and higher mark sub-indices, i. e. cues that are subordinate to a track. Most software players and many CD players can't access sub-indices. These cues can be made accessible by converting sub-indices to tracks.

REM lines and empty lines can be inserted between any other lines of the cuesheet. REM lines can contain personal remarks, but they are also used to extend the cuesheet format for other applications, e. g. to add "replay gain" information or, here in CuEd, to add titles to sub-indices, which become track titles when sub-indices are converted to tracks.

Non-standard cuesheets

Some software produces non-standard cuesheets, which don't play at all or play incorrectly in other players. I didn't check how CuEd deals with these. It should either give an error message or unexpected results.

Recommended free software

Since I'm working under Windows I can only recommend Windows software.

  • Notepad++. A good, feature rich text editor.
  • foobar2000. My preferred audio player with an uncluttered, configurable surface. Can also be used for ripping CDs or for converting between different sound file formats, including the popular lossless format "flac".
  • SoX. A commandline program for working with sound files, including removal of pre-emphasis.
  • Exact Audio Copy, EAC. High quality CD rips, optionally obtaining meta data from Internet databases.
  • Monkey's Audio. An easy to use program for lossless compression of WAV files to APE files. APE files natively contain checksums, so even large collections of stored APE files can easily be checked for integrity.
  • Path Copy Copy. A little utility for copying paths (in different formats): Mark a group of soundfiles in a folder, rightclick, select PathCopy from the context menu and copy all the file paths (or the names only, as you select) to the clipboard. Very useful.

My foobar2000 settings

I wanted to make best use of the display area, avoiding empty or fixed columns. So I put most of the information into one "column" and disabled the other, unwanted ones. This is a part of the cuesheet:

This is how foobar displays it:

This configuration was set here:

The code to enter into the field (in one line!) is:

>>%list_index%<< [$cut(%album%,45)][ '{'>>$cut(%album artist%,32)<<'}'] '[>>>'%tracknumber%<<<']' [%title%][ '{'>>%track artist%<<'}']

Future developments

Cuesheets contain many data needed for building a database of one's music collection. Further information can be added via REM lines. My personal music collection database is working that way. If there is enough interest I could write an online version of that software, a personal, searchable online database on the basis of cuesheets. That would cost a small annual fee though.

Data protection

Use of the CuEd cuesheet editor is free and anonymous. No personal data are collected. No data will be given to third parties.

Cookies

Only temporary session cookies are used, only for site internal session identfication and without any personal data.