XAnim 2.80.1 21Mar99 COMPILING ON UNIX Systems (And all Unix derivatives) Please also read the following files: README.dll README.zlib If you can't go the dll route, then you need to read the "cinepak.readme", "indeo.readme" and the "creative.readme" files. If you have Imake on your system, Read and edit the Imakefile and then you can type xmkmf which should produce a Makefile from the Imakefile. Then you can type: make xanim If this doesn't work you can copy Makefile.unx to Makefile. Read and edit the Makefile(that you just created). Make any necessary changes for your particular machine or preferencs and the type: make xanim NOTE: That in the Imakefile, XCOMM is used as a comment. This is recommended by X11R6, but may break older revs. To fix, simply replace every occurence of "XCOMM" with "#" in the Imakefile. See top of Imakefile for more details. COMPILING ON VMS/AXP Systems The files make.com and xanimXX.opt are provided for VMS users. make.com should correctly detect wether you're running DECWindows XUI or DECWindows MOTIF(revs 1.1 and 1.2) and use the appropriate xanimXX.opt file. If you use the VMS MMS (or "make") facility, then a descript.mms file is provided. NOTE: since VMS is case insensitve, all options to xanim must be enclosed in double quotes in order for them to be proper recognized. Example: xanim "+f -Cn" anim1 anim2 HOW TO USE XANIM The following is a copy of the man page with examples at the end. SYNOPSIS xanim [ +Vnum ] [ +Aaopts ] [ +Ccopts ] [ +Ggopts ] [ +Mmopts ] [ +Ssopts ] [ +Wwopts ] [ +Zzopts ] [ +opts ] animfile [ [ +opts ] [ animfile ] ... ] DESCRIPTION XAnim is a program that can display animations of various formats on systems running X11. XAnim currently supports the following animation types: + FLI animations. + FLC animations. + IFF animations. + GIF87a and GIF89a files. + GIF89a animation extension support. + a kludgy text file listing gifs and what order to show them in. + DL animations. Formats 1, 2 and most of 3. + Amiga PFX(PageFlipper Plus F/X) animations. DISABLED TEMPORARILY. + Amiga MovieSetter animations(For those Eric Schwartz fans). + Utah Raster Toolkit RLE images and anims. + AVI animations. + Quicktime Animations. + SGI Movie Format Files. + WAV audio files may have their sound added to any animation type that doesn't already have audio, by specifying the .wav file after the animation file on the command line. + JFIF images. NOTE: use XV for single images. This is more for animation of a sequence of JPEG images. + MPEG animations. NOT FULLY SUPPORTED. NO AUDIO. And currently only Type I Frames are displayed. Type B and Type P frames are currently ignored, but will be added in future revs. + AU audio files may have their sound added to any animation type that doesn't already have audio, by specifying the .wav file after the animation file on the command line. + any combination of the above on the same command line. Please see the file Formats.doc for specific support details on each format. XAnim also provides various options that allow the user to alter colormaps, playback speeds, looping modes and can pro- vide on-the-fly scaling of animations with the mouse. OPTIONS A + will generally turn an option on and a - will turn an option off. This can be reversed at compile time. (see xanim_config.h). In each SubMenu, the options can be run together with no intervening spaces. In the list of SubMenu options presented below, the first letter given is the letter that specifies the SubMenu and should NOT be repeated if several SubMenu options are to be run together. For example, "+Cn +Cs10 +CF4" can also be written as "+Cns10F4" or "+CF4s10n". A + or a - within a SubMenu will be an exit from that sub- menu. Options will affect all animations following the invocation of that option. Some options may be changed in between animations without affecting previous animations. In the following sections, an "num" represents an integer number and an "fnum" represents a floating point number. Don't include the double quotes. If a floating point number is of an integer amount, the "." need not be specified. There should be no spaces between the option and the numbers. aopts SubMenu for Audio Options +Ae Audio Enable. On by default. +Ak This option allows XAnim to skip video frames in order to help keep video in sync with audio. Default is on. +Am Take the audio from the next audio-only file and use it with the video file previous to it. Any audio already existing in that video file will be discarded. NOTE: XAnim by default will add audio from an audio-only file to a previous video only(ie not audio) file. This option just forces the issue if the previous file already has audio. Default is off. +AM Take the audio from the next audio-only file and use it with the video file previous to it. And in addition, scale the timing of that video file to be of the same duration of this audio file. Any audio already existing in that video file will be discarded. Default is off. +Ap"num" This turns a hardware specific Audio port on or off. Port 0 - main speaker (on by default) Port 1 - headphones (off by default) Port 2 - line out (off by default) +As"fnum" Scale Audio playback speed by "fnum". Only the range 0.125 to 8.00 is allowed. NOTE: CURRENTLY VIDEO DOESN'T SCALE WITH AUDIO. +Av"num" Sets the inital Audio Volume(0-100) with 0 the lowest. default is 40. See xa_config.h copts SubMenu for Color Options +C1 Create a colormap from the first frame of a TrueColor anim and then remap the remaining frames to this colormap. This can potentially add significant time to the startup of an ani- mation but usually results in better colors. The animation needs to be buffered for this option to work. Not valid for TrueColor or DirectColor displays(nor is it needed). +C3 Convert TrueColor anims to 332(StaticColor). TrueColor anims are animations that provide separate RGB info for each pixel, rather than each pixel being an index into a global color- map. AVI(16bit CRAM), QT(RPZA and RLE depth 16 and 24) and URT RLE 24 bit anims are examples of TrueColor anims. This option is ignored for TrueColor or DirectColor displays. +CA Create a colormap from each frame of a TrueColor anim. This can be useful if the colors radically change during the course of the animation. This can take a VERY,VERY long time at start up. Animation must be buffered. This option is ignored for TrueColor or DirectColor displays. +Ca Remap all images to single new cmap created from all of the colormaps. +Cd Use Floyd-Steinberg dithering if needed for non-monochrome displays. This will cause a reduction in playback speed. +Cf Forcibly remap to all frames to 1st frame's cmap. +CF0 Turns off CF4 option. +CF4 This option samples the colors of true color animations ahead of time and forms a color lookup table. Beats the just truncating to a RGB 332 color table and IMHO beats dithering. See the +s option below(also in copts submenu). Currently ONLY Work with unbuffered animations +Cg Convert TrueColor anims to gray scale. This option is ignored for TrueColor and DirectColor displays. +Ch Use histogram to aid in color reduction. His- trogramming is only done on frames that are buffered. +Cm This option is currently needed if you want to dither TrueColor anims to a 332 colormap. Ani- mation must be buffered. Typically +bC3dm is the option to use. This can take a VERY long time at start up. +Cn Don't create new colormap but instead allocate colors from the X11 Display's default cmap. +Cs"num" This is the number of frames the +CF4 option looks at ahead of time. More frames potentially yields better colors results, but takes more time at start up. default is 5. gopts SubMenu for Gamma Options +Ga"fnum" Set gamma of animation to be displayed. +Gd"fnum" Set gamma of display. 1.0 is no change. gamma's greater than 1.0 typically brighten the anima- tion. mopts SubMenu for Median-Cut Quantization Options +Ma compute box color from average of box. +Mc compute box color as center of box. +Mb"num" Truncate rgb to "num" bits before quantizing. sopts SubMenu for Scaling Options +Si Half the height of IFF anims if they are interlaced.(Not completely reliable since not all IFF anims correctly identify themselves as interlaced). +Sn Prevents X11 window from resizing to match animations's size. +Sr Allow user to resize animation on the fly. Enlarging an animation can greatly reduce play- back speed depending on the power of the cpu. +Ss"fnum" Scale the size of animation by "fnum" before displaying. +Sh"fnum" Scale the horizontal size of the animation by "fnum" before displaying. +Sv"fnum" Scale the vertical size of the animation by "fnum" before displaying. +Sx"num" Scale the animation to have width "num" before displaying. +Sy"num" Scale the animation to have height "num" before displaying. +Sc Copy display scaling factors to display buffer- ing factors. +SS"fnum" Scale the size of the animation by "fnum" before buffering it. +SH"fnum" Scale the horizontal size of the animation by "fnum" before buffering it. +SV"fnum" Scale the vertical size of the animation by "fnum" before buffering it. +SX"num" Scale the animation to have width "num" before buffering it. +SY"num" Scale the animation to have height "num" before buffering it. +SC Copy buffer scaling factors to display scaling factors. wopts SubMenu for Remote Window and Control Options. (See "Remote_Window.doc" ) +W"id" Specify X11 Window "id" of window to draw into. +Wd Don't refresh window at end of anim. +Wnx Use property x for communication. Default is XANIM_PROPERTY +Wp Prepare anim, but don't start playing it. +Wr Resize X11 Window to fit anim. +Wx"num" Position anim at x coordinate "num". +Wy"num" Position anim at y coordinate "num". +Wc Position relative to center of anim. zopts SubMenu for Special Options +Ze XAnim will exit after playing through command line once. +Zp"num" XAnim pause at frame "num" and then wait for user input. Several pauses may be specified. Each group of pauses will only affect the animation immediately following them on the command line. Pauses will occur at least once. +Zpe XAnim will pause on the last frame of the anim. +Zr This option pops up the Remote Control Window. This overrides the default condition set in xanim_config.h. Remote Control support must be compiled into XAnim for this to work. +Zv This option cause XAnim to exit prior to even displaying the animation. This is useful in conjunction with the +v option if you just want to obtain info about the animation without actually playing it. Normal Options +b Uncompress and buffer images before displaying. This only applies to AVI, QT, IFF, FLI, FLC, JPEG, MPEG and DL animations. The rest(GIF87a, GIF89a, PFX and RLE) are currently always uncompressed and buffered. This is cleared by the +f option. +B Used X11 Shared Memory(if present)for unbuffered animations only.(This is mutually exclusive with +b above). +D Use X11 Multi Buffering (if present) to smooth animations by double-buffering. Default is on. +f Don't load anim into memory, but read each sec- tion only when needed. This is supported only for AVI, QT, IFF, FLI, FLC, JPEG, MPEG and DL animations. This option is cleared by the +b option. This saves memory at the cost of speed. +c let xanim know that iff anim is a nonlooping one. +d"num" debug switch. "num" can be from 0(off) to 5(most) for level of detail. +F Floyd-Steinberg dithering when needed. +j"num" "num" is the number of milliseconds between frames. if 0 then the time specified in the animation is used for timing purposes. +l"num" loop animation "num" number of times before mov- ing on to next animation. +lp"num" ping-pong animation "num" number of times before moving on to next animation. +N don't display images. Useful for benchmarking. +o turns on certain optimizations. See xanim.readme. +p Use Pixmap instead of Image in X11. This option has no effect if the animation is buffered(either by default or with the +b option). +q Prevents XAnim from printing out the title header. Useful for when XAnim is called by other programs where no tty output is desired(doesn't affect +v or +d# options). +root Tiles animation/video onto X11 root screen. +r Allow color cycling for IFF single images. +R Allow color cycling for IFF anims. (default should be off) +T0 Title option 0. Title is just XAnim. +T1 Title option 1. Title is current anim name. When anim is stopped, the current frame number is included. +T2 Title option 2. Title is current anim name and current frame number. +v Verbose mode. Gives some information about ani- mation such as size, number of frames, etc. +V"num" Select X11 Visual to use when displaying anima- tion. The "num" is obtained by using the +X option of xanim. +Vclass Select the best X11 Visual of Class class when displaying the animation. class can be anyone of the following strings and is case insensi- tive. (ie StaTicGraY is same as staticgray). staticgray Select best StaticGray Visual. grayscale Select best GrayScale Visual. staticcolor Select best StaticColor Visual. pseudocolor Select best PseudoColor Visual. truecolor Select best TrueColor Visual. directcolor Select best DirectColor Visual. +X X11 verbose mode. Display information about the support X11 visuals. WINDOW COMMANDS Once the animation is up and running there are various com- mands that can be entered into that animation window from the keyboard. q quit. Q Quit. g Stop color cycling. p Toggle ping pong flag for looping. r Restore original Colors(useful after g). w Restore original window size(useful after resizing). z This pops up or removes the Remote Control Window. Remote Control support must be compiled into XAnim for this to work. Toggle. starts/stops animation. , Single step back one frame. . Single step forward one frame. < Go back to start of previous anim. > Go forward to start of next anim. m Single step back one frame staying within anim. / Single step forward one frame staying within anim. - Increase animation playback speed. = Decrease animation playback speed. 0 Reset animation playback speed to original values. AUDIO RELATED WINDOW COMMANDS 1 Decrement volume by 10. 2 Decrement volume by 1. 3 Increment volume by 1. 4 Increment volume by 10. s Toggle. Audio Volume(MUTE). on/off. 8 Toggle. Main Speaker. on/off. 9 Toggle. Headphones. on/off. MOUSE BUTTONS Once the animation is up and running the mouse buttons have the following functions. Single step back one frame. Toggle. starts/stops animation. Single step forward one frame. BUFFERING, PIXMAPS and READ_FROM_FILE Options XAnim by default will read the entire animation into memory. PFX, Moviesetter, GIF or URT RLE type animations are always uncompressed and stored in memory as individual images. For the AVI, QT, IFF, FLI/FLC, JPEG, MPEG and DL animations, only the compressed delta is stored. These deltas are then uncompressed each time they need to be displayed. The buffer option(+b) may be used to potentially speed up playback by uncompressing and storing these images ahead of time. But more memory is used up in the process. When an XPutImage is called, the image typically gets copied twice, once to memory and then from there onto the display. A pixmap is directly copied onto the display without the first copy. This is why it is sometimes much faster to use the pixmap option(+p). Each image isn't converted into a pixmap until the first time it is displayed. This is why the first loop of an animation using this option is sometimes slower than subsequent loops. While the pixmap option may improve playback speed, it will slow things down if on-the- fly scaling needs to be performed. This is because XAnim no longer has direct access to the image and needs to get a copy of it before it can be scaled. The read from file option(+f) causes XAnim not to store the compressed deltas in memory. Instead as each image is to be displayed, XAnim reads the corresponding compressed delta from the file, expands it and then displays it. While this can dramatically cut down on memory usage, the necessary reads from disk(or whatever) can slow down playback speed. XAnim still needs to allocate one to three image buffers depending on the type of animation and the scaling options used. This option is only supported for AVI, QT, FLI/FLC, IFF, JPEG, MPEG and DL animations. The BODY chunk of IFF animations is not included in this. As a result, an IFF ani- mation that is made up of several BODY chunks will not currently benefit from this option. SCALING Options There are two sets of scaling options. One set, the display scaling factors, affects the size of the animation as it is displayed. The other set, the buffer scaling factors, affect the size of the images as they are stored in memory(buffered). The buffer scaling factors only affect animations that are buffered and can greatly increase or decrease memory usage. These two sets are completely independent of each other. You can set the buffer scaling factors to 20 times the normal animation size and not affect the size at which that anima- tion is displayed. The images are stored at 20 times the normal size(and at 400 times the memory usage), but then get scaled back down to normal size before being displayed. NOTE: that an animation must be buffered in order for the buffer scaling factors to have any affect on it. The display scaling factors affect all animations. You can create pixellation like affects by buffering the animation at 1/8 it's normal size, but keeping the display scaling factors at the original size. (IE "xanim +bSS0.125 anim.anim"). Many times it's faster to store and display an animation with large dimensions at half-size. The option "+bSS0.5C" or "+bSS0.5s0.5" both will accomplish this. To save memory, you could even store the animation at half size and yet display it at full size. "+bSS0.5" will accomplish this. FORWARDS, BACKWARDS and OPTIMIZATION. Many type of animations(FLI/FLC/IFF/some AVI and QTs) are compressed with forward playback in mind only. Each delta only stores the difference between the current frame and the previous frame. As a results, most of these animations don't display correctly when played backwards. Even when buffered up, these may not work, since XAnim only stores the smallest rectangle that encompasses the changes from the previous frame. You can force XAnim to store the entire frame by specifying the "-o" option to turn this optimization off. This will most likely use more memory and slow down the ani- mation, since more of the image needs to be stored and/or displayed. COLOR OPTIONS Most of this will be a TBD for a future rev and what's here might be sketchy, incomplete or just plain confusing. TrueColor and DirectColor displays don't need to worry about most of these options, as the animations can be displayed in their original colors(ignoring monitor variations etc). How- ever, TrueColor and DirectColor displays can't display animations that employ color cycling techniques where the colormap changes from frame to frame. DirectColor could potentially support this, but not TrueColor. For the rest of the displays, the problem becomes matching the colors in the animations to the available colors of the Display. For most PseudoColor displays this means 256 colors. Many of which are already in use by various other programs. XAnim defaults to creating it's own colormap and using all the colors from that. The window manager then installs this new colormap, whenever the mouse pointer is inside the XAnim animation window(Sometimes a specific action is required to change the ColorMap Focus, like click- ing in the window or pressing a specific key). In any case, this action usually causes all the other colors on the screen to be temporarily "messed-up" until the mouse is moved out of the animation window. The alternative, is to use the "+Cn" option. Now XAnim tries allocating all the colors it needs from the current colormap. If it can't get a certain color, then XAnim choose one that is "close" to this certain color. Close is completely arbitrary. The animation is now displayed in colors that are different than the ori- ginal colors. This difference may or may not be noticeable. Another big problem is when the animations are what I called TrueColor animations. Where each pixel is stored as RGB tri- plets. For example, AVI 16 bit CRAM animations. Each pixel has 5 bits of Red, 5 bits of Green and 5 bits of Blue info associated with it. This means there can be up to 32768 unique colors in each image. And on most PseudoColor displays we can only display 256 unique colors. Beside get- ting better displays, what can we do? XAnim defaults to truncating the RGB information from 555 to 332. That is to 3 bits of Red, 3 bits of Green and 2 bits of Blue. Less on Blue because the human eye is more sensitive to Red and Green than Blue. This 332 colormap happens to be 256 colors in size, which nicely fits in with our display. If our display only had 64 colors, then XAnim is smart enough to truncate things down to 222. Now the problem is the colors of the displayed anim are noticeably different than the ori- ginal colors. Typically you can see color banding etc. While this is fine to get a feel for the animation, we can do better. One of the solutions XAnim currently offers is the "+bC1" option. What this does is choose the the best 256 colors from the first image of the animation. Then each pixel of each subsequent image is remapped to one of these 256 colors. This takes up some CPU time up front and more memory since each image needs to be buffered, but results in a colors that are closer to the originals. Another option, "+bCA", chooses the best 256 from each image, then 256 colors from all these colormaps are chosen as the final colormap. This is useful if the colors in the first image aren't representative of the rest of the animation. This can be very slow. Another option that is supported, but not really optimized for yet is "+bC3dm". This causes XAnim to use a 332 colormap and then apply a Floyd-Steinberg dither algorithm to each image. Currently this is very slow. Dif- ferent dithers(like Ordered) and better optimizations might speed this up in future revs. In general, handling of TrueColor animations in XAnim needs to be improved. Another scenario where colors need to be remapped, is when several images or animations with different colormaps need to be displayed. Changing the colormap usually results in an annoying flicker. One solution to this is to remap all of the images/animations to the same colormap. The "+Ca" option chooses the best colors from all the colormaps and then remaps all the images to it. The "+Cf" option, simply remaps everything to the first colormap. The "+Ch" option is use- ful when an animation's colormap specifies a lot of colors that aren't used. XAnim looks through each buffered image of the animation and makes a histogram of the useage of each color. This information is then used to weedout unused or rarely used colors. QUICKTIME ANIMATIONS Quicktime animations are usually stored in two separate files. One is call a data fork and ends with a ".data". The other is a resource fork and ends in a ".rsrc". Sometimes these animations are in a "flattened/merged fork" format, where everything is put into one file. There's no standard naming format for these types of files although usually .qt or .mov is used. For example, if you have a quicktime animation made up of two files named: "spin.rsrc" and "spin.data", you can display them using Xanim with either of the following com- mands "xanim spin" or "xanim spin.rsrc". XAnim is smart enough to add/modfiy the ".rsrc" and ".data" endings as needed. If you use AUFS from the Columbia Appletalk Package, then Macintosh files have their data fork stored in the expected place, and the resource fork is in a file with the same name in a .resource subdirectory. Therefore, if the data fork is in "spin", and the resource fork isin ".resource/spin", the movie can be displayed with "xanim spin". For "flattened/merged fork" quicktime animations, you need to specify the entire file name. NOTE: XAnim doesn't support 100% of the quicktime format. EXAMPLES: To display a single animation with Audio: xanim +Ae car_race.avi To display a audio animation on Sparc. main speakers off and headphones on: xanim +Aep1 -Ap0 car_race.avi To display a single animation: xanim iff3.anim To display a nonlooping IFF animation: xanim +c iff3.anim To display A.fli 3 times, B.anim and C.movie 2 times each and D.fli once before repeating: xanim -l3 A.fli -l2 B.anim C.movie -l1 D.fli To see A.anim real slow(2 seconds for each frame): xanim +j2000 A.anim To display title image for a while then run an animation at normal speed: xanim +j2000 title.gif +j0 anim.gifanim A series of GIF's can be displayed as: xanim im_0.gif im_1.gif im_2.gif ... im_36.gif or xanim im_*.gif or xanim im.txt or xanim im.gifanim where im.txt is a txt file(a list of images, see anim.doc for more details). and im.gifanim is one gif file composed of im_0.gif through im_36.gif. (see txtmerge to create a single gif file from a txt file). X11 Notes: -------------------------------------- I. X11 Server Options When XAnim opens the display it passes the argument list to X11 which then filters off the arguments it recognizes. XAnim won't even see these arguments(which is sometimes a problem). For instance xa -geom =+100+100 skier.fli will play the anim skier.fli at pos <100,100> on the X11 screen. Or xa -display nantucket:0.0 skier.fli will display the anim skier.fli on the machine nantucket's display. Sometimes this is a problem, because a valid XAnim option is stripped by the X11 server. For instance if +r was being stripped, then use ++r instead. Same goes with -r. Use --r instead if you believe it's being filtered by X11. Machine Specific and Compiler Notes: -------------------------------------- Some PC's need you to uncomment the line below in Makefile. #XA_INET_LIB = -linet Depending on your window manager(mwm,uwm,olwm,twm etc), you might want to have XAnim do a XInstallColormap. This shouldn't be necessary for most workstations and can cause core dumps on some PCs. There are usually user selectable options for each window manager that selects the colormap focus policy(pointer,fixed,explicit etc). Use -DNO_INSTALL in Makefile if you DON't want XAnim to install the colormap. Some X11's don't have support for multiple visuals. An executable compiled with such an X11 will not be able to correctly run on a machine that does supports multiple visuals even if they're binary compatible. Hugh D.R. Evans has supplied make.com, xanim.opt and added VMS defines so that VMS users may compile and run XAnim. Rick Dyson has provided the descript.mms file and some VMS fixes. John Kneitz has also provide some VMS fixes and suggestions. And Yet More Notes about Quicktime Animations --------------------------------------------- NOTES ON QUICKTIME ANIMATIONS WITH XANIM (these are just my notes and may contain some inconsistencies. There's currently some question about the true meaning of "flatten". It might just mean taking a quicktime file and replacing a references to another files with those files themselves. But lately many people use it to mean collapsing the *.data and *.rsrc forks into one *.data fork for export to a non-mac computer. - Mark) EXTRACTING Quicktime Animations Typically you will obtain the quicktime animations that have been archived and then binhex'd. If the file you have ends in a .hqx, then you need to run hexbin on it ("hexbin anim.hqx"). This will create a *.bin file(not necessarily anim.bin, it could be anything.bin. The actual name is contained within the *.hqx file). If the file you have ends in a .bin or you've just hexbin'd a file, now you need to unpack it. In other words extract the files that are contained within it. These files can be programs/documents/ animations/images etc. They're not necessarily quicktime animations. There is a program called macunpack that should be used to accomplish this. You need to use the -f option, I recommend the -lv options as well. (ie "macunpack -flv file.bin") Macunpack doesn't support certain DiskDoubler or Stuffit Deluxe archives. There is no unix/pc program that I know of that does(except for the Mac). In this case your only choice is to get a hold of a Macintosh computer and someone who knows how to use it and hopefully some method of transferring files to/from it. Once you've unpacked everything, you should have three files, a *.info, a *.rsrc and a *.data. You can delete the *.info file. XAnim doesn't need or use it. The quicktime animation is made up of BOTH the *.rsrc and the *.data files and therefore XAnim needs BOTH the *.rsrc and the *.data in order to recognize and display the animation. The only exception to this is if the animation has been "flattened". Essentially, all that this means is that the .rsrc and .data files were merged into one file for export to a non-mac computer. This file doesn't have any real naming conventions, but it is usually something like .mov, .mv, .qt, etc(it is never .bin or .hqx). And it is rarely .data. If XAnim can't play it, then it's 95% likely to be a *.data fork(that's missing a *.rsrc fork) and not a flattened quicktime animation. Macunpack and hexbin can be found in the macutil archive. They are available at the following locations: sumex-aim.stanford.edu:/info-mac/unix/macutil-20b1.shar ftp.cwi.nl:/pub/macutil2.0b3.shar.Z solaris.ims.ac.jp:/pub/unix/mac/macutil-20b1.shar Use archie to find other sites. Here's a quick blurb on macutils from the readme. o hexbin - a program to convert BinHex 4.0 to MacBinary; it also converts uuencode (and UULite) files to their native binary format; support for .dl, .hex, and .hcx formats (all predecessors of BinHex 4.0) also exists o macunpack - a program to unpack PackIt, StuffIt, Diamond, Compactor/Compact Pro, most StuffIt Classic and StuffIt Deluxe, DiskDoubler, Zoom and LHarc/MacLHa archives. It also decodes BinHex 5.0, MacBinary, uuencode, and UNIX compress (ie: .Z suffix) files (as well as variants of compress implemented by various Macintosh compress programs). TRANSFERING DIRECTLY FROM A MACINTOSH If you are transferring a quicktime animation directly from a Macintosh(ftp/fetch/gator/etc), you need to use the MacBinary mode. This will archive all three resource forks(.info,.rsrc and .data) into a .bin file and transfer that. You must then use "macunpack -flv" as described above. If you use Binary mode(as opposed to the MacBinary mode), ONLY the *.data file will be transferred. This *.data file is useless without the *.rsrc file, unless it happens to be "flattened". If you don't absolutely know this to be true, then use the MacBinary mode and extract with macunpack. OTHER PROGRAMS mcvert is also capable of extracting the *.rsrc and *.data files form a MacBinary file(*.bin). It doesn't support all of the archival compression formats that macunpack does and I'm not as familiar with it. Archie should be able to find it. CREATING A QUICKTIME FOR EXPORT ON A MACINTOSH Movieconverter, part of Apple's Quicktime Starter Kit (a commercial product) can do this. Save the movie as BOTH "Make self-contained" and "Playable on non-Apple computers." If you have any other questions or problems trying to run quicktime animation using xanim I might be able to answer them. ------------------------------------------------------------------------------ Mark Podlipec - podlipec@ici.net http://xanim.va.pubnix.com/home.html http://smurfland.cit.buffalo.edu/xanim/home.html http://www.tm.informatik.uni-frankfurt.de/xanim/