[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[VCDImager Bugs/Devel] vcdimager on BSD/OS 4.3
From: |
Steven M. Schultz |
Subject: |
[VCDImager Bugs/Devel] vcdimager on BSD/OS 4.3 |
Date: |
Wed, 29 Aug 2001 20:47:00 -0700 (PDT) |
Hello -
Recently I downloaded vcdimager-0.7.9 and ported it to BSD/OS 4.3
(well, technically 4.3beta3 ;)). Surprisingly few changes were
required, 3 .c files and 3 Makefile.am files and the changes are
minimal.
Most of the changes to .c files simply augment the "defined(__linux__)"
with "defined(__bsdi__)" so that CD/DVD devices can be used with
the "--cdrom-device" option.
There is however one change to a .c file that deserves special mention.
Using 'fseek' and 'fread' to access the ISO portion of a VCD can cause
"illegal command for track" errors with some devices. This is because
the 'raw' (/dev/rsr0c in BSD speak) device is used and the stdio
library functions assign an arbitrarily large (64KB) buffer to do I/O
with. Issuing a 64KB read instead of a 2KB read causes problems with
some devices. Since 'ioctl' is used to actually read the sectors later
it seems to be a good idea to use 'lseek' and 'read' instead of stdio
routines to access the ISO area.
The Makefile.am changes are a _hack_, the way I did them is known not
to be correct but I did not know how best to include additional
libraries on an OS dependant basis. I needed to link programs against
"-ldvd" which is a linux DVD/VCD/CD ioctl emulation library described
below.
I have a "libdvd" package (attached below) which emulated the Linux
DVD/VCD ioctl calls. The VideoLanClient ('vlc' from www.videolan.org)
project has incorporated this into their 0.2.83 release so I know it
works for at least one other program than vcdimager (and xine) ;)
At any rate with the changes below I've successfully rip'd and created
a VCD with vcdimager-0.7.9 under BSD/OS 4.3 so I'm submitting the
changes for your consideration.
I see that 0.7.10 was just announced as I typed this - oh well ;)
Steven Schultz
address@hidden
diffs
Description: 0.7.9 diffs
libdvd.tar.bz2
Description: libdvd for BSD/OS
- [VCDImager Bugs/Devel] vcdimager on BSD/OS 4.3,
Steven M. Schultz <=