From 384c47c71010f210ce8b17c3006e832fcc35e8da Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Sat, 10 Feb 2007 17:13:41 +0000 Subject: [PATCH] Made number transition and activated development documentation --- Makefile.am | 4 +- README | 6 +- cdrskin/README | 12 +-- cdrskin/cdrskin.c | 26 +++--- cdrskin/cdrskin_eng.html | 165 ++++++++++++++++++++---------------- cdrskin/cdrskin_timestamp.h | 2 +- cdrskin/compile_cdrskin.sh | 10 +-- cdrskin/wiki_plain.txt | 14 +-- configure.ac | 4 +- 9 files changed, 134 insertions(+), 109 deletions(-) diff --git a/Makefile.am b/Makefile.am index e2255bf..016a96a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -101,9 +101,9 @@ test_structest_CPPFLAGS = -Ilibburn test_structest_LDADD = $(libburn_libburn_la_OBJECTS) $(THREAD_LIBS) test_structest_SOURCES = test/structest.c -## cdrskin construction site - ts A60816 - A70116 +## cdrskin construction site - ts A60816 - A70210 cdrskin_cdrskin_CPPFLAGS = -Ilibburn -cdrskin_cdrskin_CFLAGS = -DCdrskin_libburn_0_3_1 +cdrskin_cdrskin_CFLAGS = -DCdrskin_libburn_0_3_3 cdrskin_cdrskin_LDADD = $(libburn_libburn_la_OBJECTS) $(THREAD_LIBS) cdrskin_cdrskin_SOURCES = cdrskin/cdrskin.c cdrskin/cdrfifo.c cdrskin/cdrfifo.h cdrskin/cdrskin_timestamp.h ## diff --git a/README b/README index 375655a..1aec384 100644 --- a/README +++ b/README @@ -67,7 +67,7 @@ we would need : login on a development machine resp. a live OS on CD or DVD, advise from a system person about the equivalent of Linux sg or FreeBSD CAM, volunteers for testing of realistic use cases. -We have a workable code base for burning CD and most single layer DVD, though. +We have a workable code base for burning CD and most single layer DVD. The burn API is quite comprehensively documented and can be used to build a presentable application. We have a functional binary which emulates parts of cdrecord in order to @@ -190,7 +190,9 @@ Project history as far as known to me: by dvd+rw-tools' "poor man" writing facility for this class of media. Taking a bow towards Andy Polyakov. -- Upcoming release will cover sequential DVD-RW and DVD-R. +- 11th February 2007 version 0.3.2 covers sequential DVD-RW and DVD-R with + multi-session and with DAO. + This means all single layer DVD media except DVD+R are supported now. ------------------------------------------------------------------------------ diff --git a/cdrskin/README b/cdrskin/README index 126ddcd..b574006 100644 --- a/cdrskin/README +++ b/cdrskin/README @@ -26,12 +26,12 @@ following possible. cdrskin. By Thomas Schmitt Integrated sub project of libburnia.pykix.org but also published via: http://scdbackup.sourceforge.net/cdrskin_eng.html -http://scdbackup.sourceforge.net/cdrskin-0.3.1.tar.gz +http://scdbackup.sourceforge.net/cdrskin-0.3.3.tar.gz Copyright (C) 2006-2007 Thomas Schmitt ------------------------------------------------------------------------------ -On top of libburn there is implemented cdrskin 0.3.1, a limited cdrecord +On top of libburn there is implemented cdrskin 0.3.3, a limited cdrecord compatibility wrapper which allows to use some libburn features from the command line. Interested users of cdrecord are invited to participate in the development @@ -59,16 +59,16 @@ systems, including 64 bit systems. (Further reports are welcome.) Compilation, First Glimpse, Installation -Obtain cdrskin-0.3.1.tar.gz, take it to a directory of your choice and do: +Obtain cdrskin-0.3.3.tar.gz, take it to a directory of your choice and do: - tar xzf cdrskin-0.3.1.tar.gz - cd cdrskin-0.3.1 + tar xzf cdrskin-0.3.3.tar.gz + cd cdrskin-0.3.3 Or obtain a libburnia.pykix.org SVN snapshot, go into the toplevel directory of the snapshot (e.g. cd libburn_pykix ), and execute the autotools script ./bootstrap . Use autools version >= 1.7 . -Within that toplevel directory of either cdrskin-0.3.1 or libburn then execute: +Within that toplevel directory of either cdrskin-0.3.3 or libburn then execute: ./configure make diff --git a/cdrskin/cdrskin.c b/cdrskin/cdrskin.c index ec22143..3f706c3 100644 --- a/cdrskin/cdrskin.c +++ b/cdrskin/cdrskin.c @@ -86,7 +86,7 @@ or /** The official program version */ #ifndef Cdrskin_prog_versioN -#define Cdrskin_prog_versioN "0.3.1" +#define Cdrskin_prog_versioN "0.3.3" #endif /** The source code release timestamp */ @@ -119,23 +119,24 @@ or #endif /* Cdrskin_libburn_cvs_A60220_tS */ -#ifdef Cdrskin_libburn_0_3_0 -#define Cdrskin_libburn_versioN "0.3.0" +#ifdef Cdrskin_libburn_0_3_2 +#define Cdrskin_libburn_versioN "0.3.2" #define Cdrskin_libburn_from_pykix_svN 1 -#endif /* Cdrskin_libburn_0_3_0 */ +#endif /* Cdrskin_libburn_0_3_2 */ -#ifdef Cdrskin_libburn_0_3_1 -#define Cdrskin_libburn_versioN "0.3.1" +#ifdef Cdrskin_libburn_0_3_3 +#define Cdrskin_libburn_versioN "0.3.3" #define Cdrskin_libburn_from_pykix_svN 1 -#define Cdrskin_libburn_has_get_msc1 1 -#define Cdrskin_libburn_has_toc_entry_extensionS 1 -#define Cdrskin_libburn_has_get_multi_capS 1 +/* Place novelty switch macros here. + Move them down to Cdrskin_libburn_from_pykix_svN on version leap +*/ +/* no novelties yet */ -#endif /* Cdrskin_libburn_0_3_1 */ +#endif /* Cdrskin_libburn_0_3_3 */ #ifndef Cdrskin_libburn_versioN -#define Cdrskin_libburn_versioN "0.3.0" +#define Cdrskin_libburn_versioN "0.3.2" #define Cdrskin_libburn_from_pykix_svN 1 #endif @@ -168,6 +169,9 @@ or #define Cdrskin_libburn_has_wrote_welL 1 #define Cdrskin_libburn_has_bd_formattinG 1 #define Cdrskin_libburn_has_burn_disc_formaT 1 +#define Cdrskin_libburn_has_get_msc1 1 +#define Cdrskin_libburn_has_toc_entry_extensionS 1 +#define Cdrskin_libburn_has_get_multi_capS 1 #ifdef Cdrskin_new_api_tesT diff --git a/cdrskin/cdrskin_eng.html b/cdrskin/cdrskin_eng.html index d1e8e61..1cbb41b 100644 --- a/cdrskin/cdrskin_eng.html +++ b/cdrskin/cdrskin_eng.html @@ -25,7 +25,7 @@

