cdrtools

cdrtools
Original author(s) Jörg Schilling, Eric Youngdale, Heiko Eißfeldt, James Pearson
Developer(s) Jörg Schilling
Initial release 4 February 1996 (1996-02-04)
Stable release 3.01 (26 August 2015 (2015-08-26)) [±][1]
Preview release 3.02a07 (15 December 2016 (2016-12-15)) [±][2]
Repository sourceforge.net/projects/cdrtools/files/
Development status Active
Written in C
Operating system Cross-platform
Available in English
Type Optical disc authoring software
License CDDL, GNU GPL and GNU LGPL
Website cdrtools.sourceforge.net

cdrtools (formerly known as cdrecord) is a collection of independent projects of free software/open source computer programs, created by Jörg Schilling and others.

The most important parts of the package are cdrecord, a console-based burning program; cdda2wav, a CD audio ripper that uses libparanoia; and mkisofs, a CD/DVD/BD/UDF/HFS filesystem image creator. Because these tools do not include any GUI, many graphical front-ends have been created.

Features

The collection includes many features for CD, DVD and Blu-ray disc writing such as:

History

Origins and name change

The first releases of cdrtools were called cdrecord because they only included the cdrecord tool and a few companion tools, but not mkisofs nor cdda2wav. In 1997, a copy of mkisofs[3] (developed at that time by Eric Youngdale) was included in the cdrecord package. In 1998, a copy of an experimental version of cdda2wav[4] (developed at that time by Heiko Eißfeldt) was included in the cdrecord package.

In 2000, Jörg Schilling changed the name of his package from "cdrecord" to "cdrtools"[5] to better reflect the fact that it had become a collection of tools.

DVD and Blu-ray disc writing support

DVD writing support (cdrecord-ProDVD) in cdrecord started 1998, but since the relevant information required a non-disclosure agreement and DVD writers were not publicly available, it was not included in the source code. In 2002, Jörg Schilling started offering free license keys to the closed-source variant cdrecord-ProDVD for educational, and research use, shortly thereafter also for private use. Unregistered free licenses were initially limited to single-speed writing and would expire every year. On 15 May 2006, support for DVD writing was added to the open-source version 2.01.01a09 after switching the license to CDDL; thereby removing the need to get a license key. Blu-ray disc support was added starting 2007.

The lack of open-source DVD writing support in 2001 led to heated discussions on the mailing lists, and to a number of unofficial patches for supporting the Pioneer DVD-R A03, the first DVD writer to reach mass market, and forks of cdrecord: Mandrake shipped a version called cdrecord-dvdhack,[6] whereas Redhat had dvdrecord.[7]

Hardware access controversy

Unlike cdrkit and libburnia, which use device files to access the hardware, cdrtools uses a different method known as CAM (for Common Access Method),[8] which is available on many operating systems, including some which lack device files or only allow the kernel to access them. This difference has turned into a controversy: some Linux users claim that the method used by cdrtools is not appropriate, while users of cdrtools do not even need to know which method is used.

In cdrtools, burning optical media (such as CDs, DVDs and Blu-rays discs) is done through the SCSI interface. Users of systems with more than one burning device need to provide a SCSI device (which is identified by a triplet of numbers, scsibus,target,lun). Users of systems with only one burning device, however, do not need to specify the SCSI device since cdrtools is able to find it. By 2002 more and more burners were using the ATAPI interface. Linux 2.6 allowed the users to detect the SCSI ID of a device from its UNIX device path (/dev/hdX) and a patch was published that made identifying the burner device for cdrecord simpler by allowing the user to specify the /dev/hdX device name (or even default to a udev managed link such as /dev/cdrw). Schilling, however, rejected this approach as well as other modifications used by Linux distributions, with the rationale that it would make the software more complex and less portable as this function was not available on other UNIX systems.[9] Linus Torvalds states that SCSI LUNs should not be used for addressing devices on Linux,[10] because these numbers are not unique,[10] and do not make sense for many devices anymore[11] (many devices will report 0:0:0 fake numbers[11]). Instead Torvalds recommends that devices should be addressed via their UUID, physical connection, or an alias symlink[11] as managed by udev on Linux. Torvalds pointed out that the ioctl's have been kept to ensure cdrecord compatibility[12] and do not return a meaningful value.[13]

License compatibility controversy

