Re: Using growisofs without genisoimage?



Hi,

Le mercredi 13 janvier 2010 à 23:22 +0100, Josselin Mouette a écrit :

I’d like to get entirely rid of the genisoimage dependency in our
brasero packages. Replacing the genisoimage plugin by the libisofs one
is easy, but there is an indirect dependency remaining in the growisofs
plugin. 

Practically speaking, this plugin uses the -Z device=path syntax in most
cases, which means genisoimage is not used at all and the image is
generated by brasero’s libisofs code.

True, except in one case (as you mentioned below):

if you have only growisofs installed (I mean no libburn) you won't be able to "grow" sessions on DVD+RW, DVD-RAM and BDRE (though brasero does not support them well yet). These are special discs that do not have any idea of what multisession is, they are overwritable media which means basically that you can write everywhere on them much like a hard drive. So internally growisofs works around the absence of multisession functionnality by writing the second session after the first (it determines where the first session ends by reading the primary block descriptor of the iso filesystem) and then replaces the primary block of the first session with the one of the second.

Unfortunately this is done internally (I mean genisoimage is spawned and used from inside growisofs) and you cannot pipe anything to growisofs, tell it where it should start to write on the disc...

That said, in this case, if, in addition to growisofs, you have libisofs+libburn installed, brasero will use these two latter plugins instead of growisofs to do the job exactly the same as it would be done by growisofs + genisoimage. So in the end if you have libisofs+libburn around this is not an issue.

libburn plugin has all the DVDs/BDs/DVDRAM capabilites growisofs has and more (like CD burning handling among others).

However, it seems to use genisoimage in some cases - if I understand the
code correctly, mostly when appending a new data session. I don’t know
the growisofs internals well, but would it be possible to also let
brasero generate the data on-the-fly in these cases, getting rid of the
genisoimage dependency, or would it require some changes in growisofs to
do that?
Yes, AFAIK it would require pretty extensive work inside growisofs like (among other things) introducing new command line options and reorganize part of the code.

Unfortunately, there is another issue to consider if you remove genisoimage entirely and want to use only libisofs: video DVDs. These require UDF which is still not supported by libisofs. So without genisoimage and/or mkisofs, no video DVDs.

If it was not for UDF functionality, you could have brasero working at its best with only cdrdao (needed for audio CD-TEXT and BIN images), libburn, libisofs.

Hope this helps.

Philippe

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]