----
Does NOT replace: util/dtype/mpvdtc0111.lha (or any other V1 version)
----
MPEG video datatype, which is able to play mpeg 1/2 video streams.
animation.datatype subclass.
Version V2.6, gamma3 version (still gamma, sorry)
----
WARNING: Please read all suppied docs carefully, please !
And read them all and complete _before_ testing !
(Some points in the docs are unfinished (sorry).)
The file "mpegvideo.datatype.doc" contains a MAIN section with more
detailed info.
-----
CONTENTS OF THE GAMMA2 ARCHIVE:
- The "mpegvideo.datatype" itself
- 000ieee/ for all Amigas, including plane m68000 machines
- 020ieee/ for Amigas which have at least a m68020 CPU
- 020881/ for Amigas which have at least a m68020 CPU and a 68881 FPU
- 040881/ for Amigas which have at least a m68040 CPU
- 060881/ for Amigas which have at least a m68040 CPU
- 040ppc/ for Amigas which use Phase5's PPC board
(m68k-060/50 and PPC/200 preferred)
- "DTConvert", a small utility to use the encoder
(e.g. read IFF ANIM, write MPEG Video or
read AVI, write MPEG Video or
read CDXL, write MPEG Video or
read GIF Animation write MPEG Video or ...
and so on, you only need a datatype which supports
writing in it's local format, and then you can use DTConvert
for conversion)
WARNING: The original CBM anim.datatype is very buggy and crashes
your system !
Using the decoder:
- Install the datatype and have fun :-)
The "preferences" section in "mpegvideo.datatype.doc" describes how to
get CyberGFX output
- The encoder. The encoder encodes MPEG-1 per default, but
can also be configured to write MPEG-2
Take a look into the (uncompleted) "preferences" section
how to configure the encoder...
----------------------------------------------------------------------
NAME
mpegvideo.datatype
FEATURES
- Supports MPEG-2 (excluding temporal and spatial scalability).
- Realtime-playback. In the default mode, the mpegvideo.datatype
tries to create a realtime-playback
(this mode needs __MUCH__ memory because the datatype acts as a
ram player in this mode).
- Gfx-Card support:
- CyberGFX-support: mpegvideo.datatype's decoder supports
15/16/24 cybergfx bitmaps
(requires animation.datatype V41)
- P96 support: Additionally to the CyberGFX support,
mpegvideo.datatype supports the P96 YUV-Bitmap type,
which allows a custom animation.datatype player to use
gfx-card overlays.
Another benefit is that remapping is then the job of
the gfxcard (-software), which may speed up things...
(requires animation.datatype V41)
- For those people which have no gfxcard-software like
CyberGFX or P96, the datatype is able to create
planar 24 bit images that applications which use
animation.datatype subclasses for decoding (WildFire
for example) can use 24 bit.
- No more crashing with streams like "ID4.mpg" (which crashes
many software decoders like mpegvideo.datatype V1.xx).
- Truecolor-Output now works
- Two playback modes:
- Decode to ram, then play
- Decode and play at the same time
- A fully-working encoder which supports MPEG-1 and MPEG-2
(excluding temporal and spatial scalability).
- New design, which allows to split decoder and encoder in
multiple theads. DataTypes class is seperated from the
decoder and encoder parts.
Main purpose is to get ready for the PPC version of the
mpegvideo.datatype, and to support parallel encoding/decoding
using multiple PPCs/mc680xx.
- Support for mpeg decoder hardware.
If the Amiga has a "cd32mpeg.device" compatible device
which supports the MPEGCMD_READFRAMEYUV device command,
mpegvideo.datatype can use this device for decoding
(which may limit to MPEG-1. I don't know any MPEG-2 hardware
for the Amiga. Anyway, this feature is experimental and
untested yet, sorry).
- Different versions for different CPU/FPU combinations,
__including__ the mc68000/mc68010 and the PPC.
- Supports VMM, __even__ for CyberGFX bitmap output.
For 15/16/24 bit output modes the ram usage has been
reduced.
- Supports scaling of output. The output can be enlarged or
shrinked on demand.
- Preferences with global, local and per-project settings
which controlles both encoder and decoder.
- Progress gauge with time-to-go information
TODO
- Fixing the bounch of bugs which may occur in the testing
cycle.
- The mpeg decoder hardware support is untested. The code
has been adapted from code which has been written for
the cd32mpeg.device, but because I sold my CD32 (a big
mistake :-( ), I cannot test it.
- Fixing the P96 YUV-code, which is broken since V2.0
- An INTERPOLATE mode/option for bitmap scaling.
- Fixing the crap message handling in the PPC version which
causes an unneccesary slowdown
----
Any more features wanted ?
----
Bye,
Roland
|