Purpose:

@@ -34,9 +34,9 @@

Hardware requirements:

-A CD recorder suitable for +A CD/DVD recorder suitable for libburnia.pykix.org -(SCSI or IDE/ATAPI writers compliant to mmc-3 standard). +(SCSI or IDE/ATAPI writers compliant to standard MMC-3 or higher).

@@ -56,7 +56,7 @@ A CD recorder suitable for GPL software included:
-
libburn-0.3.0
+
libburn-0.3.2
(by Derek Foreman, Ben Jansens, and team of libburnia.pykix.org)
transfers data to CD
@@ -88,41 +88,74 @@ and for data CD projects of K3b (see examples). Suitability for audio CD frontends has been improved much and is now being evaluated.
-DVD are written in a pseudo -tao mode which is very different from the -write mode used by cdrecord(-ProDVD).
+Most DVD types are written in pseudo -tao modes which are very different +from the write mode DAO used by cdrecord(-ProDVD). With DVD-R[W] cdrskin +can use this write mode, too.
Further enhancements depend on people who can describe and discuss their wishes as well as on the development of libburn.

-
Get an overview of drives:
-
$ cdrskin -scanbus
-
$ cdrskin dev=ATA -scanbus
-
$ cdrskin --devices
+
Get an overview of drives and their addresses:
+
$ cdrskin -scanbus
+
$ cdrskin dev=ATA -scanbus
+
$ cdrskin --devices
+
Get info about a particular drive or loaded media:
-
$ cdrskin dev=0,1,0 -checkdrive
-
$ cdrskin dev=ATA:1,0,0 -atip
-
$ cdrskin dev=/dev/hdc -toc
-
Make used CD-RW writable again:
-
$ cdrskin -v dev=/dev/sg1 blank=all -eject
-
$ cdrskin -v dev=/dev/dvd blank=fast -eject
-
Format DVD-RW before first use with cdrskin
-
$ cdrskin -v dev=0,1,0 blank=format_overwrite -eject
-
Write ISO-9660 filesystem image:
-
$ cdrskin -v dev=/dev/hdc speed=12 fs=8m driveropts=burnfree -eject padsize=300k my_image.iso
-
Write compressed afio archive on-the-fly :
-
$ find . | afio -oZ - | cdrskin -v dev=0,1,0 fs=32m speed=8 driveropts=burnfree padsize=300k -tao -
-
Write audio tracks:
-
$ cdrskin -v dev=ATA:1,0,0 speed=48 driveropts=burnfree -sao track1.wav track2.au -audio -swab track3.raw -
-
+
$ cdrskin dev=0,1,0 -checkdrive
+
$ cdrskin dev=ATA:1,0,0 -v -atip
+
$ cdrskin dev=/dev/hdc -toc
+ +
Make used CD-RW or used unformatted DVD-RW writable again:
+
$ cdrskin -v dev=/dev/sg1 blank=fast -eject
+
$ cdrskin -v dev=/dev/dvd blank=all -eject
+ +
Format DVD-RW to avoid need for blanking before re-use:
+
$ cdrskin -v dev=/dev/sr0 blank=format_overwrite
+ +
De-format DVD-RW to make it capable of multi-session again:
+
$ cdrskin -v dev=/dev/sr0 blank=deformat_sequential
+ +
Write ISO-9660 filesystem image as only one to blank or formatted media: +
+
$ cdrskin -v dev=/dev/hdc speed=12 fs=8m \
+
  -sao -eject padsize=300k my_image.iso
