glslides - Stereo Slide Viewer

Written by Paul Bourke
June 2000


At the most basic level, "glslides" is a stereoscopic slide show presentation tool however it has a number of features that allow it coordinate a whole stereoscopic experience. It currently supports both frame sequential stereo3D (eg: 120Hz refresh and active glasses) or passive stereo using double width displays (dual pipe cards, dual projectors, and polaroid glasses).

Description file

While "glstereo" can display a single stereo pair, the normal operation involves a data file that at least contains a list of the image files. The slidelist file (last argument on the command line) can also specify a delay which can be used for free-running shows. Each line usually contains two file names, the left and right eye image. A line can also contain information that results in another application being launched.

As an example of a slidelist file consider the following:
# This is a sample slideshow file
L_0175.tga R_0175.tga 30 
4.tga 4.tga 30
!./ runme
3.tga 3.tga 30
4.tga 4.tga 30
!/home/users/pbourke/demos/geometry/knots/knot1 runme
5.tga 5.tga 30
6.tga 6.tga 30
# The end

It is mostly obvious, each line must contain at least two items. In the case of stereo pairs the two items are the names of two TARGA files. The TARGA files must be either 24 or 32 bit, in the later the alpha channel will be ignored. A line starting with a "#" is taken as a comment. A line starting with a "!" is interpreted as a directory where the program/script is given as the second item. The optional third item on each line is the delay before moving onto the next item in the automatic play mode, the units are 1/10 second. Without a time delay "glslides" could be used a crude stereo movie player.

For frame sequential stereo the images can be placed within a window but for passive stereo it is generally necessary to use the full screen mode. The two images will be centered appropriately if the images are smaller than the screen size, note however that the two images must be the same size even though each image within a slide show can be of differing sizes. If the images are larger than the screen size the effect is undetermined, it can vary across OpenGL cards.

Command line arguments and keystrokes

The current command line arguments and keyboard shortcuts can be listed by typing "glslides" by itself on the command line. This is an error because it requires at least one argument, namely the slidelist file.

Usage: ./glslides [options] slidelistfile
          -h    this text
          -s    active stereo mode
          -ss   dual screen stereo mode
          -f    full screen mode
          -a    start in autoplay mode
          -i    read images instead of slidelist
Key Strokes:
           q    quit
           g    autoplay
           h    go to frame 1 (home)
           <    last frame
           >    next frame
  left arrow    last frame
 right arrow    next frame
          f1    toggle help information
          f2    jump 10 frames
          f3    jump 100 frames
          f4    jump 1000 frames