By 2004, Linux distributions were maintaining a number of unofficial changes  such as allowing the use of /dev/hdX device names and (limited) DVD writing support  that were rejected by Schilling,[9] who repeatedly demanded that distributions stop shipping "bastardized and defective" versions of his "legal original software".[14] Starting with version 2.01.01a09 in May 2006, most code from cdrtools has been relicensed under the CDDL, while mkisofs remains licensed under the GPL.[15] This change led to an ongoing disagreement about whether distribution or use of precompiled cdrtools binaries is legally possible (the GPL permits collective works, but not derivative works; and the Makefiles used to build mkisofs are CDDL licensed). The following are one-sentence summaries of the different positions:

As of November 2015, in consequence of this discussion:

Version history

Version history of cdrtools
Project name Preview releases Stable release Notes
first last version date
cdrecord Old version, no longer supported: 1.00 1996-02-04
Old version, no longer supported: 1.01 1996-10-04
Old version, no longer supported: 1.02 1996-12-20
Old version, no longer supported: 1.03 1997-05-16
Old version, no longer supported: 1.04 1997-05-23
1.5a1 1.5a9 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="1.05" | Old version, no longer supported: 1.05 1997-09-15
1.6a01 1.6a15 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="1.06" | Old version, no longer supported: 1.06 1998-04-18
1.6.1a1 1.6.1a7 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="1.06.1" | Old version, no longer supported: 1.06.1 1998-10-19
1.8a01 1.8a40 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="1.08" | Old version, no longer supported: 1.08 2000-01-28
1.8.1a01 1.8.1a09 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="1.08.1" | Old version, no longer supported: 1.08.1 2000-04-27
1.9a01 1.9a05 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="1.09" | Old version, no longer supported: 1.09 2000-07-20
cdrtools 1.10a01 1.10a19 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="1.10" | Old version, no longer supported: 1.10 2001-04-22
1.11a01
2.0pre1
1.11a40
2.0pre3
style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="2.00" | Old version, no longer supported: 2.00 2002-12-25 DVD-Video support since July 2002.[29]
style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="2.00.3" | Old version, no longer supported: 2.00.3 2003-05-28
2.01a01 2.01a38 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="2.01" | Old version, no longer supported: 2.01 2004-09-09 This series was the last GPL-licensed version and was used as base for the fork cdrkit.
2.01.01a01 2.01.01a80 style="background-color: #FDB3AB; " title="Old version, no longer supported" data-sort-value="3.00" | Old version, no longer supported: 3.00[30][31] 2010-06-02 On May 2006, most parts of cdrtools were switched to the CDDL.[15] Blu-ray support is available since July 2007[32]
3.01a01 3.01a31 class="templateVersion c" style="background-color: #D4F4B4; " title="Current stable version" data-sort-value="3.01" | Current stable version: 3.01[1] 2015-08-26[1]
3.02a01 class="templateVersion cp" style="background-color: #FED1A0; " title="Latest preview version of a future release" data-sort-value="3.02a07[2]" | Latest preview version of a future release: 3.02a07[2] Future release: 3.02 TBA DVD-Audio support since December 2015.[33]
Legend:
Old version
Older version, still supported
Latest version
Latest preview version
Future release

See also

Forks

Software that can use cdrtools

