О файлах CUE sheet

Дата обновления: 27 Июля 2014
Назначение файлов CUE, история создания. Спецификация cue sheet, синтаксис, описание команд, примеры.
2014-07-27T13:29
Audiophile's Software
Cue sheet (файл CUE, CUE sheet) — особым образом форматированный текстовый файл, используемый для хранения информации об указателях (индексах) для аудиофайлов больших размеров. Главным образом используется при извлечении или записи Audio CD. К примеру, cue sheet позволяет медиаплеерам обрабатывать образы audio CD, состоящие из одного файла, так, будто это отдельные файлы треков. Также cue может быть использован программами записи дисков для получения дополнительной информации об audio CD слое. Cue sheet может быть использован также и для записи CD с данными, однако в данном материале рассмотрены вопросы, касающиеся исключительно аудио данных.

Содержимое cue sheet

Все файлы cue содержат следующую информацию:

  • Название и тип по крайней мере одного аудио файла;
  • Нумерованный список треков, содержащихся в каждом файле;
  • Время начала (INDEX 01) каждого трека в формате MM:SS:FF.

Также cue может содержать следующую дополнительную информацию:

  • Мета-данные CD-Text — исполнитель, название, автор и т. п. (для всего диска и для каждого трека);
  • Коды ISRC (International Standard Recording Code, Международный стандартный номер записи);
  • Специальные указатели для записи CD (например, указатели пре-эмфазиса);
  • Информация о зазорах (продолжительность тишины до/после треков);
  • Комментарии (могут быть использованы некоторыми программами для записи нестандартных мета-данных, вроде жанра, идентификатора диска в freeDB и т. п.);

Cue не является необходимостью для создания точной копии аудиоданных CD; программы для граббинга и записи самостоятельно считывают аудиоданные и способны устанавливать время начала каждого трека. Тем не менее, cue может быть использован для указания места, где должен начинаться первый трек (если оно отличается от стандартного), места размещения дополнительных указателей (отличных от INDEX 01), для записи CD-Text (которого на оригинальном CD может и не быть), UPC/ISRC данных, а также информации о пре-эмфазисе.

Cue sheet необходим для записи HTOA (hidden track one audio), представляющего собой аудио, которое может быть проиграно только после обратного сканирования с места начала трека 1. Cue sheet может пригодиться в тех случаях, когда были утеряны семплы в начале и конце записываемых файлов; также с его помощью можно восстановить паузы между треками. Кроме того, cue sheet может понадобиться при записи данных смешанного типа (аудио треки и треки с данными).

История

Формат CUE был изобретен Джеффом Арнольдом из GoldenHawk Technology для использования с приложениями DAO и CDRWIN. Вскоре формат стал стандартом де-факто, его начали использовать другие приложения, включая foobar2000. Официальная спецификация cue sheet представляет собой Приложение А для Руководства пользователя CDRWIN.

Название взято из команды SEND CUE SHEET (в соответствии со спецификацией SCSI-3 Multimedia Commands), используемой для отправки бинарного cue sheet, описывающего слой перед началом записи в режиме SAO (Session-At-Once). Привод записывает данные на диск, используя информацию из cue sheet для генерации данных субканалов P и Q, а также для получения информации о формате и размере блоков передаваемых данных при команде WRITE.

Программы DAO и CDRWIN разрабатывались для запуска из-под MS-DOS и ранних ОС Windows; в те времена принято было определять тип файлов по расширению, записываемому заглавными буквами: TXT для текста, DOC для документов Word и т. д. Потому в то время cue sheet называли файлами CUE. Эта традиции сохранилась и доселе, однако надо помнить, что «cue» в данном случае — это не аббревиатура, и писать слово заглавными буквами не обязательно.

Команды cue sheet

