[DVDnav-discuss] libdvdread compatibility patches..

Jorgen Lundman lundman at lundman.net
Wed Aug 20 06:12:28 CEST 2008


I used libdvdread-0.9.7 in my own project (llink) but since it appears 
that libdvdread has come to a stand-still, I have moved to use 
libdvdnav-4.2.1 instead, or rather, the dvdread inside libdvdnav. In 
future I will explore the additional features of libdvdnav to see what 
more I can do with it, but for now it was a simple transition.

In aid of being backward compatible (so that I could move to using 
libdvdnav) I applied the 0.9.7 patches for the various *stat() API 
methods. This is so I can simulate "directory listing" of an ISO file.

Patch 1: Add in DVDFileStat and "struct dvd_stat_t" for backward 
compatibility and maintaining portability.

Patch 2: I added a new dvd_input method for calling "unrar". This to 
allow my program to use libdvdread on .ISO files inside RAR archives. It 
uses a slightly patched "unrar" executable with a new -sk<offset> flag 
to specify starting seek position. It takes about two unrar spawns to 
"list" an ISO file, and on average, 2 unrar spawns to send a .VOB file. 
(Assuming VOB files are contiguous).

Patch 3: Add UDF2.50 support to read new BD5/9 disks.

I have only done Patch 1 and Patch 2 so far, and I do not know if it is 
even worth me forwarding them to this list, since they are rather 
specialised for me.

I will consider Patch 3 next, but if anyone has any hints, that would be 
appreciated.

In using libdvdnav, rather than showing a listing of "VOB" files to 
send, can I do something more clever? Like listing the "titles" found 
and send as a (new?) .VOB file. Perhaps select audio stream to use, and 
when sending VOB file, it sends that? Or will libdvdnav only help with 
parsing the DVD menus (which I can do nothing with since I send over HTML).

Sincerely,

Lund

-- 
Jorgen Lundman       | <lundman at lundman.net>
Unix Administrator   | +81 (0)3 -5456-2687 ext 1017 (work)
Shibuya-ku, Tokyo    | +81 (0)90-5578-8500          (cell)
Japan                | +81 (0)3 -3375-1767          (home)



More information about the DVDnav-discuss mailing list