Extract audio and cue sheet from an NRG audio CD image.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Matteo Cypriani 21ab587686 Update copyright dates 6 years ago
src Update copyright dates 6 years ago
tests Add minimalistic integration tests 7 years ago
.gitignore Add .gitignore 7 years ago
COPYING Update copyright dates 6 years ago
Cargo.lock cargo update 6 years ago
Cargo.toml Use getopts to parse command-line 7 years ago
Makefile README: rework into a Ronn manpage 6 years ago
README.md README: rework into a Ronn manpage 6 years ago


nrgrip(1) - rip Nero Burning ROM audio NRG images


nrgrip [-icrx] [options] <image.nrg>

nrgrip [-h | -V]


NRGrip works on a Nero Burning ROM's NRG image of an audio CD and is able to:

  • read and display its metadata;

  • extract the cue sheet;

  • extract the raw audio tracks as one single file, which can then be encoded by the user to a more convenient audio format such as FLAC, and possibly split according to the cue sheet.

For now, only NRG v2 is handled (not NRG v1), and not all of the metadata chunks are decoded. If you have interest in adding support for additional chunks or formats and have a test image handy, please contact the author or open an issue. In particular, it would be interesting to support ISRC/CD-Text; handling of multisession and hybrid (audio and data) discs would also be a nice feature.


At least one action switch must be provided, along with any number of option switches.


  • -i, --info: display the NRG image metadata (default action)

  • -c, --extract-cue: extract cue sheet from the NRG metadata

  • -r, --extract-raw: extract the raw audio tracks

  • -x, --extract: same as -cr

Additional options

  • -S, --no-strip-subchannel: don't strip the 96-bit subchannel from the extracted audio data (this option has no effect if the input image has standard 2352-byte sector size)


The following command will display the metadata and extract both the cue sheet and the audio data:

nrgrip -ix image.nrg

The cue sheet will be extracted as image.cue, and the audio data as image.raw in the current directory.

The raw audio data from a CD is 16 bit, little endian, 44100 Hz, stereo. To play it, you may use, for instance, aplay from the ALSA utils, or ffplay from FFmpeg:

aplay -f cd image.raw
ffplay -f s16le -ac 2 image.raw

Note that you can also play the NRG file directly, if the sector size is 2352 (no sub-channel).

To encode the raw audio data to FLAC (and embed the cue sheet in it):

flac --endian=little --sign=signed --channels=2 --bps=16 \
  --sample-rate=44100 --cuesheet=image.cue image.raw

To split the FLAC file according to the cue sheet, you may use, cuetools and shntool:

cuebreakpoints image.cue | shnsplit -o flac image.flac

Or mp3splt:

mp3splt -c image.cue image.flac


NRGrip is written in Rust. Make sure Cargo is installed on your system, then you can install directly from the Git repository with:

cargo install --git https://code.lm7.fr/mcy/nrgrip.git

Or if you cloned the repository already:

cargo build --release
cargo install

You may also generate the manpage with:


NRGrip was written by Matteo Cypriani <mcy@lm7.fr> and is licensed under the terms of the Expat (MIT) license. See the COPYING file.


Additional information can be found on NRGrip's wiki.