Compare commits

...

11 Commits

13 changed files with 148 additions and 78 deletions

View File

@ -101,9 +101,9 @@ test_structest_CPPFLAGS = -Ilibburn
test_structest_LDADD = $(libburn_libburn_la_OBJECTS) $(THREAD_LIBS) test_structest_LDADD = $(libburn_libburn_la_OBJECTS) $(THREAD_LIBS)
test_structest_SOURCES = test/structest.c test_structest_SOURCES = test/structest.c
## cdrskin construction site - ts A60816 - A70720 ## cdrskin construction site - ts A60816 - A71024
cdrskin_cdrskin_CPPFLAGS = -Ilibburn cdrskin_cdrskin_CPPFLAGS = -Ilibburn
cdrskin_cdrskin_CFLAGS = -DCdrskin_libburn_0_3_9 cdrskin_cdrskin_CFLAGS = -DCdrskin_libburn_0_4_0
cdrskin_cdrskin_LDADD = $(libburn_libburn_la_OBJECTS) $(THREAD_LIBS) 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 cdrskin_cdrskin_SOURCES = cdrskin/cdrskin.c cdrskin/cdrfifo.c cdrskin/cdrfifo.h cdrskin/cdrskin_timestamp.h
## ##

6
README
View File

@ -204,6 +204,12 @@ Project history as far as known to me:
We look back on improved stability, a substantially extended list of media We look back on improved stability, a substantially extended list of media
and write modes, and better protection against typical user mishaps. and write modes, and better protection against typical user mishaps.
- 24th October 2007 version 0.4.0 is the foundation of new library libisoburn
and an upcomming integrated application for manipulating and writing
ISO 9660 + Rock Ridge images. cdrskin-0.4.0 got capabilities like growisofs
by these enhancements: growing of overwriteable media and disk files.
Taking again a bow towards Andy Polyakov.
------------------------------------------------------------------------------ ------------------------------------------------------------------------------

View File

@ -4,7 +4,7 @@
cdrskin. By Thomas Schmitt <scdbackup@gmx.net> cdrskin. By Thomas Schmitt <scdbackup@gmx.net>
Integrated sub project of libburnia-project.org but also published via: Integrated sub project of libburnia-project.org but also published via:
http://scdbackup.sourceforge.net/cdrskin_eng.html http://scdbackup.sourceforge.net/cdrskin_eng.html
http://scdbackup.sourceforge.net/cdrskin-0.3.9.tar.gz http://scdbackup.sourceforge.net/cdrskin-0.4.0.pl00.tar.gz
Copyright (C) 2006-2007 Thomas Schmitt, provided under GPL version 2. Copyright (C) 2006-2007 Thomas Schmitt, provided under GPL version 2.
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
@ -20,10 +20,10 @@ By using this software you agree to the disclaimer at the end of this text
Compilation, First Glimpse, Installation Compilation, First Glimpse, Installation
Obtain cdrskin-0.3.9.tar.gz, take it to a directory of your choice and do: Obtain cdrskin-0.4.0.pl00.tar.gz, take it to a directory of your choice and do:
tar xzf cdrskin-0.3.9.tar.gz tar xzf cdrskin-0.4.0.pl00.tar.gz
cd cdrskin-0.3.9 cd cdrskin-0.4.0
Within that directory execute: Within that directory execute:

View File

@ -38,7 +38,7 @@ original="./libburn_svn_release.tgz"
# My changes are in $changes , mainly in $changes/cdrskin # My changes are in $changes , mainly in $changes/cdrskin
changes="./libburn-release" changes="./libburn-release"
skin_release="0.3.8" skin_release="0.4.0"
patch_level=".pl00" patch_level=".pl00"
skin_rev="$skin_release""$patch_level" skin_rev="$skin_release""$patch_level"
@ -154,6 +154,10 @@ do
fi fi
done done
# Remove libcevap
rm -rf "$target"/libcevap
# Remove unwanted SVN stuff (TODO: avoid downloading it) # Remove unwanted SVN stuff (TODO: avoid downloading it)
for i in "$target"/.svn "$target"/*/.svn for i in "$target"/.svn "$target"/*/.svn
do do