Указанные команды подробно описаны в Приложении А Руководства пользователя CDRWIN:

  • CATALOG — 13 цифр UPC/EAN кода.
  • CDTEXTFILE — путь к файлу, содержащему информацию CD-Text.
  • FILE — путь к файлу, содержащему аудиоданные, к которому относятся дальнейшие команды.
  • FLAGS — указатели потрековых субкодов.
  • INDEX— индексы треков.
  • ISRC — ISRC коды треков.
  • PERFORMER — исполнитель альбома или трека, данные CD-Text.
  • POSTGAP — продолжительность тишины добавляемой в конец трека.
  • PREGAP — продолжительность тишины добавляемой в начало трека.
  • REM — ремарка/комментарий, который необходимо игнорировать.
  • SONGWRITER — автор текста альбома или трека, данные CD-Text.
  • TITLE — название диска или трека, данные CD-Text.
  • TRACK — номер создаваемого трека, к которому применяются дальнейшие команды.

Наиболее часто используемые

FILE
Команда указывает файл, на которые в данный момент ссылается cue sheet. Поддерживаемые типы файлов: WAVE, MP3, AIFF, BINARY и MOTOROLA. Другие форматы, например, WavPack и FLAC, также могу быть использованы с указанием типа FILE.

INDEX
Номер от 00 до 99. Указатели времени записываются в формате MM:SS:FF (минуты, секунды, фреймы; одна секунда состоит из 75 фреймов). INDEX 01 указывает начало нового трека. INDEX 00 указывает пред-зазор трека; временами можно заметить, что плеер начинает играть audio CD с отрицательного времени — это промежуток между INDEX 00 и INDEX 01.

PERFORMER
На корневом уровне указывает исполнителя CD, на уровне треков — исполнителя каждой композиции.

PREGAP
Используется для указания продолжительности зазора перед треком, в формате MM:SS:FF. Несмотря на то, что спецификация SCSI определяет термин «предзазор» как пауза перед треком данных, в cue sheet команда PREGAP может быть использована для создания паузы перед треком любого типа — данных или аудио.

REM
Используется для записи в cue sheet комментариев.Также часто используется для хранения дополнительных мета-таданных (дата выпуска диска, жанр, etc.)

TITLE
На корневом уровне указывает название альбома, на уровне трека — название композиции.

TRACK
Номер трека — от 00 до 99

Отступы

Между командами должны ставиться переносы строки. Пробелы или табуляция могут быть использованы для упорядочивания информации и простоты восприятия при визуальном просмотре и ручном редактировании. Обычно все команды, которые относятся к определенному файлу, с помощью отступов размещаются под соответствующей командой FILE, а те, что относятся к конкретным трекам — соответственно, под командой TRACK.

Примеры

Стандартный однофайловый cue sheet

REM GENRE Alternative
REM DATE 1991
REM DISCID 860B640B
REM COMMENT "ExactAudioCopy v0.95b4"
PERFORMER "My Bloody Valentine"
TITLE "Loveless"
FILE "My Bloody Valentine - Loveless.wav" WAVE
 TRACK 01 AUDIO
 TITLE "Only Shallow"
 PERFORMER "My Bloody Valentine"
 INDEX 01 00:00:00
 TRACK 02 AUDIO
 TITLE "Loomer"
 PERFORMER "My Bloody Valentine"
 INDEX 01 04:17:52

Этот cue sheet, созданный EAC, демонстрирует первые два трека стандартного однофайлового CUE. Обратите внимание на использование команд REM для записи дополнительных метаданных в формате REM <TAG> "<value>". Команды PERFORMER и TITLE в начале описывают, соответственно, исполнителя альбома и его название. Команды PERFORMER и TITLE на уровне треков задают имя исполнителя и название композиций.

INDEX 01 второго трека не означает, что трек имеет продолжительность 4 мин 17.693 с, это означает, что трек начинается с позиции 4 мин 17.693 с в файле (т. е. фактически 4 мин 17.693 с — продолжительность первого трека). Если бы продолжительность TRACK 02 была 3 минуты ровно, значение INDEX 01 для TRACK 03 было бы 07:17:52.

Также обратите внимание, что ссылка на файл является относительной (можно использовать полный путь), а тип файла — WAVE.

Однофайловый cue sheet со скрытым треком TRACK 01 INDEX 00

