Finally made tests with DVD-R. They burn indeed like DVD-RW.

This commit is contained in:
Thomas Schmitt 2007-02-08 14:10:05 +00:00
parent 50eba7ee31
commit 8dccb584b4
4 changed files with 54 additions and 43 deletions

32
README
View File

@ -54,7 +54,8 @@ See README file there.
Overview of libburnia.pykix.org Overview of libburnia.pykix.org
libburnia.pykix.org is an open-source software project for reading, mastering libburnia.pykix.org is an open-source software project for reading, mastering
and writing optical discs. For now this means only CD-R and CD-RW. and writing optical discs.
For now this means only CD media and all single layer DVD media except DVD+R.
The project comprises of several more or less interdependent parts which The project comprises of several more or less interdependent parts which
together strive to be a usable foundation for application development. together strive to be a usable foundation for application development.
@ -66,10 +67,10 @@ 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, advise from a system person about the equivalent of Linux sg or FreeBSD CAM,
volunteers for testing of realistic use cases. volunteers for testing of realistic use cases.
We do have a workable code base for burning data CDs, though. The burn API is We have a workable code base for burning CD and most single layer DVD, though.
quite comprehensively documented and can be used to build a presentable The burn API is quite comprehensively documented and can be used to build a
application. presentable application.
We do have a functional binary which emulates parts of cdrecord in order to We have a functional binary which emulates parts of cdrecord in order to
prove that usability, and in order to allow you to explore libburnia's scope prove that usability, and in order to allow you to explore libburnia's scope
by help of existing cdrecord frontends. by help of existing cdrecord frontends.
@ -78,20 +79,25 @@ The project components (list subject to growth, hopefully):
- libburn is the library by which preformatted data get onto optical media. - libburn is the library by which preformatted data get onto optical media.
It uses either /dev/sgN (e.g. on kernel 2.4 with ide-scsi) or It uses either /dev/sgN (e.g. on kernel 2.4 with ide-scsi) or
/dev/hdX (e.g. on kernel 2.6). /dev/hdX (e.g. on kernel 2.6).
libburn is the foundation of our cdrecord emulation. libburn is the foundation of our cdrecord emulation. Its code is
independent of cdrecord. Its DVD capabilities are learned from
studying the code of dvd+rw-tools and MMC-5 specs. No code but only
the pure SCSI knowledge has been taken from dvd+rw-tools, though.
- libisofs is the library to pack up hard disk files and directories into a - libisofs is the library to pack up hard disk files and directories into a
ISO 9660 disk image. This may then be brought to CD via libburn. ISO 9660 disk image. This may then be brought to media via libburn.
libisofs is to be the foundation of our upcoming mkisofs emulation. libisofs is to be the foundation of our upcoming mkisofs emulation.
- 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
the services traditionally provided by cdrecord. the services traditionally provided by cdrecord. Additionally it
provides libburn's DVD capabilities, where only -sao is compatible
with cdrecord.
cdrskin does not contain any bytes copied from cdrecord's sources. cdrskin does not contain any bytes copied from cdrecord's sources.
Many bytes have been copied from the message output of cdrecord Many bytes have been copied from the message output of cdrecord
runs, though. runs, though.
See cdrskin/README for more. See cdrskin/README and man cdrskin/cdrskin.1 for more.
- 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 main API example for libburn authors of the library features. The main API example for libburn
@ -178,6 +184,14 @@ Project history as far as known to me:
libburn, is now called libburnia. For the origin of this name, see libburn, is now called libburnia. For the origin of this name, see
http://en.wikipedia.org/wiki/Liburnians . http://en.wikipedia.org/wiki/Liburnians .
- 16th January 2007 release of libburn-0.3.0 and cdrskin-0.3.0 . Now the scope
is widened to a first class of DVD media: overwriteable single layer types
DVD-RAM, DVD+RW, DVD-RW. This is not a cdrecord emulation but rather inspired
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.
------------------------------------------------------------------------------ ------------------------------------------------------------------------------

View File