View File

@ -38,7 +38,7 @@ original="./libburn_svn.tgz"
# My changes are in $changes , mainly in $changes/cdrskin # My changes are in $changes , mainly in $changes/cdrskin
changes="./libburn-develop" changes="./libburn-develop"
skin_release="0.3.9" skin_release="0.4.1"
patch_level="" patch_level=""
skin_rev="$skin_release""$patch_level" skin_rev="$skin_release""$patch_level"
@ -143,6 +143,9 @@ rm "$cdrskin_target"/doener_*.gif "$cdrskin_target"/doener_*.png
# Remove automatically generated HTML man page # Remove automatically generated HTML man page
rm "$cdrskin_target"/man_1_cdrskin.html rm "$cdrskin_target"/man_1_cdrskin.html
# Remove libcevap
rm -rf "$target"/libcevap
# Remove all add_ts_changes_to_libburn besides this one # Remove all add_ts_changes_to_libburn besides this one
for i in "$cdrskin_target"/add_ts_changes_to_libburn* for i in "$cdrskin_target"/add_ts_changes_to_libburn*
do do
@ -222,6 +225,8 @@ tar czf "$cdrskin_tarball" "$target"
"$compile_cmd" $compile_static_opts -libburn_svn -O2 -do_strip "$compile_cmd" $compile_static_opts -libburn_svn -O2 -do_strip
cp "$compile_result" "../$bintarget_static" cp "$compile_result" "../$bintarget_static"
fi fi
# "$compile_cmd" -libburn_svn -O2 -do_diet -do_strip
# cp "$compile_result" "../$bintarget_dynamic"_diet
"$man_to_html_cmd" "$man_to_html_cmd"
mv "$man_page_html" .. mv "$man_page_html" ..
) )
@ -234,7 +239,7 @@ rm -rf "$target"
./"$bintarget_dynamic" -version ./"$bintarget_dynamic" -version
./"$bintarget_static" -version ./"$bintarget_static" -version
ls -l "$cdrskin_tarball" ls -l "$cdrskin_tarball"
ls -l "$bintarget_dynamic" ls -l "$bintarget_dynamic"*
ls -l "$bintarget_static" ls -l "$bintarget_static"
ls -l $(basename "$man_page_html") ls -l $(basename "$man_page_html")

View File

