XMovie User's Guide

XMovie was originally written as a simple, faster alternative to Broadcast 2000 for playing TV shows with stereo sound. Today it supports the following formats:

MPEG-1 system streams
MPEG-2 system streams
MP3 audio
MP2 audio
AC3 audio
MPEG-1 video
MPEG-2 video
Quicktime video:
Motion JPEG A
Uncompressed RGB
Component video
Progressive JPEG
PNG
YUV 4:2:0
DV
Quicktime audio:
Twos complement
IMA4
ulaw

Menus

OPTIONS
PLAY EVERY FRAME
Forces every frame to be played regardless of synchronization.
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 MPEG.

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

Audio Priority - Some people think the audio interferes with smooth video. You can set the nice value for the audio here. A nice of 0 puts audio on the same priority as video. A nice of 20 puts audio in the lowest priority.

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 a SEEK_SET. This speeds up Quicktime playback from CD-ROM drives.

AUDIO
If you're playing a VOB file, select among the audio streams.
VIDEO
If you're playing a VOB file, select among the video streams.

Quicktime Info

Although not developed by Microsoft, 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 introduced Windows Media Player in 1998 to avert competition, 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.

DVD Info

Kernel upgrade

XMovie can be used as a rudimentary DVD player by playing the VOB files one by one. 50% of DVD support in Linux was integrated in the kernel. To play DVD's in a 2.2.* kernel you need many many patches. The order in which you apply the patches and compile the kernel affects your success rate.

Download and compile the kernel with no patches first.

Then download the following into your home directory. Download the most recent udf patch from http://www.csc.calpoly.edu/~bfennema/udf.html.

Download the most recent dvd patch from http://www.kernel.dk/

gunzip all the .gz files. CD into /usr/src/linux and run

patch -p1 < ~/dvd-cd-2.2.14-3.diff

followed by

patch -p1 < ~/udf-2.2.14.diff

Then make clean;make -j 1 dep;make bzlilo;make modules;make modules_install

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 virtual machine programs.

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 issue is cell-play movies. Since cell-play movies interleave the different camera angles in a vob file, you'll get the sections repeating and producing corrupt sound.

The solution to both problems lies in the IFO files. Reading the IFO files is the subject of massive reverse engineering work going into OMS the official Linux DVD player.