@ -420,25 +420,25 @@ into the format of the burned data. Be advised to use growisofs for the
task of maintaining extendable ISO-Filesystems on DVD+RW. task of maintaining extendable ISO-Filesystems on DVD+RW.
DVD-RW DVD-RW and DVD-R
DVD-RW are usable if formatted to state "Restricted Overwrite" or if in state DVD-RW are usable if formatted to state "Restricted Overwrite" or if in state
"Sequential Recording". "Sequential Recording". DVD-R are always in sequential state.
"Sequential" is the state of unused media and of media previously blanked "Sequential" is the state of unused media and of media previously blanked
or written by cdrecord. dvd+rw-format -blank can also achieve this state. or written by cdrecord. dvd+rw-format -blank can also achieve this state.
The according cdrskin option is blank=deformat_sequential . The according cdrskin option is blank=deformat_sequential .
If "Incremental Streaming" is available, then sequential media are capable If "Incremental Streaming" is available, then sequential media are capable
of multi-session like CD-RW. (But not capable of -audio recording.) of multi-session like CD-R[W]. (But not capable of -audio recording.)
This means they need option -multi to stay appendable, need to be blanked This means they need option -multi to stay appendable, need to be blanked
to be writeable from start, return useable info with -toc and -msinfo, to be writeable from start, return useable info with -toc and -msinfo,
eventually perform appending automatically. eventually perform appending automatically.
Without "Incremental Streaming" offered by the drive, only write mode DAO is Without "Incremental Streaming" offered by the drive, only write mode DAO is
available with sequential DVD-RW. It only works with blank media, allows only available with sequential DVD-R[W]. It only works with blank media, allows only
one single track, no -multi, and demands a fixely predicted track size. one single track, no -multi, and demands a fixely predicted track size.
(growisofs uses it with DVD-RW if option -dvd-compat is given.) (growisofs uses it with DVD-R[W] if option -dvd-compat is given.)
Overwriteable DVD behave much like DVD+RW. "Restricted" refers only to the Overwriteable DVD-RW behave much like DVD+RW. "Restricted" refers only to the
granularity of random access and block size which have always to be aligned to granularity of random access and block size which have always to be aligned to
full 32 kB. Sequential DVD-RW are converted into overwriteable DVD-RW by full 32 kB. Sequential DVD-RW are converted into overwriteable DVD-RW by
cdrskin dev=... -v blank=format_overwrite cdrskin dev=... -v blank=format_overwrite
@ -475,17 +475,6 @@ Incremental Streaming afterwards. So blank=fast will do full blanking.
blank=deformat_sequential_quickest is faster but might yield DAO-only media. blank=deformat_sequential_quickest is faster but might yield DAO-only media.
DVD-R
The specs state that DVD-R behave like sequential DVD-RW except the capability
to get blanked or formatted. Thus they should be useable like CD-R media (but
without -audio).
Blank DVD-R media are accepted as suitable by cdrskin on my drives.
I got only a few of those one-time recordable media and no real use case.
So i prefer to start burning my DVD-R only at the end of my endeavor about
sequential DVD. There's still plenty to do with DVD-RW testing.
Special compilation variations Special compilation variations
You may get a (super fat) statically linked binary by : You may get a (super fat) statically linked binary by :

View File

@ -2,7 +2,7 @@
.\" First parameter, NAME, should be all caps .\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1) .\" other parameters are allowed: see man(7), man(1)
.TH CDRSKIN 1 "February 1, 2007" .TH CDRSKIN 1 "February 8, 2007"
.\" Please adjust this date whenever revising the manpage. .\" Please adjust this date whenever revising the manpage.
.\" .\"
.\" Some roff macros, for reference: .\" Some roff macros, for reference:
@ -44,9 +44,11 @@ or in Session at Once mode for seamless tracks.
.br .br
Multi session on CD (follow-up sessions in TAO only) Multi session on CD (follow-up sessions in TAO only)
.br .br
and on DVD-RW (untested yet: on DVD-R). and on DVD-RW or DVD-R (in Incremental write mode only).
.br .br
Burning of a single data track to DVD+RW, DVD-RW, DVD-RAM. Single session on DVD-RW or DVD-R (Disk-at-once)
.br
or on overwriteable DVD+RW, DVD-RW, DVD-RAM.
.br .br
Bus scan, burnfree, speed options, retrieving media info, padding, fifo. Bus scan, burnfree, speed options, retrieving media info, padding, fifo.
.br .br
@ -125,13 +127,13 @@ Multiple cycles of blanking and overwriting with random numbers might be.
--------------- ---------------
.br .br
Note: The support for sequentially recordable media is still emerging. Note: The support for sequentially recordable media is still emerging.
DVD-R have not been tested yet.
.br .br
--------------- ---------------
.br .br
Currently only DVD-RW (and most probably DVD-R) can be used for the Sequential Currently only DVD-RW and DVD-R can be used for the Sequential recording model.
recording model. DVD-RW must be in state "Sequential Recording". The media must DVD-RW must be in state "Sequential Recording".
be either blank or appendable. Newly purchased DVD-RW media are in this state. The media must be either blank or appendable.
Newly purchased DVD-RW and DVD-R media are in this state.
Used DVD-RW get into blank sequential state by option Used DVD-RW get into blank sequential state by option
.B blank=deformat_sequential . .B blank=deformat_sequential .
.br .br