@ -88,7 +88,7 @@ or
/** The official program version */ /** The official program version */
#ifndef Cdrskin_prog_versioN #ifndef Cdrskin_prog_versioN
#define Cdrskin_prog_versioN "0.3.9" #define Cdrskin_prog_versioN "0.4.0"
#endif #endif
/** The source code release timestamp */ /** The source code release timestamp */
@ -121,27 +121,25 @@ or
#endif /* Cdrskin_libburn_cvs_A60220_tS */ #endif /* Cdrskin_libburn_cvs_A60220_tS */
#ifdef Cdrskin_libburn_0_3_8 #ifdef Cdrskin_libburn_0_4_0
#define Cdrskin_libburn_versioN "0.3.8" #define Cdrskin_libburn_versioN "0.4.0"
#define Cdrskin_libburn_from_pykix_svN 1 #define Cdrskin_libburn_from_pykix_svN 1
#endif /* Cdrskin_libburn_0_3_8 */ #endif /* Cdrskin_libburn_0_4_0 */
#ifdef Cdrskin_libburn_0_3_9 #ifdef Cdrskin_libburn_0_4_1
#define Cdrskin_libburn_versioN "0.3.9" #define Cdrskin_libburn_versioN "0.4.1"
#define Cdrskin_libburn_from_pykix_svN 1 #define Cdrskin_libburn_from_pykix_svN 1
/* Place novelty switch macros here. /* Place novelty switch macros here.
Move them down to Cdrskin_libburn_from_pykix_svN on version leap Move them down to Cdrskin_libburn_from_pykix_svN on version leap
*/ */
#define Cdrskin_libburn_has_random_access_rW 1 /* there are no novelties in 0.4.1 yet */
#define Cdrskin_libburn_has_get_drive_rolE 1
#define Cdrskin_libburn_has_drive_equals_adR 1
#endif /* Cdrskin_libburn_0_3_9 */ #endif /* Cdrskin_libburn_0_4_1 */
#ifndef Cdrskin_libburn_versioN #ifndef Cdrskin_libburn_versioN
#define Cdrskin_libburn_versioN "0.3.8" #define Cdrskin_libburn_versioN "0.4.0"
#define Cdrskin_libburn_from_pykix_svN 1 #define Cdrskin_libburn_from_pykix_svN 1
#endif #endif
@ -202,6 +200,12 @@ or
#define Cdrskin_libburn_has_set_waitinG 1 #define Cdrskin_libburn_has_set_waitinG 1
#define Cdrskin_libburn_has_get_best_speeD 1 #define Cdrskin_libburn_has_get_best_speeD 1
/* 0.4.0 */
#define Cdrskin_libburn_has_random_access_rW 1
#define Cdrskin_libburn_has_get_drive_rolE 1
#define Cdrskin_libburn_has_drive_equals_adR 1
#ifdef Cdrskin_new_api_tesT #ifdef Cdrskin_new_api_tesT
/* put macros under test caveat here */ /* put macros under test caveat here */
@ -2517,6 +2521,8 @@ set_dev:;
" --any_track allow source_addresses to match '^-.' or '='\n"); " --any_track allow source_addresses to match '^-.' or '='\n");
printf( printf(
" assert_write_lba=<lba> abort if not next write address == lba\n"); " assert_write_lba=<lba> abort if not next write address == lba\n");
printf(
" direct_write_amount=<size> write random access to media like DVD+RW\n");
printf(" --demand_a_drive exit !=0 on bus scans with empty result\n"); printf(" --demand_a_drive exit !=0 on bus scans with empty result\n");
printf(" --devices list accessible devices (tells /dev/...)\n"); printf(" --devices list accessible devices (tells /dev/...)\n");
printf( printf(
@ -2541,6 +2547,8 @@ set_dev:;
printf( printf(
" eject_device=<path> set the device address for command eject\n"); " eject_device=<path> set the device address for command eject\n");
#endif #endif
printf(
" fallback_program=<cmd> use external program for exotic CD jobs\n");
printf(" --fifo_disable disable fifo despite any fs=...\n"); printf(" --fifo_disable disable fifo despite any fs=...\n");
printf(" --fifo_per_track use a separate fifo for each track\n"); printf(" --fifo_per_track use a separate fifo for each track\n");
printf( printf(
@ -2554,6 +2562,8 @@ set_dev:;
" grab_drive_and_wait=<num> grab drive, wait given number of\n"); " grab_drive_and_wait=<num> grab drive, wait given number of\n");
printf( printf(
" seconds, release drive, and do normal work\n"); " seconds, release drive, and do normal work\n");
printf(
" --grow_overwriteable_iso emulate multi-session on media like DVD+RW\n");
printf( printf(
" --ignore_signals try to ignore any signals rather than to abort\n"); " --ignore_signals try to ignore any signals rather than to abort\n");
printf(" --list_ignored_options list all ignored cdrecord options.\n"); printf(" --list_ignored_options list all ignored cdrecord options.\n");

View File

@ -56,8 +56,9 @@ and to MMC-5 for DVD).
GPL software included:<BR> GPL software included:<BR>
</H2> </H2>
<DL> <DL>
<DT>libburn-0.3.8</DT> <DT>libburn-0.4.0</DT>
<DD>(by Derek Foreman, Ben Jansens, and team of libburnia-project.org)</DD> <DD>(founded by Derek Foreman and Ben Jansens,
furthered by team of libburnia-project.org)</DD>
<DD>transfers data to CD and DVD</DD> <DD>transfers data to CD and DVD</DD>
</DL> </DL>
</P> </P>
@ -175,25 +176,25 @@ Testers wanted who are willing to risk some double layer DVD media.
<P> <P>
<DL> <DL>
<DT>Download as source code (see README):</DT> <DT>Download as source code (see README):</DT>
<DD><A HREF="cdrskin-0.3.8.pl00.tar.gz">cdrskin-0.3.8.pl00.tar.gz</A> <DD><A HREF="cdrskin-0.4.0.pl00.tar.gz">cdrskin-0.4.0.pl00.tar.gz</A>
(615 KB). (680 KB).
</DD> </DD>
<DD> <DD>
The "stable" cdrskin tarballs are source code identical with "stable" The cdrskin tarballs are source code identical with libburn releases
libburn releases or with "stabilized" libburn SVN snapshots. They get of the same version number.
produced via a different procedure, though.<BR> They get produced via a different procedure, though.<BR>
cdrskin is part of libburn - full libburn is provided with cdrskin releases. cdrskin is part of libburn - full libburn is provided with cdrskin releases.
</DD> </DD>
<DD>&nbsp;</DD> <DD>&nbsp;</DD>
<DT>Download as single x86 binaries (untar and move to /usr/bin/cdrskin):</DT> <DT>Download as single x86 binaries (untar and move to /usr/bin/cdrskin):</DT>
<DD><A HREF="cdrskin_0.3.8.pl00-x86-suse9_0.tar.gz"> <DD><A HREF="cdrskin_0.4.0.pl00-x86-suse9_0.tar.gz">
cdrskin_0.3.8.pl00-x86-suse9_0.tar.gz</A>, (90 KB), cdrskin_0.4.0.pl00-x86-suse9_0.tar.gz</A>, (106 KB),
<DL> <DL>
<DD>runs on SuSE 9.0 (2.4.21) , RIP-14.4 (2.6.14) , <DD>runs on SuSE 9.0 (2.4.21) , RIP-14.4 (2.6.14) ,
Gentoo (2.6.15 x86_64 Athlon).</DD> Gentoo (2.6.15 x86_64 Athlon).</DD>
</DL> </DL>
<DD><A HREF="cdrskin_0.3.8.pl00-x86-suse9_0-static.tar.gz"> <DD><A HREF="cdrskin_0.4.0.pl00-x86-suse9_0-static.tar.gz">
cdrskin_0.3.8.pl00-x86-suse9_0-static.tar.gz</A>, (290 KB), -static compiled, cdrskin_0.4.0.pl00-x86-suse9_0-static.tar.gz</A>, (310 KB), -static compiled,
<DL> <DL>
<DD>runs on SuSE 7.2 (2.4.4), and on the systems above.</DD> <DD>runs on SuSE 7.2 (2.4.4), and on the systems above.</DD>
</DL> </DL>
@ -220,18 +221,18 @@ cdrskin_0.3.8.pl00-x86-suse9_0-static.tar.gz</A>, (290 KB), -static compiled,
<HR> <HR>
<P> <P>
Enhancements towards previous stable version cdrskin-0.3.6: Enhancements towards previous stable version cdrskin-0.3.8:
<UL> <UL>
<LI>Now able to cope with the peculiarities of Linux 2.4 USB</LI> <LI>New option direct_write_amount=</LI>
<LI>Refusal to perform -dummy runs on media which cannot simulate burning</LI> <LI>New option --grow_overwriteable_iso</LI>
<LI>Precautions against using the burner drive as track source</LI> <LI>New option --allow_emulated_drives dev=stdio:&lt;path&gt;</LI>
<LI>New option modesty_on_drive= may help with hda -> hdb burns</LI> <LI>More cdrecord options supported:
<LI>New option minbuf= , cdrecord compatible frontend of modesty_on_drive=</LI> -format, -inq, -load, -lock, -immed, -waiti</LI>
<LI>New option --adjust_speed_to_drive</LI> <LI>New option fallback_program=</LI>
</UL> </UL>
<!-- <!--
Bug fixes towards cdrskin-0.3.8.pl00: Bug fixes towards cdrskin-0.4.0.pl00:
<UL> <UL>
<LI>none yet</LI> <LI>none yet</LI>
</UL> </UL>
@ -243,24 +244,19 @@ Enhancements towards previous stable version cdrskin-0.3.6:
<P> <P>
<DL> <DL>
<DT><H3>Development snapshot, version 0.3.9 :</H3></DT> <DT><H3>Development snapshot, version 0.4.1 :</H3></DT>
<DD>Enhancements towards stable version 0.3.8.pl00: <DD>Enhancements towards stable version 0.4.0.pl00:
<UL> <UL>
<LI>New option direct_write_amount=</LI>
<LI>New option --grow_overwriteable_iso</LI>
<LI>New option --allow_emulated_drives dev=stdio:&lt;path&gt;</LI>
<LI>More cdrecord options supported:
-format, -inq, -load, -lock, -immed, -waiti</LI>
<!--
<LI>none yet</LI> <LI>none yet</LI>
<!--
--> -->
</UL> </UL>
</DD> </DD>
<DD>&nbsp;</DD> <DD>&nbsp;</DD>
<DD><A HREF="README_cdrskin_devel">README 0.3.9</A> <DD><A HREF="README_cdrskin_devel">README 0.4.1</A>
<DD><A HREF="cdrskin__help_devel">cdrskin_0.3.9 --help</A></DD> <DD><A HREF="cdrskin__help_devel">cdrskin_0.4.1 --help</A></DD>
<DD><A HREF="cdrskin_help_devel">cdrskin_0.3.9 -help</A></DD> <DD><A HREF="cdrskin_help_devel">cdrskin_0.4.1 -help</A></DD>
<DD><A HREF="man_1_cdrskin_devel.html">man cdrskin (as of 0.3.9)</A></DD> <DD><A HREF="man_1_cdrskin_devel.html">man cdrskin (as of 0.4.1)</A></DD>
<DD>&nbsp;</DD> <DD>&nbsp;</DD>
<DT>Maintainers of cdrskin unstable packages please use SVN of <DT>Maintainers of cdrskin unstable packages please use SVN of
<A HREF="http://libburnia-project.org"> libburnia-project.org</A></DT> <A HREF="http://libburnia-project.org"> libburnia-project.org</A></DT>
@ -280,15 +276,15 @@ admins with full system souvereignty.</DT>
<A HREF="README_cdrskin_devel">upcoming README</A> ): <A HREF="README_cdrskin_devel">upcoming README</A> ):
</DD> </DD>
<DD> <DD>
<A HREF="cdrskin-0.3.9.tar.gz">cdrskin-0.3.9.tar.gz</A> <A HREF="cdrskin-0.4.1.tar.gz">cdrskin-0.4.1.tar.gz</A>
(640 KB). (680 KB).
</DD> </DD>
<DD>Binary (untar and move to /usr/bin/cdrskin):</DD> <DD>Binary (untar and move to /usr/bin/cdrskin):</DD>
<DD><A HREF="cdrskin_0.3.9-x86-suse9_0.tar.gz"> <DD><A HREF="cdrskin_0.4.1-x86-suse9_0.tar.gz">
cdrskin_0.3.9-x86-suse9_0.tar.gz</A>, (90 KB). cdrskin_0.4.1-x86-suse9_0.tar.gz</A>, (105 KB).
</DD> </DD>
<DD><A HREF="cdrskin_0.3.9-x86-suse9_0-static.tar.gz"> <DD><A HREF="cdrskin_0.4.1-x86-suse9_0-static.tar.gz">
cdrskin_0.3.9-x86-suse9_0-static.tar.gz</A>, (290 KB) cdrskin_0.4.1-x86-suse9_0-static.tar.gz</A>, (310 KB)
</DD> </DD>
</DL> </DL>
</P> </P>

