XMovie User's Guide

XMovie was originally written as a faster alternative to Broadcast 2000 for playing long Quicktime movies with stereo sound. Today it gives you the individual freedom to play DVDs.

Menus

OPTIONS
PLAY EVERY FRAME
Forces every frame to be played and eliminates synchronization. Use this to find out how fast your computer is.
ORIGINAL SIZE
Size the frame so that horizontal resolution is 1:1.
SYNCHRONIZE USING SOFTWARE
Try to guess the synchronization instead of locking on the soundcard.
SETTINGS
Display aspect ratio - Determines the aspect ratio of the intended screen size by stretching pixels. Usually either 4:3 or 16:9. Can optionally be disabled so that pixels are always square.

Letterbox aspect ratio - For a letterboxed movie this determines what the movie's aspect ratio would be if the letterbox was cropped, usually 2.2:1. Then by enabling Crop letterbox you can save CPU time and desktop area by displaying only the part of the screen containing the movie. This option only works for DVDs.

Enable SMP extensions - By default XMovie only uses 1 processor to decompress video. Enabling the SMP extensions causes it to use 2 processors.

Preload size - CD-ROM drives can't handle seeking in Quicktime movies so preload size determines a maximum number of bytes ahead of the current file pointer the drive should read sequentially before resorting to an absolute seek. This speeds up Quicktime playback from CD-ROM drives.

AUDIO
Selects among the audio streams in a DVD.
VIDEO
Selects among the video streams in a DVD.

Playing Quicktime Movies

Quicktime is really a wrapper for the various compression standards out there. What you know as Quicktime 4 is really the same as any other version of Quicktime. Quicktime 4 wraps two additional compression standards which aren't present in the previous versions but the method it uses for wrapping is identical to Quicktime 2.

The Quicktime support in XMovie wasn't designed to play movies from the internet. Internet movies are encoded using the two compression standards: Sorenson Vision and QDesign Music. Apple licensed these compression standards for their own use after Microsoft shut them down in 1998, hence it is impossible for anyone but Apple to use Sorenson Vision or QDesign Music.

Your primary use of XMovie is Quicktime movies that you create yourself. It is possible to create Quicktime movies using open compression standards. You can record movies on your computer just like a VCR. XMovie provides a convenient interface for playing these movies.

Playing DVD's

The files you want to play off of DVDs are .vob files. Each of these is either a segment of a movie or a collection of bonus tracks. The other files contain tables of contents and toys which we can't access because of documentation fees.

For the most part, you can simply load the .vob files one by one and watch a movie. There are however, several issues regarding .vob files you're eventually going to encounter.

The first issue is encryption. DVDs are encrypted and under two preliminary injunctions it is illegal to distribute the decryption source code. The GPL extends the MPAA ruling in that decryption may not be distributed even in binary form if it can't be distributed in source form.

Your only option is to rip your entire DVD before playing it using css-cat. The original mpeg2css.c file is too complex to reimplement from deCSS without illegally distributing deCSS. However Gregory Maxwell <greg@linuxpower.cx> says he can probably do it with a trivial patch.

The second issue is the table of contents. When you load a .vob file in XMovie you ever notice how long it takes to initialize? Well XMovie doesn't have access to all the .ifo and .bup files so instead it reads the first minute of movie to try to synthesize its own table of contents. The derived table of contents usually works for the main movie files but sometimes fails for the bonus tracks. Usually the playback ends too soon, seeks to random locations, or just locks up when this happens.

For these cases, you can either ignore the bonus tracks or synthesize your own table of contents using mpeg2toc. Then you can load the custom table of contents you created with mpeg2toc directly into XMovie and it will automatically play the right .vob file. You can keep the custom tables of contents around after you eject the DVD, thus eliminating the need to repeat this procedure.

Finally there's the AC3 decoder. The ac3 decoder is based on ac3dec and as such it can't play AC3 streams below 384kbps without major artifacts. Most AC3 streams are encoded at 192kbps.