*** Welcome to piglix ***

NRG (file format)

NRG
Filename extension .nrg
Uniform Type Identifier (UTI) com.nero.nrg-image
UTI conformation public.iso-image,
com.apple.disk-image,
public.archive,
public.data,
public.item,
public.disk-image
Developed by Nero AG
Type of format disk image
Container for filesystem and volumes

An NRG file is a proprietary optical disc image file format originally created by Nero AG for the Nero Burning ROM utility. It is used to store disc images. Other than Nero Burning ROM, however, a variety of software titles can use these image files. For example, Alcohol 120%, or Daemon Tools can mount NRG files onto virtual drives for reading.

Contrary to popular belief, NRG files are not ISO images with a .nrg extension and a header attached. They can store audio tracks for Audio CDs, which ISO images cannot.

The file format specification below is unofficial and as such is lacking some data. There may also be errors.

The NRG file format uses a variation of the Interchange File Format (IFF) and stores data in a chain of "chunks". All integer values are stored unsigned in big endian byte order. Version 1 NRG format stores values as 32-bit integers. Nero Burning ROM v5.5 introduced a new NRG file format, version 2, with support for 64-bit integers.

The NRG format does not store its data as a header at the beginning of a file. It is instead attached at the end of the file like a footer. Image information is stored as a serialized chain of IFF chunks. To get the offset of the first chunk one must read the NRG footer from the last 8 or 12 bytes of the file.

Available in all versions of NRG file format.

The CUEX chunk is the concatenation of fixed-size blocks, each one representing a cue point.

The index0 points are present even when they are identical to the index1 ones. The index0 points in audio tracks are incorrect if Nero has been asked to record all the sub-channel data (in that case the sector size is 2448 bytes). No index other than 0 or 1 has been encountered, although the chunk format allows for such cue points to be recorded; thus the number of cue blocks seems to be always 2*(#track + 1): two indices for each track, an index0 for the lead-in and an index1 for the lead-out.


...
Wikipedia

...