PERFORMER "Bloc Party"
TITLE "Silent Alarm"
FILE "Bloc Party - Silent Alarm.flac" WAVE
 TRACK 01 AUDIO
   TITLE "Like Eating Glass"
   PERFORMER "Bloc Party"
   INDEX 00 00:00:00
   INDEX 01 03:22:70
 TRACK 02 AUDIO
   TITLE "Helicopter"
   PERFORMER "Bloc Party"
   INDEX 00 07:42:69
   INDEX 01 07:44:69

Этот cue sheet отображает первые два трека диска со скрытым треком в начале. Обратите внимание, что TRACK 01 INDEX 01 начинается с 03:22:70 (3 мин 22.933 с), а не с 00:00:00, как в первом примере (и вообще, в большинстве случаев). INDEX 00 для TRACK 02 демонстрирует более привычную ситуацию, начинаясь за две секунды до INDEX 01.

Так как INDEX 00 содержится в первом треке, вы сокорей всего не увидите отсчета времени с отрицательного значения, как это было бы для других треков. Чтобы прослушать этот трек на плеере audio CD, необходимо воспользоваться прокруткой (в обратном направлении), чтобы отмотать с 3 мин 22 с до реального места начала музыки.

Также надо отметить, что CUE ссылается на файл FLAC, а тип файла указан как WAVE. Для MP3 используется тип «MP3», для AIFF — «AIFF», для всех других типов используется «WAVE».

Многофайловый cue sheet с откорректированными зазорами

FILE "The Specials - Singles - 01 - Gangsters.wav" WAVE
  TRACK 01 AUDIO
    TITLE "Gangsters"
    PERFORMER "The Specials"
    INDEX 01 00:00:00
FILE "The Specials - Singles - 02 - Rudi, A Message To You.wav" WAVE
  TRACK 02 AUDIO
    TITLE "Rudi, A Message To You"
    PERFORMER "The Specials"
    INDEX 00 00:00:00
    INDEX 01 00:00:28

Многофайловый cue sheet, созданный EAC, зазоры присоединены к следующему треку. Этот способ позволяет пользователям сохранять зазоры, но, когда зазоры присоединяются к следующему треку, некоторые треки могут начинаться с тишины, что может быть нежелательно.

Многофайловый cue sheet с удаленными зазорами

FILE "The Specials - Singles - 01 - Gangsters.wav" WAVE
  TRACK 01 AUDIO
    TITLE "Gangsters"
    PERFORMER "The Specials"
    INDEX 01 00:00:00
FILE "The Specials - Singles - 02 - Rudi, A Message To You.wav" WAVE
  TRACK 02 AUDIO
    TITLE "Rudi, A Message To You"
    PERFORMER "The Specials"
    PREGAP 00:00:28
    INDEX 01 00:00:00

Многофайловый cue sheet, созданный EAC, зазоры удалены, однако тишина между треками искусственно воссоздана с помощью команды PREGAP. Этот способ подходит для тех случаев, когда зазоры содержат только тишину.

Многофайловый cue sheet с зазорами (несовместимый синтаксис)

FILE "The Specials - Singles - 01 - Gangsters.wav" WAVE
  TRACK 01 AUDIO
    TITLE "Gangsters"
    PERFORMER "The Specials"
    INDEX 01 00:00:00
  TRACK 02 AUDIO
    TITLE "Rudi, A Message To You"
    PERFORMER "The Specials"
    INDEX 00 02:47:74
FILE "The Specials - Singles - 02 - Rudi, A Message To You.wav" WAVE
    INDEX 01 00:00:00

Этот многофайловый cue sheet, созданный в EAC, имеет зазоры присоединенные к предыдущему треку, и это наиболее распространенный тип CUE среди пользователей, которые делают потрековые рипы, но желают сохранить информацию из зазоров. Этот формат позволяет сохранить зазоры, присоединив их к концу каждого трека, что не мешает воспроизведению. К сожалению, этот формат является несовместимым, поэтому приложения, которые придерживаются спецификации, вроде foobar2000, не смогут их прочитать. EAC, конечно же, поддерживает чтение таких CUE, как и приложение для записи Burrrn.

Обратите внимание: INDEX 00 для TRACK 02 установлен в месте, где CUE всё еще ссылается на первый файл.