View File

@ -1 +1 @@
#define Cdrskin_timestamP "2007.10.23.150436" #define Cdrskin_timestamP "2007.10.27.090421"

View File

@ -7,7 +7,7 @@
debug_opts="-O2" debug_opts="-O2"
def_opts= def_opts=
largefile_opts="-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE=1" largefile_opts="-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE=1"
libvers="-DCdrskin_libburn_0_3_9" libvers="-DCdrskin_libburn_0_4_0"
cleanup_src_or_obj="libburn/cleanup.o" cleanup_src_or_obj="libburn/cleanup.o"
libdax_msgs_o="libburn/libdax_msgs.o" libdax_msgs_o="libburn/libdax_msgs.o"
libdax_audioxtr_o="libburn/libdax_audioxtr.o" libdax_audioxtr_o="libburn/libdax_audioxtr.o"
@ -33,15 +33,15 @@ do
libdax_audioxtr_o= libdax_audioxtr_o=
libdax_msgs_o="libburn/message.o" libdax_msgs_o="libburn/message.o"
cleanup_src_or_obj="-DCleanup_has_no_libburn_os_H cdrskin/cleanup.c" cleanup_src_or_obj="-DCleanup_has_no_libburn_os_H cdrskin/cleanup.c"
elif test "$i" = "-libburn_0_3_8" elif test "$i" = "-libburn_0_4_0"
then then
libvers="-DCdrskin_libburn_0_3_8" libvers="-DCdrskin_libburn_0_4_0"
libdax_audioxtr_o="libburn/libdax_audioxtr.o" libdax_audioxtr_o="libburn/libdax_audioxtr.o"
libdax_msgs_o="libburn/libdax_msgs.o" libdax_msgs_o="libburn/libdax_msgs.o"
cleanup_src_or_obj="libburn/cleanup.o" cleanup_src_or_obj="libburn/cleanup.o"
elif test "$i" = "-libburn_svn" elif test "$i" = "-libburn_svn"
then then
libvers="-DCdrskin_libburn_0_3_9" libvers="-DCdrskin_libburn_0_4_1"
libdax_audioxtr_o="libburn/libdax_audioxtr.o" libdax_audioxtr_o="libburn/libdax_audioxtr.o"
libdax_msgs_o="libburn/libdax_msgs.o" libdax_msgs_o="libburn/libdax_msgs.o"
cleanup_src_or_obj="libburn/cleanup.o" cleanup_src_or_obj="libburn/cleanup.o"
@ -76,7 +76,7 @@ do
echo " -compile_cdrfifo compile program cdrskin/cdrfifo." echo " -compile_cdrfifo compile program cdrskin/cdrfifo."
echo " -compile_dewav compile program test/dewav without libburn." echo " -compile_dewav compile program test/dewav without libburn."
echo " -cvs_A60220 set macro to match libburn-CVS of 20 Feb 2006." echo " -cvs_A60220 set macro to match libburn-CVS of 20 Feb 2006."
echo " -libburn_0_3_8 set macro to match libburn-0.3.8." echo " -libburn_0_4_0 set macro to match libburn-0.4.0."
echo " -libburn_svn set macro to match current libburn-SVN." echo " -libburn_svn set macro to match current libburn-SVN."
echo " -no_largefile do not use 64 bit off_t (must match libburn)." echo " -no_largefile do not use 64 bit off_t (must match libburn)."
echo " -do_not_compile_cdrskin omit compilation of cdrskin/cdrskin." echo " -do_not_compile_cdrskin omit compilation of cdrskin/cdrskin."

