VOX and Virvo

From Immersive Visualization Lab Wiki
Jump to: navigation, search



"VOX" is an acronym for VOlume eXplorer, and it describes the volume rendering frameworks for the desktop (DeskVOX) and CAVE-like virtual environments (CaveVOX). VOX uses the volume rendering library Virvo. "Virvo" is an acronym for VIrtual Reality VOlume Rendering.

The goal of the VOX and Virvo projects is to provide interactive direct volume rendering on desktop computers and in virtual environments. VOX and Virvo have been developed in the Cave at Brown University, and in the CUBE in the Virtual Environments Lab at the High Performance Computing Center of the University of Stuttgart.

You can view a screen shot of DeskVOX or read a more [description.htm detailed description], or you can download an MPEG movie (28 MB) of the Virvo virtual reality viewer as it is used in the CUBE. There is also a video of the VR transfer function editor, which is related to the IPTW/EGVE publication. The following movie formats are available for download: 22MB MPEG-1, 15MB AVI, 6 MB MPEG-4.

A video from the Brown Cave can be found here (MPEG4 w/audio, 20MB).


How to Download

DeskVOX is open source software available for Windows, Linux, and Mac operating systems. The source code can be downloaded from the Deskvox page at Sourceforge. Its GUI uses the FOX Toolkit API. The Windows version auto-installs thanks to NSIS.

In order to download the source code from the version control system (SVN) you need to do the following from a Cygwin or Unix command line:

  svn co https://deskvox.svn.sourceforge.net/svnroot/deskvox/trunk deskvox

CaveVOX is based on Brown's in-house Cave framework and cannot be downloaded here. Permission to use CaveVOX may be granted on a case-by-case basis; please contact the author.

Here you can download the latest releases of DeskVOX:

Version Windows Linux Apple Info Release Date

DeskVOX2_11.exe (2.3MB)




DeskVOX2_01b.exe (1.7MB)

deskvox2_01b.tar.gz (1.6MB)




Here's a tip for the Windows version of DeskVOX: Volume files can be passed to the program by drag-and-drop on the program icon. Or, for even greater convenience, you can create an entry in the Explorer's View/Options/FileType list, so that you can display volume files with a double-click on the file.

Sample Volume Files

Here are a few example volume files (1.4 MB) to start with.

You will find more on the Tübingen Volume Visualization page: either rename the files from '.raw' to '.dat' and use VConv to convert them to Virvo files, or you can dowload them in Virvo format here:
aneurism.zip (309 KB), bonsai.zip (3296 KB), engine.zip (3138 KB), foot.zip (4413 KB), fuel.zip (6 KB), hydrogen-atom.zip (98 KB), lobster.zip (1923 KB), marschnerlobb.zip (36 KB), neghip.zip (78 KB), nucleon.zip (18 KB), shockwave.zip (70 KB), silicium.zip (35 KB), skull.zip (9917 KB), statue-leg.zip (1750 KB).

Movie Scripts

To write a script and create images which can later be merged to a movie clip, here are [moviescripts.zip two example Virvo movie script files (.vms) (1 KB)]:

  • fullrot180.vms rotates the data set by 360 degrees in 180 time steps.
  • timesteps.vms switches through 8 time steps of a volume animation.

To merge the images files into a movie clip use ffmpeg:

To take a list of images that are padded with zeros (image00001.tif, image00002.tif, etc) use the following command:

ffmpeg -r 30 -f image2 -s 1280x720 -i image%05d.tif -vcodec libx264 -crf 25  -pix_fmt yuv420p animation.mp4

where the %04d means that zeros will be padded until the length of the string is 4 i.e 0001…0020…0030…2000 and so on. If no padding is needed use something similar to pic%d.png or %d.png.

   -r is the framerate (fps)
   -crf is the quality, lower means better quality, 15-25 is usually good
   -s is the resolution
   -pix_fmt yuv420p specifies the pixel format, change this as needed

the file will be output (in this case) to: animation.mp4


This software is provided "as is" and without warranty of any kind, express, implied or otherwise, including without limitation, any warranty of merchantability or fitness for a particular purpose.