References

  1. 1 2 3 4 Schilling, Jörg (26 August 2015). "cdrtools 3.01 announcement and release notes". cdrtools.sourceforge.net. Retrieved 2015-08-28.
  2. 1 2 3 Schilling, Jörg (15 December 2016). "cdrtools 3.02a07 announcement". cdrtools.sourceforge.net. Retrieved 2016-12-17.
  3. mksofs-1.11 was incorporated to cdrecord-1.5a3 on 5 July 1997 (source: AN-1.5a3)
  4. cdda2wav-0.95beta07 was incorporated to cdrecord-1.8a6 on 27 October 1998 (source: AN-1.8a6)
  5. cdrecord and its friends (mkisofs and cdda2wav) are distributed in a common package called cdrtools since 27 July 2000 (source: AN-1.10a01).
  6. "Support / Security / Advisories / Mandrakelinux 8.2 / MDKA-2002:011-1 / Mandriva". Mandriva. Retrieved 2014-10-16. cdrecord-dvdhack-1.11-0.a31.1.1mdk.ppc.rpm shows that Mandrake maintained a "cdrecord-dvdhack" version.
  7. "dvdrtools - dvdrecord". Archived from the original on 1 December 2002. Retrieved 2014-04-12.
  8. "Common Access Method Transport and SCSI Interface Module". International Committee for Information Technology Standards. 29 December 2011. Retrieved 2016-01-24.
  9. 1 2 Jonathan Corbet (2004-08-11). "The value of middlemen". LWN.net. Retrieved 2014-04-07.
  10. 1 2 Torvalds, Linus (2006-03-27). "Re: [PATCH] Move SG_GET_SCSI_ID from sg to scsi". LKML. Retrieved 2015-10-22. the SCSI ID simply doesn't make sense to [Many (most) Linux devices] and they have none. So it's _not_ a unique ID.
  11. 1 2 3 Torvalds, Linus (2006-03-27). "Re: [PATCH] Move SG_GET_SCSI_ID from sg to scsi". LKML. Retrieved 2015-10-22.
  12. Torvalds, Linus (2006-03-27). "Re: [PATCH] Move SG_GET_SCSI_ID from sg to scsi". LKML. Retrieved 2015-10-22. it does a few ioctl's that cdrecord wanted [...] does NOT try to claim that those numbers "mean" anything [...] BUS/ID/LUN crap really doesn't make sense for the majority of devices out there. Never has, never will.
  13. "Linux source code, scsi_ioctl.c, function scsi_get_idlun". Linux Cross Reference. Retrieved 2015-10-22. return put_user(0, p); [i.e. they always yield 0]
  14. Corbet, Jonathan (2009-08-12). "The unending story of cdrtools". LWN.net. Retrieved 26 February 2014.
  15. 1 2 The license change took place on 15 May 2006, when cdrtools-2.01.01a09 was released. (Source: AN-2.01.01a09)
  16. Jonathan Corbet. "cdrtools - a tale of two licenses". LWN.net. Retrieved 2007-08-04.
  17. Joerg Schilling (2011-06-27). "Comment 17 for bug 213215". Ubuntu bug tracking. Nobody is violating a license for distributing cdrtools either in source or in binary form.
  18. 1 2 https://fedoraproject.org/wiki/Forbidden_items
  19. "#377109 - RM: cdrtools -- RoM: non-free, license problems - Debian Bug report logs". Retrieved 2007-08-04.
  20. "Information for build cdrtools-2.01-11.fc7". Retrieved 2007-08-04. moved back to version 2.01 (last GPL version), due to incompatible license issues
  21. "[Fedora-legal-list] Legal CD/DVD/BD writing software for RedHat and Fedora".
  22. "Minutes from the Technical Board meeting, 2008-08-26". Retrieved 2008-09-15.
  23. "cdrkit (fork of cdrtools) uploaded to Debian, please test". Retrieved 2007-08-04.
  24. "Mandriva Cooker : The Inside Man V". Retrieved 2007-08-04.
  25. "Mandriva SA official blog: Mandriva Linux will return to the community". Mandriva. 17 May 2012. Archived from the original on 23 May 2015. Retrieved 2015-12-13.
  26. Packages of cdrtools for OpenMandriva Lx are available from both the OpenMandriva Association at and RosaLabs's auto build farms at .
  27. openSUSE 10.3 release notes
  28. "CDRTools.org : The unofficial cdrtools website to ease building cdrtools from source". Retrieved 2014-11-16.
  29. Full DVD-Video support (in mkisofs), contributed by Olaf Beck, was added to preview release 1.11a27 on 21 July 2002 (Source: AN-1.11a27) and to stable release 2.00 on 25 December 2002 (Source: AN-2.00)
  30. Schilling, Jörg (18 May 2010). "cdrtools 3.00 release announcement". Retrieved 2010-05-18.
  31. Schilling, Jörg (2 June 2010). "cdrtools 3.00 release notes". Retrieved 2010-06-02.
  32. Support for Blu-ray Discs was added on 4 July 2007 to cdrtools 2.01.01a29. (Source: AN-2.01.01a29)
  33. DVD-Audio support (in mkisofs), contributed by the DVD audio Tools project credits to authors Jerome Brock and Fabrice Nicol are in source file mkisofs/udf.c and available in the external packages folder of dvda-author as a patch against cdrtools 3.00, has been refreshed and included in cdrtools 3.02a04 on 16 December 2015. (Source: AN-3.02a04)
  34. "dvdrtools - Summary". GNU Savannah. 2002-01-28. Retrieved 2016-01-24. dvdrtools is a fork of cdrtools/cdrecord with support for writing to DVDs.
  35. "dvdrtools - News: dvdrtools 0.2.0 released". GNU Savannah. 2005-02-05. Retrieved 2016-01-24. dvdrtools 0.2.0 has been released. (This was the last release of dvdrtools before the project was abandoned.)
  36. "cdrtfe - open source CD/DVD/BD burning program for Microsoft Windows". cdrtfe.sourceforge.net. Retrieved 2015-11-28. cdrtfe is a win32 frontend for the cdrtools (cdrecord, mkisofs, readcd, cdda2wav), Mode2CDMaker, VCDImager and other well-known tools.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.