Однофайловая версия cue sheet

FILE "The Specials - Singles.wav" WAVE
  TRACK 01 AUDIO
    TITLE "Gangsters"
    PERFORMER "The Specials"
    INDEX 01 00:00:00
  TRACK 02 AUDIO
    TITLE "Rudi, A Message To You"
    PERFORMER "The Specials"
    INDEX 00 02:47:74
    INDEX 01 02:48:27

Для наглядности — cue sheet, рассмотренный выше, в однофайловом формате.

Пример cue sheet

REM GENRE Ska
REM DATE 1991
REM DISCID D00DA810
REM COMMENT "ExactAudioCopy v0.95b4"
PERFORMER "The Specials"
TITLE "Singles"
FILE "The Specials - Singles.wav" WAVE
  TRACK 01 AUDIO
    TITLE "Gangsters"
    PERFORMER "The Specials"
    INDEX 01 00:00:00
  TRACK 02 AUDIO
    TITLE "Rudi, A Message To You"
    PERFORMER "The Specials"
    INDEX 00 02:47:74
    INDEX 01 02:48:27
  TRACK 03 AUDIO
    TITLE "Nite Klub"
    PERFORMER "The Specials"
    INDEX 00 05:41:50
    INDEX 01 05:42:27
  TRACK 04 AUDIO
    TITLE "Too Much Too Young"
    PERFORMER "The Specials"
    INDEX 00 08:53:47
    INDEX 01 08:54:37
  TRACK 05 AUDIO
    TITLE "Guns Of Navarone"
    PERFORMER "The Specials"
    INDEX 00 10:59:20
    INDEX 01 11:00:17
  TRACK 06 AUDIO
    TITLE "Rat Race"
    PERFORMER "The Specials"
    INDEX 00 13:20:55
    INDEX 01 13:20:67
  TRACK 07 AUDIO
    TITLE "Stereotype"
    PERFORMER "The Specials"
    INDEX 00 16:29:67
    INDEX 01 16:30:30
  TRACK 08 AUDIO
    TITLE "International Jet Set"
    PERFORMER "The Specials"
    INDEX 00 20:19:27
    INDEX 01 20:20:20
  TRACK 09 AUDIO
    TITLE "Do Nothing"
    PERFORMER "The Specials"
    INDEX 00 24:30:70
    INDEX 01 24:32:27
  TRACK 10 AUDIO
    TITLE "Ghost Town"
    PERFORMER "The Specials"
    INDEX 00 28:23:30
    INDEX 01 28:23:42
  TRACK 11 AUDIO
    TITLE "Why?"
    PERFORMER "The Specials"
    INDEX 00 34:21:37
    INDEX 01 34:21:47
  TRACK 12 AUDIO
    TITLE "Friday Night, Saturday Morning"
    PERFORMER "The Specials"
    INDEX 00 38:16:50
    INDEX 01 38:16:55
  TRACK 13 AUDIO
    TITLE "War Crimes"
    PERFORMER "The Specials"
    INDEX 00 41:50:07
    INDEX 01 41:51:00
  TRACK 14 AUDIO
    TITLE "Racist Friend"
    PERFORMER "The Specials"
    INDEX 00 45:50:55
    INDEX 01 45:51:72
  TRACK 15 AUDIO
    TITLE "Nelson Mandela"
    PERFORMER "The Specials"
    INDEX 00 49:35:55
    INDEX 01 49:38:22
  TRACK 16 AUDIO
    TITLE "(What I Like Most About You Is Your) Girlfriend"
    PERFORMER "The Specials"
    INDEX 00 54:11:00
    INDEX 01 54:12:40

Информация от спонсора

Rozetka.ua: интернет-магазин номер один в Украине. Здесь вы можете также приобрести одежду: школьная форма купить по низким ценам. Удобная сортировка товаров по рейтингу, возможность фильтрации товара по характеристикам и цене.

 
   
Категория: Кодирование аудио | Автор: | Добавил: Audiophile
Просмотров: 15066| Рейтинг: 5.0/5, голосов: 2
Комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]