Paul Rajlich
Research Programmer
Visualization and Virtual Environments
National Center for Supercomputing Applications
Red Giant movie
David Porter, Paul Woodward, and Mike Norman looking at Red Giant on NCSA display wall.

NCSA Pixel Blaster

NPB is a simple to use distributed movieplayer that is meant for use with tiled display walls. It runs over Chromium or WireGL 1.2.1. All that you need is your movie frames in any resolution and in any standard format. NPB takes care of the rest.

Download the newest version:

npb-1.2.tar.gz (~115K)
NOTE: - the dist_tex spu in Chromium that NPB depends on is broken in Chromium versions 1.4-1.7. It is fixed in the current CVS. However, users report and I have confirmed that the best performance is with Cr 1.2.

Here's a quick description of how it works:

You can run your movie in LOCAL mode. In this mode, the full frames are loaded from disk on the client, broken up into textures, and sent across the cluster using WireGL or Chromium. This mode works just fine, but the performance is poor for very high resolution movies. It is not scalable.

To improve performance, I've made modifications to WireGL . These modifications have also made their way into Chromium (David Thompson's dist_texture SPU). The result is that the movie player has two additional play modes:

You run the movie once in WRITE mode. This mode is similar to the LOCAL mode described above. However, as it is running, it is caching the textures onto the disks across the cluster.

From then on, you can run your movie in DISTRIBUTED mode. In this mode, the client simply sends filenames across the network and the textures are loaded on each pipeserver (or crserver) from local disk. This mode gives the movieplayer scalability, allowing it to play very high resolution movies at a good framerate.

So, the movieplayer is extremely easy to use! You just play your movie slowly once to distribute it. Unless somebody removes your files from the cluster, your movie is ready to run at full speed from then on.

(C)opyright 2003, Paul Rajlich       Want to see what I am doing now? Visit