+ +
Write compressed afio archive on-the-fly:
+
$ find . | afio -oZ - | \
+
  cdrskin -v dev=0,1,0 fs=32m speed=8 \
+
  -tao padsize=300k -
+ +
Write several sessions to the same CD or DVD-R[W]:
+
$ cdrskin dev=/dev/hdc -v padsize=300k -multi -tao 1.iso +
+
$ cdrskin dev=/dev/hdc -v padsize=300k -multi -tao 2.iso +
+
$ cdrskin dev=/dev/hdc -v padsize=300k -multi -tao 3.iso +
+
$ cdrskin dev=/dev/hdc -v padsize=300k -tao 4.iso
+ +
Get CD or DVD-R[W] multi-session info for option -C of program mkisofs:
+
$ c_values=$(cdrskin dev=/dev/sr0 -msinfo 2>/dev/null)
+
$ mkisofs ... -C "$c_values" ...
+ +
Write audio tracks to CD:
+
$ cdrskin -v dev=ATA:1,0,0 speed=48 -sao \
+
  track1.wav track2.au -audio -swab track3.raw
+
Get overview of the cdrecord compatible options:
-
$ cdrskin -help
+
$ cdrskin -help
+
Get overview of the non-cdrecord options:
-
$ cdrskin --help
+
$ cdrskin --help
+
Read the detailed manual page:
-
$ man cdrskin
+
$ man cdrskin
+ + +
Read about the standard for which cdrskin is striving:
-
-$ man cdrecord
+
$  + +man cdrecord
Do not bother Joerg Schilling with any cdrskin problems. (Be cursed if you install cdrskin as "cdrecord" without clearly forwarding this "don't bother Joerg" demand.) @@ -157,8 +190,8 @@ rw-permissions and retry the bus scan as non-superuser.

Download as source code (see README):
-
cdrskin-0.3.0.pl01.tar.gz -(540 KB). +
cdrskin-0.3.2.pl00.tar.gz +(570 KB).
The "stable" cdrskin tarballs are source code identical with "stable" @@ -168,14 +201,14 @@ cdrskin is part of libburn - full libburn is provided with cdrskin releases.
 
