[DVDnav-discuss] dvdbackup and the skipping unused/bad sectors patch

Don Mahurin dmlist at openright.org
Fri Jan 9 18:40:03 CET 2009


Hi,

I have an updated version of "dvdbackupx" that uses the vm in a modified
libdvdnav to find and skip unused (possibly intentionally bad) blocks on
a DVD.
This version no longer skips commands. All commands are executed by the
dvdnav vm.

http://dvdbackupx.openright.org/
http://dvdbackupx.openright.org/dvdbackupx-0.2-2.tar.gz
http://dvdbackupx.openright.org/libdvdnav-4.1.3-vm.patch

The basic modifications required of libdvdnav are:

- allow vm->dvd to be NULL.  In the case of using the vm externally,
vmvm->vtsi and vm->vmgi are set, and these values should not be reset
and the dvd should not be re-opened.
- Make the state of TailPGC execution detectable. This is required so
that end can be detected externally. This is done by setting pgN to
nr_of_programs+1 in play_PGC_post.

If this patch is applied to libdvdnav, then it could be used unmodified
by dvdbackup.
The current version of dvdbackupx includes the entire libdvdnav archive,
patches it, and uses only the vm parts.
Ideally, either the vm functions would be officially exposed by
libdvdnav, or separated into libdvdvm.

Could I ask that someone take a look at my dvdnav changes and dvdbackupx
and comment on how we can use the dvdnav vm officially for this?

I can give more details of how the dvdbackupx modification works if needed.

-Don Mahurin

Benjamin Drung wrote:
> Hi,
>
> Don Mahurin has modified [1] dvdbackup [2] to find and avoid unused
> blocks by following title set titles, and then skips the unused blocks.
> The purpose of this modification is to avoid possible bad sectors that
> sometimes occur, by manufacturer defect or intention, in unused regions
> of the disc.
>
> The titleset titles are followed using libdvdread and "libdvdvm"
> extracted from libdvdnav. The "libdvdvm" parts are not perfect, as some
> jump instructions are skipped to avoid the actual execution of the Jump,
> which fails in this isolated use of the library.
>
> It would be nice if this "libdvdnav" could be separated from libdvdnav
> into a standalone library. In libdvdnav 4.1.3 there is already an
> directory called vm.
>
> [1] http://dvdbackupx.openright.org/
> [2] http://dvdbackup.sourceforge.net/
>
> Regards,
> Benjamin Drung
>
>   




More information about the DVDnav-discuss mailing list