|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353 |
- ============================================
- Description of the Cuesheet/TOC File Formats
- ============================================
-
- :Author: Svend Sorensen
- :Contact: sorensen@users.berlios.de
-
- .. contents::
-
- The Cuesheet (cue) and TOC (toc) file formats both describe the layout of a CD.
-
- Notes
- =====
-
- A Cuesheet or TOC file has an (optional) global section, followed by any number
- of track sections.
-
- Lines (with a few exceptions for the toc format) begin with a keyword, which
- may be followed by whitespace separated fields. Some keywords are only allowed
- in the global section or a track section.
-
- Format Notation
- ---------------
-
- * ``<field>`` - a required field
- * ``[field]`` - optional field
- * ``...`` - preceding field may be repeated any number of times
-
- Cuesheet Format
- ===============
-
- Keywords
- --------
-
- REM
- ~~~
-
- All lines beginning with ``REM`` are considered comments. ``REM`` is
- considered a keyword, and lines beginning with this keyword are ignored.
-
- :Section(s): any
- :Format: ``REM [comments]``
-
- CATALOG
- ~~~~~~~
-
- Sets the catalog number of the CD. The ``catalog_number`` must be exactly 13
- digits.
-
- :Section(s): global
- :Format: ``CATALOG "<catalog_number>"``
-
- FILE
- ~~~~
-
- Sets a new input file. ``FILE`` line precedes the beginning of the track
- section. Allowable ``file_format`` entries are BINARY, MOTOROLA, AIFF, WAVE,
- or MP3.
-
- :Section(s): track
- :Format: ``FILE "<filename>" [file_format]``
-
- TRACK
- ~~~~~
-
- Starts a new track. ``track_number`` must be a positive integer. Allowable
- ``track_mode`` entries are MODE1/2048, MODE1/2352, MODE2/2336, MODE2/2048,
- MODE2/2324, MODE2/2336, or MODE2/2352.
-
- :Section(s): track
- :Format: ``TRACK <track_number> <track_mode>``
-
- FLAGS
- ~~~~~
-
- Sets track flags. Allowable ``flag`` entries are PRE, DCP, 4CH, and SCMS.
-
- :Section(s): track
- :Format: ``FLAGS [flag]...``
-
- ISRC
- ~~~~
-
- Sets track ISRC number. ``ISRC_number`` must be of the format CCOOOOYYSSSSS.
-
- :Section(s): track
- :Format: ``ISRC <ISRC_number>``
-
- PREGAP
- ~~~~~~
-
- Sets track pregap. ``pregap`` must be in MSF format.
-
- :Section(s): track
- :Format: ``PREGAP <pregap>``
-
- INDEX
- ~~~~~
-
- Sets a track index. ``index_number`` must be a non-negative integer.
- ``index`` must be in MSF format.
-
- :Section(s): track
- :Format: ``INDEX <index_number> <index>``
-
- (CD-TEXT keywords)
- ~~~~~~~~~~~~~~~~~~
-
- See `CD-TEXT`_ section.
-
- Section(s): any
-
- TOC File Format
- ===============
-
- Certain keywords begin a block, which must be enclosed between ``{`` and ``}``
- brackets.
-
- Comments
- --------
-
- Comments begin with ``//`` and may be placed anywhere. Because they can be
- placed anywhere in a line, toc comments are treated as a special case (not as a
- keyword). Any text beginning with ``//`` is stripped from each line.
-
- Keywords
- --------
-
- CATALOG
- ~~~~~~~
-
- Sets the catalog number of the CD. ``catalog_number`` must be exactly 13
- digits.
-
- :Section(s): global
- :Format: ``CATALOG "<catalog_number>"``
-
- CD_DA
- ~~~~~
-
- Sets the CD format to audio.
-
- :Section(s): global
- :Format: ``CD_DA``
-
- CD_ROM
- ~~~~~~
-
- Sets the CD format to data.
-
- :Section(s): global
- :Format: ``CD_ROM``
-
- CD_ROM_XA
- ~~~~~~~~~
-
- Sets the CD format to mixed.
-
- :Section(s): global
- :Format: ``CD_ROM_XA``
-
- TRACK
- ~~~~~
-
-
- :Section(s): track
- :Format: TRACK <track_mode> [sub_channel_mode]
-
- NO
- ~~
-
- Negates (clears) track flags. Allowable flags are ``COPY`` and
- ``PRE_EMPHASIS``.
-
- :Section(s): track
- :Format: ``NO <flag>``
-
- COPY
- ~~~~
-
- Sets the copy permitted flag.
-
- :Section(s): track
- :Format: ``COPY``
-
- PRE_EMPHASIS
- ~~~~~~~~~~~~
-
- Sets the pre-emphasis flag.
-
- :Section(s): track
- :Format: ``PRE_EMPHASIS``
-
- TWO_CHANNEL_AUDIO
- ~~~~~~~~~~~~~~~~~
-
- Sets the two channel audio flag.
-
- :Section(s): track
- :Format: ``TWO_CHANNEL_AUDIO``
-
- FOUR_CHANNEL_AUDIO
- ~~~~~~~~~~~~~~~~~~
-
- Sets the four channel audio flag.
-
- :Section(s): track
- :Format: ``FOUR_CHANNEL_AUDIO``
-
- ISRC
- ~~~~
-
- Sets track ISRC number. ``ISRC_number`` must be of the format CCOOOOYYSSSSS.
-
- :Section(s): track
- :Format: ISRC "<ISRC_number>"
-
- SILENCE
- ~~~~~~~
-
- *TODO*
-
- :Section(s): track
-
- ZERO
- ~~~~
-
- *TODO*
-
- :Section(s): track
-
- FILE
- ~~~~
-
- Add file to current track. ``start`` and ``length`` must be in MSF format.
-
- :Section(s): track
- :Format: ``FILE "<filename>" <start> [length]``
-
- AUDIOFILE
- ~~~~~~~~~
-
- Add file to current track. ``start`` and ``length`` must be in MSF format.
-
- :Section(s): track
- :Format: ``AUDIOFILE "<filename>" <start> [length]``
-
- DATAFILE
- ~~~~~~~~
-
- TODO
-
- :Section(s): track
-
- FIFO
- ~~~~
-
- TODO
-
- :Section(s): track
-
- START
- ~~~~~
-
-
- :Section(s): track
- :Format: ``START <start>``
-
- PREGAP
- ~~~~~~
-
- Sets track pregap. ``pregap`` must be in MSF format.
-
- Section(s): track
- Format: ``PREGAP <pregap>``
-
- INDEX
- ~~~~~
-
- Sets a track index. ``index_number`` must be a non-negative integer.
- ``index_time`` must be in MSF format.
-
- :Section(s): track
- :Format: ``INDEX <index_number> <index_time>``
-
- CD_TEXT
- ~~~~~~~
-
- Begins a CD-TEXT block.
-
- :Section(s): any
- :Format: ``CD_TEXT {}``
-
- LANGUAGE_MAP
- ~~~~~~~~~~~~
-
- Begins a language map block.
-
- Section(s): global
- Subsection(s): CD-TEXT block
- Format: ``LANGUAGE_MAP {}``
-
- LANGUAGE
- ~~~~~~~~
-
- Begins a language block.
-
- :Section(s): track
- :Subsection(s): CD-TEXT block
- :Format: ``LANGUAGE {}``
-
- (CD-TEXT keywords)
- ~~~~~~~~~~~~~~~~~~
-
- See `CD-TEXT`_ section.
-
- :Section(s): any
- :Subsection(s): CD-TEXT block
-
- CD-TEXT
- =======
-
- :Format: ``<CDTEXT_keyword> "<CDTEXT_field>"``
-
- Keywords
- --------
-
- ========== ======
- Keyword Form
- ========== ======
- TITLE char
- PERFORMER char
- SONGWRITER char
- COMPOSER char
- ARRANGER char
- MESSAGE char
- DISC_ID char
- GENRE char
- TOC_INFO char
- TOC_INFO2 char
- UPC_EAN char
- ISRC char
- SIZE_INFO binary
- ========== ======
-
- Definitions
- ===========
-
- MSF format
- a representation of time in the form ``mm:ss:ff``. ``mm`` is minutes,
- ``ss`` is seconds, and ``ff`` is frames
- frame
- 1/74 of a second
|