Download as single x86 binaries (untar and move to /usr/bin/cdrskin):
-
-cdrskin_0.3.0.pl01-x86-suse9_0.tar.gz, (75 KB), +
+cdrskin_0.3.2.pl00-x86-suse9_0.tar.gz, (80 KB),
runs on SuSE 9.0 (2.4.21) , RIP-14.4 (2.6.14) , Gentoo (2.6.15 x86_64 Athlon).
-
-cdrskin_0.3.0.pl01-x86-suse9_0-static.tar.gz, (275 KB), -static compiled, +
+cdrskin_0.3.2.pl00-x86-suse9_0-static.tar.gz, (285 KB), -static compiled,
runs on SuSE 7.2 (2.4.4), and on the systems above.
@@ -202,32 +235,7 @@ cdrskin_0.3.0.pl01-x86-suse9_0-static.tar.gz, (275 KB), -static compiled,

-Enhancements towards previous stable version cdrskin-0.2.6: -

    -
  • Improved recognition of unsuitable media types
  • -
  • Ban of chmod u+s is replaced by a loud warning
  • -
  • Detailed man page
  • -
  • Burning to DVD+RW and DVD-RAM as non-multi, non-appending, -single-track session
  • -
  • Formatting and then burning to DVD-RW like to DVD+RW
  • -
  • Emulation of new wodim option msifile=path
  • -
-

-

-Bug fix towards previous patch level 0: -

    -
  • Tracks >= 2 GB were only possible via a pipe to stdin but not -directly from a disk file
  • -
-

- - -
- -

-

-

Development snapshot, version 0.3.1 :

-
Enhancements towards stable version 0.3.0: +Enhancements towards previous stable version cdrskin-0.3.0:
  • Burnfree enabled by default
  • Multi-session burning to DVD-R @@ -236,12 +244,23 @@ and sequential (i.e. unformatted) DVD-RW
  • Options -msinfo and msifile= with appendable DVD-R[W]
  • Single session DAO write mode with DVD-R[W]
+

+ +
+ +

+

+

Development snapshot, version 0.3.3 :

+
Enhancements towards stable version 0.3.2: +
    +
  • - none yet -
  • +
 
-
README 0.3.1 -
cdrskin_0.3.1 --help
-
cdrskin_0.3.1 -help
-
man cdrskin (as of 0.3.1)
+
README 0.3.3 +
cdrskin_0.3.3 --help
+
cdrskin_0.3.3 -help
+
man cdrskin (as of 0.3.3)
 
Maintainers of cdrskin unstable packages please use SVN of libburnia.pykix.org
@@ -261,15 +280,15 @@ admins with full system souvereignty. upcoming README ):
-cdrskin-0.3.1.tar.gz +cdrskin-0.3.3.tar.gz (570 KB).
Binary (untar and move to /usr/bin/cdrskin):
-
-cdrskin_0.3.1-x86-suse9_0.tar.gz, (80 KB). +
+cdrskin_0.3.3-x86-suse9_0.tar.gz, (80 KB).
-
-cdrskin_0.3.1-x86-suse9_0-static.tar.gz, (280 KB) +
+cdrskin_0.3.3-x86-suse9_0-static.tar.gz, (280 KB)

