home *** CD-ROM | disk | FTP | other *** search
-
- VMPEG V1.2b
-
- DOS / Windows MPEG player
-
- by Stefan Eckart
-
- January 1995
-
-
- 1. Features
- ===========
-
- - full MPEG-1 video standard (ISO 11172-2): I,P,B frames of arbitrary size
-
- - plays system layer (ISO 11172-1) files (audio is discarded)
-
- - high speed: e.g. 21 frames/s on a 386DX/33 for a 160x120 I frame
- sequence (mjackson.mpg),
- 24 frames/s on a 586/90 for 352x240 IPB sequences
-
- - supports VGA and a variety of SVGAs
-
- - display options: 4x4 ordered dither normal size (8 bit)
- 4x4 ordered dither double size (8 bit)
- grayscale (8 bit)
- true color (24 bit)
-
- - requires:
-
- - '386,'486 or '586 processor (no '286)
- - 4 MB RAM
- - VGA or Super VGA
- - Windows version: Windows 3.1, Win32s and optionally WinG
-
-
- 2. Overview
- ===========
-
- VMPEG is a fast decoder / viewer for MPEG encoded video sequences (.mpg
- files). MPEG (Moving Pictures Expert Group) is a video compression algorithm
- standardized by the International Organization for Standardization (ISO) and
- the International Electrotechnical Commision (IEC) as ISO/IEC IS 11172. Main
- application of MPEG is the storage and retrieval of video on/from Compact
- Disk at a rate of about 1.5 Mbit/sec.
-
- VMPEG can play MPEG system layer streams containing both video and audio.
- Most streams from CD-ROM (Video-CD) are of this type. The audio stream is
- discarded by the decoder. VMPEG automatically detects whether the file is a
- video compression layer or a system layer file. I have also included a small
- utility (MPGSPLIT) which extracts the video and audio streams from a system
- layer stream into separate files (cf. MPGSPLIT.DOC).
-
- The DOS version of VMPEG is compiled with the GNU C compiler (gcc) into '386
- code and runs under the DOS extender GO32 by DJ Delorie which is included in
- the archive file. The DOS version of VMPEG cannot be run from Windows.
-
- The Windows version of VMPEG is not as thoroughly tested as the DOS version
- but already seems to be reasonably stable. Please feel free to report any
- bugs you encounter to my email address. The Windows version requires
- Windows 3.1 and the free Windows extensions Win32s (32 bit support) and
- optionally WinG (screen output acceleration). These packages are available
- by anonymous ftp from (currently)
-
- Win32s: ftp.microsoft.com:/SoftLib/MSLFiles/PW1118.EXE
- WinG: ftp.microsoft.com:/developr/drg/WinG/WinG10.ZIP
-
- and perhaps somewhere on CompuServe.
-
-
- 3. Installation
- ===============
-
- 3.1 DOS version
- ---------------
-
- - You need at least a '386 with a VGA and 512 KB of RAM. 4 MB are strongly
- recommended. XT, AT, EGA and CGA are not supported. A '387 is not required
- nor does it increase speed. VMPEG doesn't use floating point.
-
- - You should leave about 2 MB of RAM (XMS) unused: if you have, say,
- a 4 MB system you shouldn't reserve more than 2 MB for a RAM drive.
- Otherwise the DOS extender would start swapping memory pages from and to
- disk. This would slow down the program, even if swapping to a RAM drive.
-
- - If you have installed EMM386 make sure you don't have specified the
- 'noems' option in your config.sys file.
-
- - Create a subdirectory for installation:
-
- md \vmpeg
- cd \vmpeg
-
- - Unzip the archive into this subdirectory:
-
- pkunzip -d vmpeg12b.zip
-
- - Edit VMPEG.BAT and VMPEG24.BAT; you probably have to change drive
- and/or path specifications and to select a suitable graphics driver
- (see paragraph 4).
-
-
- 3.2 Windows version
- -------------------
-
- - Install Win32s and (optionally) WinG. These packages come with their own
- installation instructions. Basically you have to run the setup program
- supplied with them.
-
- Installation of Win32s copies a couple of files (w32sys.dll, win32s.ini,
- win32s16.dll, winmm16.dll) to the Windows system directory and creates a
- WIN32S subdirectory with additional files. It also adds two entries
- (for winmm16.dll and w32s.386) to the system.ini file in the Windows
- directory. You can deinstall Win32s by removing these files and restoring
- your original system.ini file (saved in system.old by the setup program).
-
- Installation of WinG is optional. I have included two versions of VMPEG,
- one with WinG calls (VMPEGWIN.EXE) and one without (VMPEGNWG.EXE).
- The WinG version is faster, but the difference is only notable for
- large (CIF/SIF) MPEGs (may depend on your SVGA).
-
- WinG adds several files (wing.dll, wing32.dll, wingde.dll, wingdib.drv,
- wingpal.wnd, dva.386) to the system directory and adds an entry for DVA.386
- to your system.ini file. To deinstall WinG simply remove this entry from
- system.ini.
-
- If you start VMPEG (or any other program using WinG) for the first time,
- a performance test window appears which adapts and optimizes WinG for the
- VGA in your PC. This takes a while (about 3 minutes on my computer), don't
- despair...
-
- - Create a subdirectory for installation:
-
- md \vmpeg
- cd \vmpeg
-
- - Unzip the archive into this subdirectory:
-
- pkunzip -d vmpeg12b.zip
-
- if you don't need the DOS version, you can delete vmpeg, go32.exe, the
- drivers subdirectory and the vmpeg*.bat batch files
-
- - You can start the program (vmpegwin.exe / vmpegnwg.exe) either from the
- file manager or from the program manager (File->Run menu item) or you can
- define a program entry in the program manager (File->New menu item).
-
- - both VMPEG and the Win32s libraries need a lot of memory (about 3-5 MB in
- total), and you may therefore have to increase the size of the swap file.
- 4 MB of RAM are sufficient, however, to run the program without swapping
- (except during program startup).
-
-
- 4. Graphics Drivers (DOS version)
- =================================
-
- The DRIVERS subdirectory contains a set of graphics drivers for different
- Super VGAs. Select the one that matches your graphics card by editing the
- file VMPEG.BAT (for 8 bit display). If none of the drivers work, you may try
- to use the (go32 internal) VESA driver and a TSR VESA BIOS extension. A
- collection of such drivers is available at
-
- oak.oakland.edu:/pub/msdos/graphics/vesadrv2.zip (anonymous ftp).
-
- and on all other SimTel mirrors.
-
- True color support requires VESA BIOS. It works for my configuration (a
- Cirrus Logic GD5422 based card with VESA BIOS) and should work for most other
- 'well behaved' boards as well. You may have to adjust the -y option in the
- last line of VMPEG24.BAT. The number indicates the length of each scanline.
- This is usually either 1920 or 2048. If the frames appear scattered over the
- screen, the setting is probably wrong... If you get incorrect colors (red
- sky, blue faces) you have a card with reversed RGB order. Simply replace the
- -y... by a -Y... to fix this.
-
-
- 5. Troubleshooting
- ==================
-
- DOS version:
-
- If you get a message about the CPU not being in Real Mode, you have to remove
- the noems option from the EMM386.EXE (or any other EMS emulator) line in your
- CONFIG.SYS.
-
- Windows version:
-
- If you get the message 'Can't find WING32.DLL' you don't have WinG properly
- installed. Either install WinG or use VMPEGNWG.EXE instead.
-
- If starting VMPEGWIN briefly switches to text mode and displays the message
- 'This program cannot be run in DOS mode', Win32s is not installed properly.
-
- If you get 'Out of Memory' errors, you have to increase the size of your
- swap file (from the control panel).
-
-
- 6. Command Line Options
- =======================
-
- The following command line options are valid for both DOS and Windows
- versions. To specify options to the Windows version, you have to run it
- from the program manager (File->Run menu). Of course you can set all
- these options interactively after starting vmpegwin (without command
- line options).
-
- vmpeg [options] input.mpg
- vmpeg24 [options] input.mpg
- vmpegwin [options] input.mpg
- vmpegwng [options] input.mpg
-
- options:
-
- -l loop the sequence (infinitely until you press a key)
-
- -x1 skip B frames
- -x2 skip B and P frames, i.e. only I frames are displayed; you should
- use this option for I-frame-only sequences (including Xing compatible
- streams) to make the program run faster (as it doesn't have to manage
- reference frames)
-
- -d0 (default) ordered 4x4 dither
- -d1 grayscale
- -d2 similar to -d0 but display magnified by a factor of 2
-
- True color mode is selected by using vmpeg24 instead of vmpeg. In this
- case the -d switch isn't effective.
-
- DOS version only:
-
- -in displace output by n pixel in horizontal direction
- -jn displace output by n pixel in vertical direction
-
- VMPEG centers the MPEG on the screen. If the frame is larger than
- the screen you can use the -i and -j options to pan the visible
- area. positive n shifts to the right or bottom, negative n to the
- left or upwards.
-
- -zn reduce display speed. This is done by a counting loop, so you
- have to experiment until you get the speed you want.
-
-
- The program can be terminated by pressing an arbitrary key (DOS version).
-
-
- 7. Remarks
- ==========
-
- Please report bugs (don't forget to mention which version of VMPEG you are
- using!) to my email address:
-
- stefan@lis.e-technik.tu-muenchen.de
-
- or by mail to:
-
- Stefan Eckart
- Kagerstr. 4
- D-81669 Muenchen, Germany
-
-
- 8. Acknowledgements, Copyrights
- ===============================
-
- This program comes without any warranty. Your are using it at your own
- risk. VMPEG is copyrighted software (C) Stefan Eckart, 1994. You may
- use, copy and distribute this program without restrictions but only in
- unmodified form and without charging money for it.
-
- GO32.EXE, DRIVERS\*.GRD:
-
- Copyright (C) DJ Delorie
- 24 Kirsten Ave
- Rochester NH 03867-2954
-
- These files are part of DJGPP which is available from
-
- host: oak.oakland.edu (or another SimTel mirror)
- login: ftp
- password: send your e-mail address
- directory: /pub/msdos/djgpp
-
- other DRIVERS:
-
- Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
- Copyright (C) 1992 Csaba Biegl, 820 Stirrup Dr, Nashville, TN 37221
-
- VMPEG:
-
- The library VMPEG is linked with is
-
- Copyright (c) Regents of the University of California.
-
- acknowledgement: ``This product includes software developed by the
- University of California, Berkeley and its contributors''
-
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
- The program is compiled with GNU GCC, the C compiler of the Free
- Software Foundation (FSF), Inc. 675 Mass Ave, Cambridge, MA 02139, USA.
- VMPEG does not contain code covered by the FSF General Public License.
-
-
- 9. Known Bugs
- =============
-
- Interframe coded macroblocks theoretically can experience wrap-around
- (255<->0). This happens rarely enough to live with it (fixing would
- reduce speed for all sequences).
-
- Accuracy of the IDCT does not meet the requirements of IEEE 1180-1990. It is,
- however, a reasonable trade-off between speed and image quality.
-
- Display should be synchronized to the frame rate signalled in the sequence
- header.
-
- The program should use VESA BIOS supplied information instead of the -y
- option.
-
-
- 10. References
- ==============
-
- 1. Coding of moving pictures and associated audio for digital storage
- media up to about 1,5 Mbit/s, International Standard ISO/IEC
- IS 11172, 1993.
-
- 2. Frequently Asked Questions (FAQ) of the alt.binaries.pictures
- and comp.compression newsgroup: contains an introduction to MPEG.
-
- 3. Documentation of the PVRG MPEG software: a thorough overview
- covering many aspects of MPEG.
-
- 4. Documentation of the MSSG MPEG-2 codec (mpeg2codec, see below).
-
-
- Appendix A: Related Software
- ============================
-
- This list is probably incomplete, but it's all I'm aware of. Of course
- there are programs for other systems as well (Mac, Amiga etc.).
-
- mpeg2codec MPEG-1 and MPEG-2 codec from the MPEG Software Simulation Group
- Authors: Stefan Eckart, C. Fogg, C. Aeyung, S. Papuc
- Includes source code for Unix X11 and Windows (Win32s / NT)
- and compiled versions for PC.
- ftp.netcom.com:/pub/cfogg/mpeg2/*
-
- mpeg2play a speed optimized version of the decoder from mpeg2codec
- ftp.netcom.com:/pub/cfogg/mpeg2/mpeg2play*
-
- mpeg_play MPEG Video Software Decoder (Version 2.0; Jan 27, 1993)
- Authors: Lawrence A. Rowe, Ketan Patel, and Brian Smith
- Computer Science Division-EECS, Univ. of Calif. at
- Berkeley
- toe.cs.berkeley.edu:/pub/multimedia/mpeg/mpeg-2.0.tar.Z
-
- cmpeg an MPEG encoder for the PC (DOS, 640K, no '386 req.)
- for Targa, PBMPLUS and Alchemy RAW images
- Author: Stefan Eckart
- garbo.uwasa.fi:/pc/graphics/cmpeg10.zip
-
- dmpeg MPEG decoder and player for the PC (DOS, 640K, VGA)
- Author: Stefan Eckart
- garbo.uwasa.fi:/pc/graphics/dmpeg11.zip
-
- mpegwin Port of mpeg_play for MS-Windows
- by: Michael Simmons, msimmons@ecel.uwa.edu.au
- toe.cs.berkeley.edu:/pub/multimedia/mpeg/Ports/mpegw*
- (HiColor & TrueColor support, Shareware)
-
- mpeg.exe DOS MPEG player from Xing Technologies (XingIt V2.1)
- (high speed, but decodes only a small subset of the
- MPEG standard, audio (.WAV,.MP2) support, Windows)
- mpegview.zip (available from many ftp sites)
-
- MPEGv1.1/1.2alpha
- MPEG Software Encoder/Decoder
- Authors: Portable Video Research Group (PVRG)
- havefun.stanford.edu:/pub/mpeg/MPEGv*.tar.Z
-
- disp
- a display program for pictures and animations
- including MPEG (based on mpeg_play)
- contains additional drivers that can also be used
- with VMPEG.
- Author: Jih-Shin Ho, u7711501@bicmos.ee.nctu.edu.tw
- NCTUCCCA.edu.tw:/PC/graphics/disp
-
-
-
- APPENDIX B: MPEG files
- ======================
-
- Two good sources for MPEG files:
-
- s2k-ftp.cs.berkeley.edu:/pub/multimedia/mpeg/movies
- havefun.stanford.edu:/pub/mpeg
-
- High quality MPEGs you simply can't afford to miss:
-
- tennis.mpg
- flowg.mpg
- bike.mpg
-
-
- --
- Stefan Eckart, stefan@lis.e-technik.tu-muenchen.de
- Kagerstr. 4, D-81669 Munich, Germany.
-