[comp.sys.amiga] GIF viewing again and again - read this s.v.p.

ceej@pawl.rpi.edu (Chris J Hillery) (08/27/90)

djb1@ukc.ac.uk (David Beckett) writes:


>	* Converts to overscan pictures and ALLOWS YOU TO SAVE THEM!

>	* Converts to HAM pictures, when there are too many colours

>	* WORKS!

>Programs that I have tried and gave up on are:

>	HAMGIF
>	GIFTOIFF
>	GIF2IFF
>	GIFMachine
>	GIFFY
>	VirtGIF		(Best of the lot but slow and no save)


I think I'm missing something vital here, or perhaps you are... you say all
these programs convert to 640x400? er, not on my machine they don't. I think
the problem you're having is not in the gif convertor, but in your IFF 
display program; ie, it does not support scrolling around larger-than-
screen-size pictures (not superbitmaps necessarily, just scrolling the 
image). If you don't already, get Mostra; it is the best IFF picture
displayer around that I've ever seen. SuperView also works, although
I know little about it.

As to convertor programs, you listed above 2 of the 3 best. I'll summarize
briefly a discussion from alt.sex.pictures a while back: (throwing in 
mostly my opinions, but I've converted hundreds of GIFs and have been
pretty pleased so I think they're valid, of course...)

First off, avoid HAMGIF, GIFFY (which is what HAMGIF came from, I think...
whatever) and VirtGIF at all costs. HAMGIF is worth keeping around only
to preview GIFs to see if they're worth the conversion effort (it is an
effort, it takes time, often memory, etc; however, once they're converted,
they're usually MUCH smaller and display one heck of a lot quicker). These
programs aren't worth using for serious converting or even viewing as
they don't do much real thinking about what colors to show (note: I'm
referring to mostly 256-color GIFs here, which must be shown in HAM mode
for decent results; and HAM by its nature has some drawbacks which must
be calculated around to get good results out of it) (note2: or SHAM,
same diff) (note3: for 16 or fewer-colored GIFs, VirtGIF or others
are just fine, and VirtGIF will let you scroll around and save if you
register; HAMGIF truncates to 640x400 so is of limited usefulness).

For overall conversion, best choice is GifMachine, which produces SHAM
output. For large (800x600, etc) GIFs, this is the only real choice,
as distributing colors over that large an area as required by HAM mode
results in dramatic picture loss. (Quick definition: HAM modifies a 
basic 16-color palette over the whole picture; SHAM does so on each line,
or every other line in interlace; result: SHAM has better colors overall
at the expense of chewing processor time to display.) GifMachine also has
nice features like horizontal crunch, although this is slightly flawed,
and border removal. Drawbacks: slow (!, up to 20+ minutes for large pics),
uses considerable memory, doesn't dither so pictures with very fine
gradients of color like VGA pics with their 256000 color palettes have
considerable color "banding" where many similar colors get converted to
one Amiga color. Subtle shading can look bad. (Amiga's fault more than
GifMachine's, but it could be worked around with dithering.)

Next best is Ham/ShamSharp. I could never get the SHAM option to work,
but I think GifMachine has got to be better in that regard. However,
GifMachine ONLY does SHAMs; even a 2-color GIF will be made into a SHAM.
HamSharp is a bit more intelligent, and will produce standard 2-16 color
IFFs when needed. It does a good job of converting to HAM, so if you 
don't want SHAM for whatever reason this isn't a bad choice; it's also
somewhat quicker than GifMachine (naturally it isn't thinking as much).
It is the best (and just about only) for converting non-HAM GIFs (ironic,
eh?). Drawbacks: still kinda slow, uses mem a lot, no dithering, and has
a nasty bug in which it will produce garbage IFFs on occasion. I haven't
been able to trace this, but it seems to happen on some (which? dunno)
unusual-width GIFs (ie, not 640, 320, 800, etc). Sometimes it works, 
sometimes not; if a GIF doesn't convert, though, it never will, it's
not THAT random. Also, HamSharp will always halve the width of any
picture more than 320 wide; GifMachine at least makes this an option, 
which can be nice on occasion. However (here's the flaw with GifMachine
I mentioned), GifMachine will NOT halve anything less than 320 across.
Some GIFs, especially after border removal, still have to be halved to
have right proportions in interlace (like if they're 100x400 or something),
and not using interlace isn't good since generally you want as much as
possible of the pic on the screen at once.

Filling up gaps and often better than HamSharp is HamLab. This is a very
nice convertor, and it does not have several of the drawbacks the others
do.  First off and most important, it dithers! This all but removes the
color banding problems. With this and very intelligent color-selection,
HamLab often produces HAM pics that look nearly if not as good as SHAMs
of the same GIF, and look even better if the banding was bad in SHAM.
Also, HamLab lets you FORCE it to halve-width the picture, whatever the
resolution. It also can use pipes to minimize memory consumption.
Drawbacks: doesn't support SHAM (yet; if it ever does it'll most likely
be my convertor of choice).

Overall, HamLab is the best program, but GifMachine usually produces
the best results. A little experience will let you judge from looking
at a pic with HAMGIF which is the best convertor to choose for a par-
ticular GIF; I'd recommend keeping all three around.
 

>Dave

>---------------------------------------------------------------------------
>David Beckett                                           | djb1@ukc.ac.uk
>Computing Lab., University of Kent, Canterbury,Kent,UK  | ..!mcsun!ukc!djb1