animdtc0112
IFF ANIM DataType V1.12
Short: IFF ANIM DataType V1.12
Author: GISBURN@w-specht.rhein-ruhr.de (Roland Mainz)
Uploader: GISBURN w-specht rhein-ruhr de (Roland Mainz)
Type: util/dtype
Replaces: util/dtype/animdtc0111.LhA
Architecture: m68k-amigaos
IFF ANIM DataType, a replacement for (little bit) buggy CBM anim.datatype.
animation.datatype subclass.
Shareware !
Starting with V1.8, anim.datatype is shareware. See "anim.datatype.doc/MAIN"
for details
Features are:
- Can save it's local format.
anim.datatype supports DTM_WRITE for it's local format, e.g you
can save animations in IFF ANIM using this datatype.
Supports currently IFF ANIM-3 as output format, other formats
are on the way.
Converters like "DTConvert" are now able to write IFF ANIM using this
datatype :-)
- Supports sound.
Any sound (loaded with a sound.datatype subclass) can be attached to the
animation.
If you want, you can read-out this animation+sound as an IFF FILM stream
(using DumpDTAnim (Aminet:gfx/conv/DumpDTAnim#?.LhA)) and make a
playback using film.datatype.
- Per-frame-colormaps (e.g. palatte change per frame). Using DBufDTAnim
>= v1.2 (Aminet:gfx/show/DBufDTAnim) or animation.datatype V41, you can use
this feature.
- Supports all (currently) defined ANIM compression modes:
- ANIM-0 ILBM BODY
- ANIM-1 ILBM XOR (disabled, no test files)
- ANIM-2 Long Delta mode
- ANIM-3 Short Delta mode
- ANIM-4 General Delta mode (disabled, no test files)
- ANIM-5 Byte Delta mode
- ANIM-6 Stereo Byte Delta mode
- ANIM-7 Anim-5 compression using LONG/WORD data
- ANIM-8 Anim-5 compression using LONG/WORD data
- ANIM-J Eric Grahams compression format
- Compression modes can be mixed in any way (e.g. ANIM-5 with ANIM-J etc.).
- Interleave counts can have any value (not limited to 1 or 2 frames back),
maybe 255.
- Should be safer than the CBM version. Includes stack checking code and
many asserts to avoid crashes.
- Random frame access (even to deltas).
- Supports clipboard as input.
- Dynamic loading of frames (disk-based) or caching the whole anim in memory.
- Preference file with various options and per project settings like
- Viewmode ID
- Frames Per Second Rate
- VERBOSE option which shows the internal structure of the animation stream
(used compression modes; animation dimensions and other attributes).
- Sound attachment with
- Volume control
- Matches the "DataTypes" proposal.
Future versions will implement:
- Frame skipping (by compression type and/or by frame number).
- Color cycling in an animation.
Changes since last release (V1.11):
V1.12
- Replaced the custom stack swapping code by my "standard" module.
- Now the default FPS rate is 10 if animation.datatype is
< V41. If V41 is running with ADTA_AdaptiveFPS, the
fps is set to 60.
- Fixed ModeID handling. The previous behaviour was that
a 0 mode id causes the datatype to select it's own mode id.
But 0 means LORES. Now the default is -1 (which means
INVALID_ID), which causes the datatype to do it's own
calculations.
Fixed.
- OM_DISPOSE now preserves Result2 (IoErr()) to avoid that an
error code may get lost.
V1.11
- Recompiled with SAS/C 6.58. May fix some mc68060 related
problems.
- Found the longstanding bug that animation.datatype V40.7
didn't free some frames. Reason is that ADTM_LOADFRAME
may be used like "realloc". Now alf_UserData is checked;
any given frame will be freed (ADTM_UNLOADFRAME).
Fixed.
- ADTM_UNLOADFRAME now clears alf_UserData to indicate that the
frame has been freed.
- Now supports anims deeper than 8 planes, but a colormap
(e.g. a CMAP chunk) is still expected.
- Fixed the bug that a free of the current frame caused an frame
to be not freed. (The idea was to hold the current frame for
following delta accesses; this has been replaced by the idea
of the "posted free").
- Implemented the idea of a "posted free". For delta accesses,
it's not very usefull to free the frame when the next frame
needs it for it's delta access. Therefore, the anim.datatype
now manages a "free list", where the free of the previous
and the previous-previous frame will be posted until
it is really not longer in use.
- Fixed a bug in the LOADALL mode that the wrong previous
frame was used (due a change in V1.10).
- The single framenodes now caches a pointer to their previous
frame. This should speed up loading a little bit.
- If an animation has dynamic timing and the superclass
(animation.datatype) has the ADTA_AdaptiveFPS flag set,
the playback speed now defaults to 60 fps.
- Saved an AllocVecPooled in ADTM_LOADFRAME by merging multiple
delta buffer allocations to one allocation (which can hold the
largest delta).
- The stack swapping code now allocates it's memory without
the MEMF_CLEAR flags, which should speed up things.
- Removed BestModeIDA code, because animation.datatype does
the same.
- The options setting for DPaint brush compatibility patch
worked wrong (the order was wrong). Now the options
work as described.
Fixed.
- Fixed a bug in the encoder that the last color of a dynamic
pallete as not copied (GetRGB32 got numcolors - 1 instead
of numcolors).
Fixed.
----
Bye,
Roland
Gratis
Desde el Amiga: abre Hangar y busca animdtc0112.
| Autor | GISBURN@w-specht.rhein-ruhr.de (Roland Mainz) |
|---|---|
| Categoría | util/dtype |
| Tamaño | 92 KB |
| Para | m68k-amigaos |
| Origen | Aminet |