Cdrtools is a group of independent software projects that together support reading and writing of CD/DVD/BluRay media. The oldest parts in the group of works contained in the bundle are libschily (which is an abstraction library just above or at libc level) from ~ 1984 and libscg (the oldest SCSI generic pass through system that allows to send any SCSI command to any SCSI device from userland) which is from August 1986. Everything is highly portable to aprox. 30 different OS platforms (not counting different CPU types twice). The core program "cdrecord" was created between December 1995 .. January 1996. The program "cdda2wav" from Heiko Eißfeldt started in 1993 - Linux only - and was converted to use the Schily portability framework in 1998. In 2004, Heiko handed over the management of the development to Jörg Schilling. The library "libparanoia" from Monty (Christopher Montgomery) started in 1997 as a patch on an old (Linux only) version of cdda2wav. Development by the original author ended in 2001. In 2004, the code was made portable by Jörg Schilling. Heiko Eißfeldt integrated calls to this library into cdda2wav. In May 2006, the license was changed from GPL to LGPL with permission from Christopher Montgomery. Many bug fixes and enhancements have been applied since the initial portable version was cdreated in 2004. The program "sfind" was written within a week in July 2004. In the time up to 2006, it was converted into the library "libfind" that can be used by any program in order to incorporate find(1) features directly from command line. This is usually done by implementing a "-find" option that separates the program options to the left and the find(1) options to the right. The program "mkisofs was started by Eric Youngdale in December 1993. Since 1997 Jörg Schilling has become the main author and in Autumn 1999, Eric Youngdale handed over the whole mkisofs project to Jörg Schilling. Since 2001, the name of the bundle was changed from cdrecord to "cdrtools". In 2004, the cdrtools projects was attacked by a group of Debian people including Eduard Bloch and Jörg Jaspert. These people stopped to update their sources from the master in May 2004 and started to add own code that did not serve a need (as the problems they claimed for their changes have not been present when using the original code). The modifications introduced by Bloch et. al. caused 100 Debian-specific bugs in the Debian bug tracing system that all could have been avoided by just updating to a recent original source. In September 2006, they updated their fork to a cdrtools source from September 2004, but managed to grant their self made problems even with the updated version. Aprox. a month later, they renamed the programs after they have been instructed to to so. Since May 2007, effectively no bug-fixes and no enhancements have been made on that project (now called "cdrkit"). Development on the original sources on the other side did continue with a similar speed as before the Debian initiated incident happened and now - 10 years later, cdrtools offer more than twice as many features than they did in September 2004. Amongst others, the following new features have been added since September 2004: - The man pages have been completely reworked for better readability. - A workaround for an incompatible SCSI interface change in the Linux kernel was added. - Plenty of bugs in mkisofs have been fixed. These bugs cause defective ISO images and as there is no development activity on the Debian fork, these bugs are all still present in cdrkit. - Mkisofs and it's helper programs like isoinfo(1) now support UTF-8 locales. - Mkisofs now supports Rock Ridge version 1.12 that includes inode numbers. - Mkisofs not supports to archive Rick Ridge time stamps in 1/100s granularity. - The Mkisofs speed was noticably enhanced. - The directory /rr_moved is not completely hidden and deep directory relocation works correctly. - Mkisoofs now supports to create filesystems with more than 65535 parent directories. - Mkisofs now supports multi-extent files (files > 4 GB). - Mkisofs includes "libfind" and thus can do many interesting things that cannot be done when the find features are not incorporated into mkisofs. - isoinfo now also supports -find - Mkisofs now has a working UTF-8 support included. - A larger contribution to the UDF code in mkisofs from a German company (Helios.de) was added. This includes better UTF-8 support, support for symlinks with UDF and Apple specific UDF enhancements. - Mkisofs now supports El Torito multi-boot images - Mkisofs now supports EFI boot. - The DVD support code from 1998 (introduced as closed source because of an NDA) has been made OpenSource. - Dual Layer DVD support (including special support for layer break at a specific sector number for DVD-Video) was added to cdrecord and mkisofs. - Support for BluRay was added. - Support for other file types (character special, block special, FIFO, SOCKET) and support for UNIX file permissions (including SUID Root ...) and for all UNIX time stamps in microsecond granularity has been added to mkisofs. - A special configurable error control feature (that allows to ignore specific user defined errors) was add to mkisofs. - An EDC/ECC (Reed Solomon) decoder (repair library) was added. - Cdrtools now even compile for Android. - Cdrecord, cdda2wav and readcd now are able to send all SCSI commands (even vendor unique commsnds) to the drives without the need to become root or bening installed suid root. This is based on the fine grained privileges support that was added with 2.6.24. - Cdrecord added support to new vendor specific features. - Cdrecord no longer needs a dev= argument in case that there is only one CD drive on the system. - New option cdrecord -minfo prints information about the current state of the media. - The support for CDR-WIN CUE Sheets has been enhanced to support many enhancements from other programs that have not been in CDR-WIN. - Cdda2wav now also supports to create CUE files instead of *.inf files for the meta data of an Audio CD. - Enhanced support for CD-Text in cdda2wav and cdrecord - Cdrecord and cdda2wav now support to extract and write Audio CDs with hidden tracks. - Cdda2wav now supports a remote controlled interface via the new option -interactive that can be used by a GStreamer plugin. This gives better audio quality, avoids license problems with libcdio and prevents the GUI from being forced to become a privileges program.