Browse Source

Updated explanations about the usage principles of libisoburn

Thomas Schmitt 14 years ago
  1. 16


@ -11,8 +11,7 @@
libisoburn is a frontend for libraries libburn and libisofs which enables
creation and expansion of ISO-9660 filesystems on all CD/DVD media supported
by libburn. This includes media like DVD+RW, which do not support multi-session
management on media level
>>> to come: and even plain disk files or other random access file types.
management on media level and even plain disk files or block devices.
The price for that is thorough specialization on data files in ISO-9660
filesystem images. So libisoburn is not suitable for audio (CD-DA) or any
@ -20,22 +19,21 @@ other CD layout which does not entirely consist of ISO-9660 sessions.
The priciple of this frontend is that you may use any call of libisofs or
libburn unless it has a isoburn_*() wrapper listed in the following function
E.g. call isoburn_initialize() rather than iso_init(); burn_initialize()
and call isoburn_drive_scan_and_grab() rather than burn_drive_scan_and_grab().
But you may call burn_disc_get_profile() directly if you want to display
the media type.
>>> Take into respect Vreixo's (mandatory ?) shortcuts which are to come
The usage model is like with libburn: the target is a "media" in a "drive".
The wrappers will transparently provide the necessary emulations which
are appropriate for particular target "drives".
>>> Technical remark:
>>> For full support of plain files, libburn needs to get a null-drive
>>> which swallows all libburn calls which are not wrapped in isoburn calls.
>>> I had a count: ~ 50 API calls with struct burn_drive or
>>> struct burn_write_opts to curb :))