Меню
Главная
Случайная статья
Настройки
|
Файл NRG — это собственный формат файла образа оптического диска, первоначально созданный Nero AG для утилиты Nero Burning ROM. Он используется для хранения образов дисков. Однако, кроме Nero Burning ROM, эти файлы образов могут использоваться в различных программах. Например, Alcohol 120% или Daemon Tools могут монтировать файлы NRG на виртуальные диски для чтения.
Вопреки распространенному мнению, файлы NRG не являются ISO-образами с расширением .nrg и прикрепленным заголовком. Они могут хранить звуковые дорожки для аудио компакт-дисков, чего не могут сделать образы ISO. Формат NRG Nero является одним из немногих форматов, помимо BIN/CUE, MDF/MDS Alcohol 120% и форматов образов дисков CCD/IMG/SUB CloneCD, которые поддерживают компакт-диски смешанного режима - которые содержат дорожки аудио компакт-диска, а также дорожки данных.
Содержание
Формат файла
Приведенная ниже спецификация формата файла является неофициальной и поэтому в ней отсутствуют некоторые данные. Также могут быть ошибки.
Формат файла NRG использует вариант формата файла обмена (IFF) и хранит данные в цепочке «фрагментов». Все целочисленные значения хранятся без знака в порядке байтов с обратным порядком байтов . Формат NRG версии 1 хранит значения как 32-битные целые числа. В Nero Burning ROM v5.5 представлен новый формат файлов NRG версии 2 с поддержкой 64-битных целых чисел.
Заголовок
Формат NRG не хранит данные в виде заголовка в начале файла. Вместо этого он прикрепляется в конце файла как нижний колонтитул. Информация об изображении хранится в виде сериализованной цепочки фрагментов IFF . Чтобы получить смещение первого фрагмента, необходимо прочитать нижний колонтитул NRG из последних 8 или 12 байт файла.
Nero footer (Version 1)
Size (bytes)
|
Type
|
Value or purpose
|
4 |
Chunk ID |
"NERO"
|
4 |
32-bit |
Offset of the first chunk data chain
|
|
Nero footer (Version 2)
Size (bytes)
|
Type
|
Value or purpose
|
4 |
Chunk ID |
"NER5"
|
8 |
64-bit |
Offset of the first chunk data chain
|
|
Фрагменты
Доступно во всех версиях формата файла NRG.
Фрагмент CUEX представляет собой объединение блоков фиксированного размера, каждый из которых представляет ключевую точку.
Точки индекса 0 присутствуют, даже если они идентичны точкам индекса 1. Точки индекса 0 в звуковых дорожках неверны, если Nero было предложено записать все данные подканала (в этом случае размер сектора составляет 2448 байт). Никакого индекса, кроме 0 или 1, не обнаружено, хотя формат фрагмента позволяет записывать такие ключевые точки; таким образом, количество блоков меток всегда равно 2*(#track + 1): два индекса для каждой дорожки, индекс 0 для начала и индекс 1 для конца.
Version 1
Size (bytes)
|
Type
|
Value / Purpose
|
4 |
Chunk ID |
"CUES"
|
4 |
32-bit |
Chunk size (bytes)
|
|
Version 2
Size (bytes)
|
Type
|
Value / Purpose
|
4 |
Chunk ID |
"CUEX"
|
4 |
32bit |
Chunk size (bytes)
|
1 |
8bit |
Mode (values found: 0x01 for audio; 0x21 for non copyright-protected audio; 0x41 for data)
|
1 |
8bit |
Track number (BCD coded; 0xAA for the lead-out area)
|
1 |
8bit |
Index number (probably BCD coded)
|
1 |
8bit |
Padding? (always zero found)
|
4 |
32bit |
LBA position in sectors (signed integer value)
|
|
Доступно во всех версиях формата файла NRG.
Фрагменты DAOI хранят информацию, специфичную для сеанса диска, в двух частях. Первая часть содержит данные, специфичные только для сеанса. Вторая часть повторяет конкретную информацию о дорожке (серого цвета) один раз для каждой дорожки. Проанализируйте фрагменты SINF, чтобы получить количество дорожек для определенного сеанса.
Version 1
Size (bytes)
|
Type
|
Value / Purpose
|
4 |
Chunk ID |
"DAOI"
|
4 |
32bit |
Chunk size (bytes) big endian
|
4 |
32bit |
Chunk size (bytes) little endian
|
14 |
|
UPC
|
4 |
32bit |
Toc type
|
1 |
8bit |
First track
|
1 |
8bit |
Last track
|
12 |
|
ISRC
|
4 |
32bit |
Sector size
|
4 |
32bit |
Mode
|
4 |
32bit |
Index0 (Pre gap)
|
4 |
32bit |
Index1 (Start of track)
|
4 |
32bit |
Index2 (End of track + 1)
|
|
Version 2
Size (bytes)
|
Type
|
Value / Purpose
|
4 |
Chunk ID |
"DAOX"
|
4 |
32bit |
Chunk size (bytes) big endian
|
4 |
32bit |
Chunk size (bytes) (big endian already encountered; maybe also little endian on some machines)
|
13 |
Text |
UPC (or NULLs)
|
1 |
8-bit |
Padding? (always NULL found)
|
2 |
16-bit |
Toc type (values already found: 0x0000 for audio; 0x0001 for data; 0x2001 for Mode 2/form 1 data)
|
1 |
8bit |
First track in the session
|
1 |
8bit |
Last track in the session
|
12 |
Text |
ISRC (or NULLs)
|
2 |
16bit |
Sector size in the image file (bytes)
|
2 |
16bit |
Mode of the data in the image file (values already found: 0x0700 for audio; 0x1000 for audio with sub-channel; 0x0000 for data; 0x0500 for raw data; 0x0f00 for raw data with sub-channel; 0x0300 for Mode 2 Form 1 data; 0x0600 for raw Mode 2/form 1 data; 0x1100 for raw Mode 2/form 1 data with sub-channel)
|
2 |
16bit |
Unknown (always 0x0001 found)
|
8 |
64bit |
Index0 (Pre-gap) (bytes)
|
8 |
64bit |
Index1 (Start of track) (bytes)
|
8 |
64bit |
End of track + 1 (bytes)
|
|
Доступен в формате файла NRG версии 2.
Фрагмент CDTX представляет собой объединение необработанных пакетов CD-текста по 18 байт каждый.
Версия 2
Размер (байты)
|
Тип
|
Ценность/Цель
|
4
|
ID фрагмента
|
"CDTX"
|
4
|
32бит
|
Размер фрагмента (байты)
|
1
|
8бит
|
Тип упаковки
|
1
|
8бит
|
Тип упаковки (трек-номер)
|
1
|
8бит
|
Номер упаковки в блоке
|
1
|
8бит
|
Номер блока и т. д.
|
12
|
Текст
|
Текстовые строки, разделенные NULL
|
2
|
16бит
|
CRC
|
Доступно во всех версиях формата файла NRG.
Фрагменты ETNF используются для хранения информации отслеживания для сеансов отслеживания сразу. Данные повторяются один раз для каждой дорожки. Проанализируйте фрагменты SINF, чтобы получить количество дорожек для определенного сеанса.
Version 1
Size (bytes)
|
Type
|
Value / Purpose
|
4 |
Chunk ID |
"ETNF"
|
4 |
32bit |
Chunk size (bytes)
|
4 |
32bit |
Track offset in image
|
4 |
32bit |
Track length (bytes)
|
4 |
32bit |
Mode
|
4 |
32bit |
Start lba on disc
|
4 |
|
?
|
|
Version 2
Size (bytes)
|
Type
|
Value / Purpose
|
4 |
Chunk ID |
"ETN2"
|
4 |
32bit |
Chunk size (bytes)
|
8 |
64bit |
Track offset in image
|
8 |
64bit |
Track length (bytes)
|
4 |
32bit |
Mode (values found: 0x7 for audio; 0x0 for data; 0x3 for Mode 2 data)
|
4 |
32bit |
Start lba on disc (sectors) (the start is after a lead-in of 150 sectors)
|
4 |
32bit |
Unknown (only zero found)
|
4 |
32bit |
Track length (sectors)
|
|
Доступно во всех версиях формата файла NRG.
Фрагменты информации о сеансе следует использовать для быстрого сканирования изображения на наличие сеанса и количества дорожек. Фрагменты SINF всегда перечисляются в последовательном порядке, соответствующем порядку сеансов. Чтобы получить более подробную информацию о конкретном сеансе, необходимо проанализировать соответствующий фрагмент DAOI или ETNF.
Версия 1 и 2
Размер (байты)
|
Тип
|
Ценность/Цель
|
4
|
ID фрагмента
|
"SINF"
|
4
|
32бит
|
Размер фрагмента (байты)
|
4
|
32бит
|
# треков в сессии
|
Доступно во всех версиях формата файла NRG.
Этот фрагмент и его использование неизвестны. Значение 1 (обратный порядок байтов) было обнаружено в образах нескольких компакт-дисков (аудио или данные; CD-ROM или CD-R).
Версия 1 и 2
Размер (байты)
|
Тип
|
Ценность/Цель
|
4
|
ID фрагмента
|
"MTYP"
|
4
|
32бит
|
Размер фрагмента (байты)
|
4
|
|
?
|
Встречается в изображениях TAO в формате файла NRG версии 2. Встречается в образах DAO в версии формата файла NRG только в том случае, если Nero попросили не закрывать диск.
Этот фрагмент и его использование неизвестны.
Версия 2 (и 1?)
Размер (байты)
|
Тип
|
Ценность/Цель
|
4
|
ID фрагмента
|
"DINF"
|
4
|
32бит
|
Размер фрагмента (байты)
|
4
|
32бит
|
Неизвестно (найдено 0x1 для незакрытого диска; 0x0 в противном случае)
|
Встречается в изображениях TAO в формате файла NRG версии 2.
Этот фрагмент и его использование неизвестны.
Версия 2 (и 1?)
Размер (байты)
|
Тип
|
Ценность/Цель
|
4
|
ID фрагмента
|
"TOCT"
|
4
|
32бит
|
Размер фрагмента (байты)
|
2
|
|
Неизвестно (всегда найден ноль)
|
Встречается в изображениях TAO в формате файла NRG версии 2.
Этот фрагмент и его использование неизвестны.
Версия 2 (и 1?)
Размер (байты)
|
Тип
|
Ценность/Цель
|
4
|
ID фрагмента
|
"RELO"
|
4
|
32бит
|
Размер фрагмента (байты)
|
4
|
|
Неизвестно (всегда найден ноль)
|
Доступно во всех версиях формата файла NRG.
Конец фрагмента цепочки — это сигнал о том, что фрагментов для чтения больше нет.
Версия 1 и 2
Размер (байты)
|
Тип
|
Ценность/Цель
|
4
|
ID фрагмента
|
"END!"
|
4
|
32бит
|
Размер фрагмента (всегда ноль)
|
[[Категория:Форматы архивов]]
[[Категория:Страницы с непроверенными переводами]]
|
|