@@ -340,7 +359,7 @@ is a GUI frontend which uses cdrecord for CD burning.)
$ export SCDBACKUP_USE_CDRSKIN=1
$ ./CONFIGURE_CD
...
-
cdrskin 0.3.0 : limited cdrecord compatibility wrapper for libburn
+
cdrskin 0.3.2 : limited cdrecord compatibility wrapper for libburn
If your system is stricken with some ill CD device then this can stall and you will have to press Ctrl+C to abort. diff --git a/cdrskin/cdrskin_timestamp.h b/cdrskin/cdrskin_timestamp.h index 48ce18c..8e9dce1 100644 --- a/cdrskin/cdrskin_timestamp.h +++ b/cdrskin/cdrskin_timestamp.h @@ -1 +1 @@ -#define Cdrskin_timestamP "2007.02.08.225208" +#define Cdrskin_timestamP "2007.02.10.120001" diff --git a/cdrskin/compile_cdrskin.sh b/cdrskin/compile_cdrskin.sh index d6b45f0..72fd9fc 100755 --- a/cdrskin/compile_cdrskin.sh +++ b/cdrskin/compile_cdrskin.sh @@ -7,7 +7,7 @@ debug_opts= def_opts= largefile_opts="-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE=1" -libvers="-DCdrskin_libburn_0_3_1" +libvers="-DCdrskin_libburn_0_3_3" cleanup_src_or_obj="libburn/cleanup.o" libdax_msgs_o="libburn/libdax_msgs.o" libdax_audioxtr_o="libburn/libdax_audioxtr.o" @@ -33,15 +33,15 @@ do libdax_audioxtr_o= libdax_msgs_o="libburn/message.o" cleanup_src_or_obj="-DCleanup_has_no_libburn_os_H cdrskin/cleanup.c" - elif test "$i" = "-libburn_0_3_0" + elif test "$i" = "-libburn_0_3_2" then - libvers="-DCdrskin_libburn_0_3_0" + libvers="-DCdrskin_libburn_0_3_2" libdax_audioxtr_o="libburn/libdax_audioxtr.o" libdax_msgs_o="libburn/libdax_msgs.o" cleanup_src_or_obj="libburn/cleanup.o" elif test "$i" = "-libburn_svn" then - libvers="-DCdrskin_libburn_0_3_1" + libvers="-DCdrskin_libburn_0_3_3" libdax_audioxtr_o="libburn/libdax_audioxtr.o" libdax_msgs_o="libburn/libdax_msgs.o" cleanup_src_or_obj="libburn/cleanup.o" @@ -79,7 +79,7 @@ do echo " -compile_cdrfifo compile program cdrskin/cdrfifo." echo " -compile_dewav compile program test/dewav without libburn." echo " -cvs_A60220 set macro to match libburn-CVS of 20 Feb 2006." - echo " -libburn_0_3_0 set macro to match libburn-0.3.0." + echo " -libburn_0_3_2 set macro to match libburn-0.3.2." echo " -libburn_svn set macro to match current libburn-SVN." echo " -no_largefile do not use 64 bit off_t (must match libburn)." echo " -do_not_compile_cdrskin omit compilation of cdrskin/cdrskin." diff --git a/cdrskin/wiki_plain.txt b/cdrskin/wiki_plain.txt index ce165b7..1dbd6fa 100644 --- a/cdrskin/wiki_plain.txt +++ b/cdrskin/wiki_plain.txt @@ -10,9 +10,8 @@ Schilling's cdrtools. cdrskin strives to be a second source for the services traditionally provided by cdrecord. Currently it does CD-R and CD-RW this way. Overwriteable media DVD-RAM, DVD+RW and DVD-RW are handled differently than with cdrecord-ProDVD in order to offer TAO-like single track recording. -The current development version handles sequential DVD-R[W] like CD-R[W] -with TAO and multi-session. Additionally it offers cdrecord-like mode DAO with -DVD-R[W]. +Sequential DVD-R[W] are handled like CD-R[W] with TAO and multi-session. +Additionally cdrskin offers cdrecord-ProDVD-like mode DAO with DVD-R[W]. cdrskin does not contain any bytes copied from cdrecord's sources. Many bytes have been copied from the message output of cdrecord @@ -228,10 +227,11 @@ image and finally manipulates the start sectors of this existing image. So for growable ISO filesystems on DVD-RAM or DVD+RW growisofs is the only choice, currently. -With sequential DVD-R[W] the development version of cdrskin can offer -multi-session together with associated options blank=, -multi, -msinfo and --toc. Thus sequential DVD-RW behave much like large CD-RW with possibly more -than 99 tracks. + +cdrskin can offer DVD multi-session only with sequential DVD-R[W]. Associated +options blank=, -multi, -msinfo and -toc are available in this case. Thus +sequential DVD-RW behave much like large CD-RW with possibly more than 99 +tracks. -------------------------------------------------------------------------- diff --git a/configure.ac b/configure.ac index 172242b..dad0ced 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([libburn], [0.3.1], [http://libburnia.pykix.org]) +AC_INIT([libburn], [0.3.3], [http://libburnia.pykix.org]) AC_PREREQ([2.50]) dnl AC_CONFIG_HEADER([config.h]) @@ -19,7 +19,7 @@ dnl if MAJOR or MINOR version changes, be sure to change AC_INIT above to match dnl BURN_MAJOR_VERSION=0 BURN_MINOR_VERSION=3 -BURN_MICRO_VERSION=1 +BURN_MICRO_VERSION=3 BURN_INTERFACE_AGE=0 BURN_BINARY_AGE=0 BURN_VERSION=$BURN_MAJOR_VERSION.$BURN_MINOR_VERSION.$BURN_MICRO_VERSION