View File

@ -23,8 +23,7 @@ About libburn API for burning CD and DVD: http://api.libburnia-project.org
-------------------------------------------------------------------------- --------------------------------------------------------------------------
For dual layer DVD types and for appending sessions to ISO filesystems on For dual layer DVD types see the advice to use dvd+rw-tools at
DVD other than DVD-RW, DVD-R, DVD+R see the advise to use dvd+rw-tools at
the end of this text. the end of this text.
-------------------------------------------------------------------------- --------------------------------------------------------------------------
@ -80,6 +79,39 @@ controls drive accessability by rw-permissions of the drive rather than
by x-permission of the burn binary. To be usable with cdrskin, the drive by x-permission of the burn binary. To be usable with cdrskin, the drive
has to offer both, r- and w-permission. has to offer both, r- and w-permission.
--------------------------------------------------------------------------
cdrskin does not only read from and write to optical drives which comply
to the MMC standard but also does the same with regular files or block
devices other than optical drives.
Because the power to alter a disk file might be a bad surprise for a
traditional user of cdrecord, it is necessary to give option
--allow_emulated_drives before an emulated drive may be addressed.
Eventually one of the startup files would be a good place for it.
See man page, section FILES.
The addresses of emulated drives begin with the prefix "stdio:".
{{{
dev=stdio:/tmp/pseudo_drive
dev=stdio:/dev/usbstick
}}}
Regular files and block devices behave much like DVD-RAM.
Other file types may be valid targets for write-only operations.
This includes standard output, named pipes, character devices
{{{
dev=stdio:/dev/fd/1
dev=stdio:/tmp/named_pipe
dev=stdio:/dev/ptyxy
}}}
These files behave much like blank DVD-R.
All files used as pseudo-drives have to offer rw-permission.
-------------------------------------------------------------------------- --------------------------------------------------------------------------
The DVD capabilities of cdrskin differ from those of cdrecord-ProDVD. cdrskin The DVD capabilities of cdrskin differ from those of cdrecord-ProDVD. cdrskin
@ -107,8 +139,9 @@ multi-session, if the drive is capable of "Incremental Streaming"
(MMC feature 21h). (MMC feature 21h).
Used sequential DVD-RW media may be blanked by blank=fast or blank=all which Used sequential DVD-RW media may be blanked by blank=fast or blank=all which
normally both do full blanking. normally both do full blanking. Thus sequential DVD-RW behave much like large
CD-RW with possibly more than 99 tracks.
blank=deformat_sequential does minimal blanking of DVD-RW which usually yields blank=deformat_sequential does minimal blanking of DVD-RW which usually yields
media incapable of "Incremental Streaming". media incapable of "Incremental Streaming".
@ -117,6 +150,13 @@ overwriteable DVD-RW which normally ignore those two options. It also makes
option -multi tolerable with media and write modes which are not suitable for option -multi tolerable with media and write modes which are not suitable for
multi-session. (The default behavior of cdrskin deems me to be preferrable.) multi-session. (The default behavior of cdrskin deems me to be preferrable.)
Option --grow_overwriteable_iso gives cdrskin ISO pseudo-multi-session
capabilities on DVD-RAM and DVD+RW similar to growisofs.
Associated options blank=, -multi, -msinfo and -toc are available in this case.
They either pretend a blank media (if there is no ISO 9660 image) or appendable
media with a single session and track on it. blank= invalidates ISO images.
-------------------------------------------------------------------------- --------------------------------------------------------------------------
assert_write_lba=<lba> allows to ensure that the start block address which assert_write_lba=<lba> allows to ensure that the start block address which
@ -243,15 +283,11 @@ A special feature of dvd+rw-tools is growing of ISO-9660 filesystems on
overwriteable media. This is not the same as multi-session writing of cdrskin overwriteable media. This is not the same as multi-session writing of cdrskin
with CD media, but retrieves additional information from the existing ISO with CD media, but retrieves additional information from the existing ISO
image and finally manipulates the start sectors of this existing image. 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.
So, inspired by growisofs, cdrskin can offer DVD multi-session not only with
cdrskin can offer DVD multi-session only with sequential DVD-R[W] and with sequential DVD-R[W] and with DVD+R, but also with DVD-RAM, DVD+RW and
DVD+R. even regular disk files or block devices other than CD/DVD writers.
Associated options blank=, -multi, -msinfo and -toc are available in this case. This is enabled by option --grow_overwriteable_iso.
Thus sequential DVD-RW behave much like large CD-RW with possibly more than 99
tracks.
-------------------------------------------------------------------------- --------------------------------------------------------------------------

