GNU Compact Disc Input and Control Library (libcdio) (original) (raw)
GNU Compact Disc Input and Control Library
The GNU Compact Disc Input and Control library (libcdio)
The GNU Compact Disc Input and Control library (libcdio) contains a library for CD-ROM and CD image access. Applications wishing to be oblivious of the OS- and device-dependent properties of a CD-ROM or of the specific details of various CD-image formats may benefit from using this library.
Some support for on-disk CD-image types like CDRWIN's BIN/CUE format, cdrdao's TOC format, and Nero's NRG format is available. Therefore, applications that use this library also have the ability to read on-disk CD images as though they were CDs.
A library for working with ISO-9660 filesystems (libiso9660) is included. A generic interface for issuing MMC (multimedia commands) is also part of the libcdio library.
The cdparanoia library and cdparanoia command are included making this the only single-source cdparanoia that works on FreeBSD, NetBSD, OSX, cygwin, Solaris, BSDI as well as GNU/Linux.
This list of projects using libcdio can be consulted for an idea of the range of applications using the library.
With the distribution is an OO interface via C++. (The C routines are also directly callable from C++). Access via Perl is available from CPAN via the Device::Cdio module. An interface from Pythonand twofrom Ruby are also available.
Sam May wrote some Haskell bindings; see here.
Utility Programs
cd-info
a program which displays CD information: number of tracks, CD-format and if possible basic information about the format. If libcddb is available, the cd-infoprogram will display CDDB matches on CD-DA discs. And if a new enough version of libvcdinfo is available (from the vcdimager project), then cd-info shows basic VCD information.
cd-drive
a program which decribes CD-ROM/DVD drive characteristics
cd-paranoia
a program for extracting audio from a CD in a jitter- and error-tolerant way.
cd-read
a program for performing low-level block reading of a CD or C image
cdda-player
a curses program using the audio controls to play a CD-DA through the audio output port.
iso-info
a program for displaying ISO-9660 information from an ISO-9660 image
iso-read
a program for extracting files from an ISO-9660 image
mmc-tool
a program for issuing some MMC commands
Download
Documentation
- Documentation – Documentation (including tutorial)
- API reference – API documentation courtesy of doxygen
- API reference for libcdio's CD-Paranoia – API documentation courtesy of doxygen
- CD Text Encoding and Decoding Guide
- Development – Instructions for accessing the git repository
Browse Source Code
- git (libcdio) – Browse libcdio source
- git (libcdio-paranoia) – Browse libcdio-paranoia source
- github (pycdio) – Browse pycdio source
- git (rbcdio) – Browse rbcdio source
- git (Perl) – Browse Perl Device::Cdio source
Other Links
- Mailing lists – GNU Mailman mailing lists
- Bug Tracker – Report Bugs here
- Project Page – The Githb Libcdio Organization page