The first step is to produce a series of frames. This is done by drawing a frame in ARCPLOT, and then dumping the image via the SCREENSAVE command. Here is the AML which produced this series of frames.
Good. Now there is a bunch of files named mm*.ras, were * is 1-50. Weeeell, actually not quite now. It appears that ARCPLOT (rev 6.1.1 on SUN) chokes after 18 or 20 iterations of the
Of course, this is a case for a 3d-type flyby. A flat map of time-series data would be done with a series of reselects for different time slices. I can't wait to see some examples...
Now, to mpeg_encode it. Get the source code from
ftp://mm-ftp.CS.Berkeley.EDU.
This is also a good place to get mpeg_play. It seemed to compile just fine
on my IBM RS6000 using gcc, although there were differences between the
test mpeg file that is included and one that I encoded. Don't know why.
Now can we encode? Not quite yet. Mpeg_encode expects the input frames to be in ppm, pnm ,or yuv format. You have to get the netpbm toolkit for translating the sunraster screen dumps into ppm. I forget where I got mine, but you can find it in several places, these are from the documentation:
* wuarchive.wustl.edu (128.252.135.4), directory /graphics/graphics/packages/NetPBM * ikaros.fysik4.kth.se (130.237.35.2), directory /pub/netpbm. * ftp.informatik.uni-oldenburg.de (134.106.1.9). This site also carries binaries for the Amiga. * peipa.essex.ac.uk (155.245.115.161), directory ipa/src/manip * ftp.rahul.net (192.160.13.1), directory /pub/davidsen/source * ftp.cs.ubc.ca, directory /ftp/archive/netpbmFollow the directions, run make, and install the compiled routines somewhere (I put them in /usr/local/netpbm/). Now you can get ready to run mpeg_encode.
Mpeg_encode uses a parameter file to control what you want it to do. I'm not going to get into this parameter file since the documentation is pretty good. Here is the parameter file I would use to encode the sunraster frames created by makemovie.aml:
PATTERN IBBPBBI OUTPUT output.mpg BASE_FILE_FORMAT PNM #(changed) YUV_SIZE 352x240 INPUT_CONVERT /usr/local/netpbm/rasttopnm * #(changed) GOP_SIZE 6 SLICES_PER_FRAME 1 INPUT_DIR /projects/mound #(changed) INPUT mm*.ras [1-50] #(changed) END_INPUT PIXEL HALF RANGE 10 PSEARCH_ALG LOGARITHMIC BSEARCH_ALG CROSS2 IQSCALE 8 PQSCALE 10 BQSCALE 25 REFERENCE_FRAME ORIGINALThis looks bad, but all I did was take the template parameter file, and change the lines marked #(changed). Everything else is the default value, and I haven't gotten around to fooling with them.
Now you can run mpeg_play on output.mpg, and if you like what you see, serve it up to the internet.