List Info

Thread: Dumb newbie question: Multisession capability




Dumb newbie question: Multisession capability
user name
2007-01-04 02:16:30
Hi guys,

I'm involved in Premastering of Enhanced CDs, where a common
but as yet 
unfulfilled requirement is:

- Read an ISO image from an existing ECD (ie a disc
containing Audio tracks 
in the first session, and ROM data which may be Mac and ISO
in the 
second).  I have several utils which can do this.

- Write the ISO image to a newly-prepared open-session CD-R
containing 
Audio tracks.  The well-known Toast software can do this,
however if the 
ISO image contains long Joliet names, Toast converts them to
8.3 (a bug 
which Roxio know about but have not yet fixed).

In my search to find other utilities which will append ROM
data to an 
existing session, it becomes apparent that Location Of
Extent values (and 
other fields in PVD etc) need to be adjusted to reflect
their positions in 
the new disc.  I have tinkered with mkisofs etc but it
doesn't appear to 
have this ability as it only inputs from a fileset.

I'm a VERY amateur programmer but my reading of the example
at 
http://icculus.org/burn/
doc/ seems to indicate that this can be done with 
libburn and is in fact part of its core functionality.  Can
anyone confirm?

Would be grateful for any info that you can provide - thanks
in advance,

BC.


_______________________________________________
libburn mailing list
libburnlists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libburn
Dumb newbie question: Multisession capability
user name
2007-01-05 13:19:49
Hi,

> - Read an ISO image from an existing ECD
> - Write the ISO image to a newly-prepared open-session
CD-R
> it becomes apparent that Location Of Extent values (and

> other fields in PVD etc) need to be adjusted to reflect
their positions in 
> the new disc.

Yes.
The art with ISO multi-session on CD is to prepare the file
system image so that the block addresses in its mamangement
data match the block addresses on CD.
Operating systems will mount the last session on the CD
which then may or may not refer to previous sessions.

The coordination of inner addresses and future location on
CD
is done with mkisofs options -C and eventually -M. But as
you
already found out, mkisofs does only create new ISO-9660
images
and does not manipulate existing ones.


One possibility would be to mount the original ISO
filesystem,
and to let mkisofs create a new image from this.

For that you also need to obtain the predicted location of
the
next session. Insert the appendable CD, run
  cdrecord dev=...drive.address... -msinfo
(or wodim -msinfo, or cdrskin -msinfo) and memorize the
number
pair which is reported.

Then you can run 
  mkisofs ...your.mkisofs.options... -C number1,number2
to create the ISO-9660 image which will match the addresses
of
the future session (which will begin at number2).
This image you may burn via cdrecord|wodim|cdrskin to the
appendable CD. If you want to keep it appendable, don't
forget
option -multi.

Well, that was a rough ride over mkisofs (or genisofs) and
cdrecord (or wodim, or cdrskin). See their man pages.
If you are on Linux and need help with this approach, you
may
contact me directly - as it is quite off-topic here.


> my reading of the example at 
> http://icculus.org/burn/
doc/ seems to indicate that this can be done with 
> libburn

Program test/burniso.c as shown on this URL is not able
to do this for two reasons:

It does not offer multi-session capabilities and even if
it would - there is no support for TAO write mode and all
my burners refuse multi-session in SAO write mode.

It does not manipulate the data to be burned to CD. 
The title "example of burning an ISO file" is a
bit
misleading since it burns any format as first session
to blank CDs.


For the necessary ISO filesystem manipulation you might
have to start an own project. Program growisofs does
some manipulations with the first 32 kB of existing
ISO images on overwriteable media. But your goal looks a
bit more demanding than this.

If you start such a ISO-9660 relocation project or happen
to find an appropriate tool for Linux, don't forget to
tell the world.


Have a nice day 

Thomas

_______________________________________________
libburn mailing list
libburnlists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libburn
[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )