nrgrip/README.md

73 lines
2.1 KiB
Markdown
Raw Normal View History

2016-12-09 03:24:05 +01:00
NRGrip - extract audio data and cue sheet from an NRG audio CD image
====================================================================
2016-12-07 04:54:05 +01:00
This program 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 a
ticket. 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.
NRGrip is licensed under the terms of the Expat (MIT) license. See the `COPYING`
file.
Installing
----------
NRGrip is written in Rust. Make sure [Cargo](http://doc.crates.io/) is installed
on your system, then:
cargo build --release
cargo install
Usage
-----
2016-12-09 03:24:05 +01:00
To see the full usage, run:
2016-12-07 04:54:05 +01:00
2016-12-09 03:24:05 +01:00
nrgrip --help
Basically, you can display the metadata and extract the data with:
nrgrip -ix image.nrg
2016-12-07 04:54:05 +01:00
The cue sheet will be extracted as `image.cue`, and the audio data as
`image.raw`.
2016-12-09 03:24:05 +01:00
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`:
2016-12-07 04:54:05 +01:00
aplay -f cd image.raw
2016-12-09 03:24:05 +01:00
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).
2016-12-07 04:54:05 +01:00
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](https://github.com/svend/cuetools) and
[shntool](http://www.etree.org/shnutils/shntool/):
cuebreakpoints image.cue | shnsplit -o flac image.flac
Or [mp3splt](http://mp3splt.sourceforge.net/):
mp3splt -c image.cue image.flac