cue2toc - convert CUE to TOC format
] [-o tocfile
from CUE to TOC format and writes the
result to tocfile
. If either cuefile
omitted or a single dash "-" cue2toc
reads from standard
input and writes to standard ouput respectively.
CUE files are text files describing the layout of a CD-Rom and typically carry
the extension ".cue".
Cdrdao is a CD-burning application which has its own native TOC format to
describe the disc layout. Although cdrdao has direct support for reading CUE
files, it is currently limited to data tracks only. So cue2toc
usefulness lies in converting CUE files containing audio tracks.
CUE files for audio discs often come with data files in compressed audio formats
like MP3 or Ogg Vorbis. To burn such a disc with cdrdao these files must be
converted to WAVE or raw format. Cue2toc
can do this automatically if
configured properly (see section CONFIGURATION
below for more
normally displays warning messages for unsupported commands and
constructs as well as for each data file converted. The -q
disables these messages.
- print debugging information
- print a short help message
- -o tocfile
- write result to tocfile instead of standard ouput
- quiet mode; do not print warnings
- display version information
What follows is a description of the CUE format expected by cue2toc
information about the TOC format please consult the cdrdao
CUE files consist of commands and their arguments which must be separated from
each other by any number of whitespace characters. Space, horizontal
tabulator, newline and carriage return are recognized as whitespace characters
except inside strings surrounded by double quotes, where they are part of the
string. Commands are not case sensitive. CD-Text data can be at most 80
characters per item.
Timecode values are accepted in the forms "X:X:X", "X:X" and
"X" where each "X" must consist of at most two digits and
may be zero padded to the left. They are interpreted as "M:S:F",
"S:F" and "F" respectively where "M" means
"minutes" and must be in the range 0 <= M <= 99, "S"
means "seconds" and must be in the range 0 <= S <= 59, and
"F" means "frames" and must be in the range 0 <= F
CUE files are logically divided into a global section and one to 99 track
sections. Inside these sections the following commands are allowed:
- Optional. Introduces a comment. Anything from there on up
to and including the next newline character is ignored. Comments can
appear anywhere in the file but not between a command and its arguments.
- Optional. The Media Catalog Number of the disc. Must be
exactly 13 characters.
- Optional. Specifies an external file containing CD-Text
- Optional. The CD-Text title of the disc.
- Optional. The CD-Text performer of the disc.
- Optional. The CD-Text songwriter of the disc.
- Required. The name and type of the file to be used for all
following tracks. The string contains the name of the file followed
by one of BINARY, MOTOROLA, AIFF, WAVE or
MP3. As far as cue2toc is concerned the type of the file is
effectively ignored. Nonetheless MOTOROLA, AIFF and
MP3 cause printing of a warning message since these file types can
not be used directly with cdrdao.
The first appearance of a TRACK
command causes leaving of the global
section and entering the track section.
TRACK number mode
INDEX number timecode
- Required. Starts a new track definition. The number
is ignored. The mode must be one of AUDIO,
MODE1/2048, MODE1/2352, MODE2/2336 or
- Optional. Defines the flags for this track. Must be
followed by one or more of the following commands: DCP (digital
copy permitted), 4CH (four channel audio), PRE (pre-emphasis
enabled) and SCMS (serial copy management system). SCMS is
ignored because there is no corresponding option in the TOC format.
- Optional. The International Standard Recording Code for
this track. Must be exactly 12 characters long.
- Optional. The CD-Text title of this track.
- Optional. The CD-Text performer of this track.
- Optional. The CD-Text songwriter of this track.
- Optional. The length of the track pregap to be filled with
zero data. Mutually exclusive with INDEX 0.
- Optional. The length of the track postgap to be filled with
- Optional. The number must be in the range 0 <=
number <= 99. Index number 1 specifies the start of the track.
Index number 0 is the start of the track pregap filled with data from the
file, i.e. the difference between index 0 and index 1 is the length of the
pregap. Index 0 is mutually exclusive with PREGAP. Index numbers
greater than 1 specify subindexes for this track and must be sequential.
- Optional in track section. The syntax is the same as
described above and if it appears inside a track specification it takes
effect on the next TRACK command.
can be configured by specifying options in the file ~/.cue2tocrc.
The syntax of this file and allowed configuration options follow.
Comments are introduced by the hash character '#' and extend to the end of the
line. Configuration options take the form
OPTION = value
The value must be quoted if it contains whitespace characters. To include a
double quote character in a quoted string, precede it with a backslash. Option
values can either be of boolean type or string type. For boolean types any one
of "yes", "y", "true" or "1" means
true and anything else means false. The "default value" in
the descriptions of the individual options below is the value assumed by
in the absence of the option from the configuration file.
- CONVERTER = ext_from ext_to command
- This option takes three string arguments and specifies a
converter for files with the extension ext_from. They are converted by the
given command and the extension is replaced with ext_to in the TOC file.
When the command is run the environment will contain the two variables
C2T_FROM and C2T_TO which contain the original and new file name
respectively. For example
CONVERTER = .mp3 .wav
"lame --decode \"$C2T_FROM\" \"$C2T_TO\""
will convert all MP3 files to WAVE format using lame. It is a good idea to
quote the varibles $C2T_FROM and $C2T_TO because they could contain
whitespace or other funny characters with a special meaning to the shell.
This option can be specified multiple times and each file is checked against
the list of converters to see if it matches any of them. If multiple
converters match a given file only the first match is used.
If a file with the name that results from replacing ext_from with ext_to
already exists, the conversion command will not be executed.
This option has no default value.
- CONVERT = boolean
- This option enables or disables the conversion of data
files as described above for the CONVERTER option. If this option is
false, no conversion will take place. The default value is
- QUIET = boolean
- If this option is true it has the same effect as if
cue2toc was invoked with the -q command line option. The
default value is "no".
- CDTEXT = boolean
- This option enables or disables the writing of CD-Text data
to the TOC file if it is present in the CUE file. The default value is
The command CDTEXTFILE
and the flag SCMS
have no equivalent in the
TOC format and are ignored.
CUE files containing data tracks which specify a starting time greater than zero
cannot be converted by cue2toc
because the TOC format does not provide
a way to specify a starting time at all for data tracks. However if the CUE
file does not contain any audio tracks you can try to use the CUE file
directly with cdrdao.
- The configuration file. The format of this file is
described in the section CONFIGURATION above.
's definition of the CUE format is entirely based on a
number of different CUE files the author came across there is a very high
probability that it will not work correctly with all the other CUE files you
might encounter. If this is the case for you please send the problematic CUE
file along with the version number of cue2toc
Matthias Czapla <firstname.lastname@example.org>