View File

@ -1,4 +1,4 @@
AC_INIT([libburn], [0.3.9], [http://libburnia-project.org]) AC_INIT([libburn], [0.4.0], [http://libburnia-project.org])
AC_PREREQ([2.50]) AC_PREREQ([2.50])
dnl AC_CONFIG_HEADER([config.h]) dnl AC_CONFIG_HEADER([config.h])
@ -18,8 +18,8 @@ dnl
dnl if MAJOR or MINOR version changes, be sure to change AC_INIT above to match dnl if MAJOR or MINOR version changes, be sure to change AC_INIT above to match
dnl dnl
BURN_MAJOR_VERSION=0 BURN_MAJOR_VERSION=0
BURN_MINOR_VERSION=3 BURN_MINOR_VERSION=4
BURN_MICRO_VERSION=9 BURN_MICRO_VERSION=0
BURN_INTERFACE_AGE=0 BURN_INTERFACE_AGE=0
BURN_BINARY_AGE=0 BURN_BINARY_AGE=0
BURN_VERSION=$BURN_MAJOR_VERSION.$BURN_MINOR_VERSION.$BURN_MICRO_VERSION BURN_VERSION=$BURN_MAJOR_VERSION.$BURN_MINOR_VERSION.$BURN_MICRO_VERSION

View File

@ -43,6 +43,11 @@ scope by help of existing cdrecord frontends.
ISO 9660 disk image. This may then be brought to CD via libburn. ISO 9660 disk image. This may then be brought to CD via libburn.
libisofs is to be the foundation of our upcoming mkisofs emulation. libisofs is to be the foundation of our upcoming mkisofs emulation.
- libisoburn is an add-on to libburn and libisofs which allows to grow
ISO-9660 filesystem images on multi-session media as well as
on overwriteable media via the same API. All media peculiarities
are handled automatically.
- cdrskin is a limited cdrecord compatibility wrapper for libburn. - cdrskin is a limited cdrecord compatibility wrapper for libburn.
cdrecord is a powerful GPL'ed burn program included in Joerg cdrecord is a powerful GPL'ed burn program included in Joerg
Schilling's cdrtools. cdrskin strives to be a second source for Schilling's cdrtools. cdrskin strives to be a second source for
@ -54,6 +59,13 @@ scope by help of existing cdrecord frontends.
runs, though. runs, though.
See cdrskin/README for more. See cdrskin/README for more.
- xorriso is an upcomming application of all three libraries which creates,
loads, manipulates and writes ISO 9660 filesystem images with
Rock Ridge extensions. Manipulation will not only be adding or
overwriting of files but also deletion, renaming, and attribute
changing.
See SVN of libisoburn, man test/xorriso.1, test/compile_xorriso.sh
- "test" is a collection of application gestures and examples given by the - "test" is a collection of application gestures and examples given by the
authors of the library features. The burn API example of libburn authors of the library features. The burn API example of libburn
is named test/libburner.c . The API for media information inquiry is is named test/libburner.c . The API for media information inquiry is

View File

@ -90,6 +90,7 @@ Hint: You should also look into sg-freebsd-port.c, which is a younger and
/* ts A61211 : to eventually recognize CD devices on /dev/sr* */ /* ts A61211 : to eventually recognize CD devices on /dev/sr* */
#include <limits.h>
#include <linux/cdrom.h> #include <linux/cdrom.h>