Cdda2wav Logo Last Update: Wed Oct 20 17:17:17 MET 2015
Latest stable version is: Cdrtools-3.01

Contact the author: heiko at hexco dot de (not allowed for spamming)

Last release: Cdrtools-3.01a31 alpha releases: See alpha versions directory

Wed Oct 20 17:17:17 MET 2015

Latest changes:

  • Cdda2wav can now use C2 pointers for analysis. Activate with -paranoia -paraopts=proof.
  • Cdda2wav adds an alternative grabbing method from Monty's cdparanoia. Activate with -paranoia.
  • Finally cdda2wav got cddbp title lookups! A new option (-L) has been added. Use -L0 for interactive choice from multiple responses, or use -L1 for forcing the first entry.
  • Cdda2wav now recognizes Serial Copy Management System stati (SCMS).

Future plans:

  • support encoders like Ogg Vorbis, FLAC, (maybe Monkeys Audio). I cannot add the lame encoder, because of licensing issues (although its technically no problem to integrate it).
  • be able to create all TOC data from an analysis pass. This would base the TOC data on the subchannel information.
I always welcome user feedback. If you want a feature very much, vote for it by email!


Cdda picture


Cdda2wav is a free compact disc digital audio CDDA grabber originally written for MSDOS, and later ported to Linux. It is distributed under the terms of the CDDL license. The copyright is held by Heiko Eißfeldt and Jörg Schilling. Cdda2wav has been developed with portability in mind. It runs on a variety of operating systems.

Cdda2wav performance features

  • uses realtime scheduling where available
  • uses a two process producer/consumer model with a ring buffer where possible
  • does address SCSI/ATAPI CDROM/DVD-readers and CD-writers directly with SCSI/ATAPI commands
  • can be run as non-root user
  • is prepared for on-the-fly recording

  • Cdda2wav usage features

  • can retrieve all or a range of audio tracks or any continous block of samples
  • includes an user switchable and automatic, dynamic jitter correction
  • can store different tracks in different directories(/filesystems)
  • can store different tracks with different given names or numbers them automatically
  • supports different audio output formats: raw/cdr, wav, sun-au, aiff, aifc
  • supports different output file types: regular files, pipes, and named pipes
  • includes an user switchable and automatic output sample endian setting
  • includes an user switchable and automatic input sample endian detection
  • optionally deemphasizes preemphasized recordings
  • can handle mixed mode and multisession cds
  • can output (pitched) sound through a sound card on supported platforms
  • can save audio tracks in mono/stereo, 8-/12-/16-bits per sample, and in a wide range of sampling rates
  • it has an automatic search for CDROM/CD-Writer devices like cdrecord

  • Cdda2wav analysis features

  • includes an index scanner to get positions of indices set on audio tracks
  • can retrieve Media Catalog Numbers (MCN)
  • can retrieve International Standard Recording Codes (ISRC)
  • can retrieve track titles from CD Extra (aka CD-Plus or Enhanced CD) and CD-Text
  • can retrieve track titles from FREECDDB servers
  • tries to handle audio cds, that violate the audio cd standard (red book)
  • can determine, if audio tracks are monophonic (both channels contain the same)
  • can determine the most negative and the most positive amplitude in a track
  • it has a scratch and dropout analysis from libparanoia
  • it does count C2 errors where available (with -paranoia -paraopts=proof)

  • Cdda2wav nonfeatures

  • it has no seperated cdda-reading library
  • cannot yet access CDINDEX tracktitle databases
  • it does not yet use threads

  • Gallery

    Cdda2wav screenshots
    • Cdda2wav with CD-Text running in an xterm
    • Cdda2wav with CD-Extra running in an xterm


    Jörg Schillings cdrtools home page


    Special thanks to the companies which sponsored me with free sample CD-Writers.

    Plextor Ricoh Sanyo Sony CyberDrive

    If you also want to be a sponsor, please contact me.