View File

@ -6,9 +6,9 @@
@section intro Introduction @section intro Introduction
Libburnia is an open-source project for reading, mastering and writing Libburnia is an open-source project for reading, mastering and writing
optical discs. For now this means CD-R, CD-RW, DVD-RAM, DVD+RW, DVD-RW. optical discs. For now this means CD-R, CD-RW, DVD-RAM, DVD+RW, DVD-RW, DVD-R.
DVD-R is untested yet.
Not supported yet are DVD+R, any dual layer media, HD-DVD, BD (blue ray).
The project comprises of several more or less interdependent parts which The project comprises of several more or less interdependent parts which
together strive to be a usable foundation for application development. together strive to be a usable foundation for application development.
@ -20,9 +20,9 @@ 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, advise from a system person about the equivalent of Linux sg or FreeBSD CAM,
volunteers for testing of realistic use cases. volunteers for testing of realistic use cases.
We have a workable code base for burning data and audio CDs. The burn API is We have a workable code base for burning data and audio CDs and many DVD types.
quite comprehensively documented and can be used to build a presentable The burn API is quite comprehensively documented and can be used to build a
application. presentable application.
We have a functional binary which emulates the core use cases of cdrecord in We have a functional binary which emulates the core use cases of cdrecord in
order to prove that usability, and in order to allow you to explore libburn's order to prove that usability, and in order to allow you to explore libburn's
scope by help of existing cdrecord frontends. scope by help of existing cdrecord frontends.
@ -32,7 +32,10 @@ scope by help of existing cdrecord frontends.
- libburn is the library by which preformatted data get onto optical media. - libburn is the library by which preformatted data get onto optical media.
It uses either /dev/sgN (e.g. on kernel 2.4 with ide-scsi) or It uses either /dev/sgN (e.g. on kernel 2.4 with ide-scsi) or
/dev/hdX (e.g. on kernel 2.6). /dev/hdX (e.g. on kernel 2.6).
libburn is the foundation of our cdrecord emulation. libburn is the foundation of our cdrecord emulation. Its code is
independent of cdrecord. Its DVD capabilities are learned from
studying the code of dvd+rw-tools and MMC-5 specs. No code but only
the pure SCSI knowledge has been taken from dvd+rw-tools, though.
- libisofs is the library to pack up hard disk files and directories into a - libisofs is the library to pack up hard disk files and directories into a
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.
@ -41,15 +44,18 @@ scope by help of existing cdrecord frontends.
- 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
the services traditionally provided by cdrecord. the services traditionally provided by cdrecord. Additionally it
provides libburn's DVD capabilities, where only -sao is compatible
with cdrecord.
cdrskin does not contain any bytes copied from cdrecord's sources. cdrskin does not contain any bytes copied from cdrecord's sources.
Many bytes have been copied from the message output of cdrecord Many bytes have been copied from the message output of cdrecord
runs, though. runs, though.
See cdrskin/README for more. See cdrskin/README for more.
- "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 main API example of libburn authors of the library features. The burn API example of libburn
is named test/libburner.c . is named test/libburner.c . The API for media information inquiry is
demonstrated in test/telltoc.c .
Explore these examples if you look for inspiration. Explore these examples if you look for inspiration.
We plan to be a responsive upstream. Bear with us. We plan to be a responsive upstream. Bear with us.
@ -83,7 +89,7 @@ languages and development tools.
libburner is a minimal demo application for the library libburn libburner is a minimal demo application for the library libburn
(see: libburn/libburn.h) as provided on http://libburn.pykix.org . (see: libburn/libburn.h) as provided on http://libburn.pykix.org .
It can list the available devices, can blank a CD-RW or DVD-RW and It can list the available devices, can blank a CD-RW or DVD-RW and
can burn to CD-R, CD-RW, DVD-RAM, DVD+RW, DVD-RW. can burn to CD-R, CD-RW, DVD-RAM, DVD+RW, DVD-RW, DVD-R.
It's main purpose, nevertheless, is to show you how to use libburn and also It's main purpose, nevertheless, is to show you how to use libburn and also
to serve the libburnia team as reference application. libburner does indeed to serve the libburnia team as reference application. libburner does indeed