Modifying DVD's under Linux

cleverhandle

Diamond Member
Dec 17, 2001
3,566
3
81
Anyone got a good guide for removing trailers and other junk from a DVD using Linux? I've got Animal House on DVD and it makes you watch 10 minutes of crap before it will go to the menu. I'm fine with keeping the whole menu structure and everything intact (which would probably mean it will require a DL disc), I'd just like the DVD to cut right to the menu.

All the guides I've seen are either too simple (taking a single mpeg and burning that to a disc) or too complex (completely regenerating the entire menu structure and everything else using dvdauthor). It seems like there should be an easier way to do this.
 

cleverhandle

Diamond Member
Dec 17, 2001
3,566
3
81
Interesting, thanks for the link. I'm surprised DVDShrink would work so well under WINE.

And yeah... the native tools seem worlds away from what the Windows tools can do at the moment. Or probably they can ultimately do the same stuff, but the Linux tools make you do it in excruciating technical detail. In a way, that's typical of what I expect from (and like about) Linux, but usually there are some nice scripts that other people have put together to help ease you into things. After a great deal of futzing around, I finally managed to take a vob file from one DVD and author a new ISO for it using only command line tools, and I even think I mostly understand the process. Definitely non-trivial, though...
 

cleverhandle

Diamond Member
Dec 17, 2001
3,566
3
81
After much more exploration, I finally found a note that PGCEdit is cross-platform. I had seen it mentioned before, but figured it was Windows-only. PGCEdit does precisely what I want, and does so using some pretty nifty assembly-like tricks to boot. Very nice program.
 

jcmuse

Senior member
Sep 21, 2005
330
0
76
kool, what are you using for encoding though? dvd5 or are you doing a dvd9 copy?
 

drag

Elite Member
Jul 4, 2002
8,708
0
0
Personally I just use a Linux box as a media box and most programs I use allow me to simply skip over the 'forced' portions of the DVD.

Otherwise I don't know of a paticularly easy way to do it.
 

cleverhandle

Diamond Member
Dec 17, 2001
3,566
3
81
This one I did as a DVD-9 copy on a DVD+R DL disc, because I wanted the menu and extras and everything. But I played around with vamps and that seems to work OK for 9-to-5 shrinking.

Last thing I need to do is get the booktype set correctly for compatibility, but dvd+rw-booktype doesn't appear to work with my NEC. Looks like there's a necflash utility that can do something similar though.
 

cleverhandle

Diamond Member
Dec 17, 2001
3,566
3
81
Just for completeness, I went through and tried out vamps to shrink the film to DVD-5. Seems to work OK - the resulting disc appears to pick up an occasional, very small visual skip, but it's certainly quite watchable. Given that you can buy Verbatim DVD+R-DL's at $1.50 now, I'd probably prefer to do that instead, if only because mirroring the disc completely is so much simpler than messing around with individual tracks.

I took notes as I went, so that I'll be able to do this more efficiently next time. I posted them below, in case they're helpful to anyone. Suggestions welcome...

DVD-Burning Notes


1) Getting .vob's

Use 'vobcopy -l' to grab a single large vob for the main title or 'vobcopy -m'
to mirror the whole disk structure. If cloning the disc, skip to 6.


2) Getting chapter info

Use 'dvdxchap' and output to a file. The information can be used later with
dvdauthor.


3) Remultiplexing

Not always strictly necessary, but often helpful. Use a script something like
the following

mkfifo audio
mkfifo video
tcextract -i <inputfile> -x ac3 -a 0 > audio &
mpeg2desc -v 0 < <inputfile> > video &
mplex -f 8 -V -o <output.mpg> audio video

The input may be a .vob or an .mpg. The output should be an .mpg. Use 'tcprobe'
to get file information if necessary.


4) Shrinking

The magic number for a single-layer disc is about 4,775,000,000 bytes. If
necessary, use 'vamps' to shrink the .mpg to fit. Calculate the original
size divided by the desired size and round up to the nearest 0.1 (since the
command only shrinks video). Use the following command to shrink...

vamps -e <factor> -a 1 < <input.mpg> > <output.mpg>


5) Authoring

Use dvdauthor to create the necessary file structure that will become the
DVD iso:

dvdauthor -o dvd -t -c "hh:mm:ss.fff,..." <input.mpg>
dvdauthor -o dvd -T

The chapter info will need to be extracted from the output of dvdxchap - no
spaces allowed. The results can be tested by running:

xine "dvd:`pwd`/dvd"


6) Creating the ISO

mkisofs -dvd-video -v -V <name> -o dvd.iso dvd

<name> is the volume id, which may be up to 32 characters, but may not use
spaces or other special characters. Typically, the capitalized title and
underscores are sensible.


7) Burning the DVD

wodim -v -dao -data -pad dev=ATAPI:0,0,0 speed=<speed> driveropts=burnfree dvd.iso


Appendix) pgcedit

'pgcedit' can be used to remove various restrictions, modify menu structures,
and set defaults without complete remastering of the file system. See guides
on the web at:

http://www.videohelp.com/~r0lZ/pgcedit/#documentation