Overall jMovie is significantly slower than Rickmovie. The extent to which jMovie's performace could be improved is unclear.
The lack of speed of the IO leads to delay in the startup. The lack of speed of the Imager object leads to skipping of frames. In general, jMovie is faster when run locally as an application than when run remotely as an applet. Currently, the application uses a better image scaling algorithm for smoother images than the applet. In a future versioin, we may enable the user to select the scaling algorithm.
When using a larger test data cube (Figure 1) of dimensions 105x97x97, both versions of jMovie were slowed down considerably. jMovie Application skipped every other frame during animation at the Slowest speed setting, while jMovie Applet skipped two out of every three frames during animation at the slowest speed setting. A future improvement would be to add an option to display only the dimension being animated, as well as the option of not displaying axes.
jMovie is able to dynamically switch between operations. When animating one dimension, the user can click on the axes of another dimension and immediately begin animating the new dimension. However, this results in a misleading Dimension choice menu. If the user were to click on the third dimension's axes, that dimension would now be selected while the choice menu may still show some other dimension as being selected. This was seen to be the only operational problem.
Applet vs. Standalone Application
All of the code for jMovie is able to run as an applet or a standalone application. When trying to get the main class, TheGUI, to run however, the jMovie applet was not able to run due to the presence of a constructor needed for the jMovie application. As a solution, the main class was compiled twice (one with and one without the constructor), while the remaining classes remained unchanged. The jMovie applet can be found at http://sepwww.stanford.edu/sep/esen/display/TheGUI.html. The jMovie standalone application is at /homes/them/esen/movie/display.