Short: WarpOS port of MPEG2 video decoder Author: frank@phoenix.owl.de (Frank Wille) Uploader: frank phoenix owl de Type: gfx/show Version: 0.3 Requires: CSPPC or BPPC, WarpOS V4 (powerpc.library V15), AHI Architecture: ppc-warpup vmpeg is another MPEG1/2 video player, based on the public source of the MPEG Software Simulation Group. The last days I checked all MPEG players for the Amiga, but found no one which is able to play a standard 352x288 MPEG movie with sound in real time. This one does - at least with a 604e/233 and a fast graphics board (a 200 MHz 604e is already critical). FEATURES - Cybergraphics/Picasso96 support (8-bit dithered or 15/16/32 bit true color). Either by direct frame buffer access (-o4) or by using Cybergraphics (-o5, very slow). - Picasso96 PIP support (-o6). - Automatic centering on graphics boards, in case the screen mode is larger than the required display. - Audio support via ahi.device unit 0. - Tries to run at natural frame rate. When it's running too fast, the player will wait after every frame, and when running too slow it will start skipping B-frames. This should prevent interruptions of audio output. - Option -a prevents frame-skipping and plays all frames. Sound will be disabled. - User may define the fps-rate, used for replay (-d). Sound will be disabled. - Fps counter display. - Time code display. - Backward/Forward seek function. You can scan through the whole movie by using the mouse. - Several work-arounds to be compatible with all movies I have seen. - Compiled by latest vbcc in highest optimization mode. - Some PPC Assembler optimizations. USAGE To view a movie with sound enabled just type vmpeg -o4 -s -b cd0:movie.mpg A screen mode requester will open where you can select your prefered resolution. 8 bit screens automatically force dithering mode. You should define a screen mode with a resolution of 352x288 pixels. vmpeg runs best at 15/16 bits, which is even faster than 8 bit. Pressing the right mouse button will display the current time code. When moving the mouse right or left, while holding the right button, you can seek for/backwards in the MPEG stream. Move the mouse very slowly! The stream is seeked in multiples of 1 MB. By looking at the time code you should easily find the position where you last stopped watching the movie. Backwards seeking is nearly unusable with FastFileSystem in large files, but works very well with others, like a CD-FileSystem or PFS/SFS. To quit, press the left mouse button or the ESC key. For more options, you may start vmpeg without arguments to get a complete list. FIXED BUGS SINCE 0.1 - -m option to select screen mode id didn't work - All screen modes only worked for some graphics boards (e.g. CV64 and PicaossIV). On other boards, only a few modes worked (e.g. on CVPPC and BVPPC). BUGS - Slow down of fast movies could work better, when having sound enabled. - True color display modes doesn't support other chroma formats or interlaced movies. Haven't seen those, though. - Fps counter seems to be wrong in fast movies (?). SOURCE Full source code is included. To recompile, you need the latest vbcc compiler and a make-program (the makefile is very simple, so that most 'makes' should work). If you have problems, try a lower optimization mode, or write me to get a compiler update. LEGAL vmpeg is freeware, of course. Frank Wille 27-Jun-1999 frank@phoenix.owl.de