home *** CD-ROM | disk | FTP | other *** search
/ Inside Multimedia 1995 May / IMM0595.ISO / share / grafik / vmpeg / vmpeg.doc < prev    next >
Encoding:
Text File  |  1995-01-30  |  14.5 KB  |  411 lines

  1.  
  2.                               VMPEG V1.2b
  3.  
  4.                        DOS / Windows MPEG player
  5.  
  6.                            by Stefan Eckart
  7.  
  8.                              January 1995
  9.  
  10.  
  11. 1. Features
  12. ===========
  13.  
  14.  - full MPEG-1 video standard (ISO 11172-2): I,P,B frames of arbitrary size
  15.  
  16.  - plays system layer (ISO 11172-1) files (audio is discarded)
  17.  
  18.  - high speed: e.g. 21 frames/s on a 386DX/33 for a 160x120 I frame
  19.                sequence (mjackson.mpg),
  20.                24 frames/s on a 586/90 for 352x240 IPB sequences
  21.  
  22.  - supports VGA and a variety of SVGAs
  23.  
  24.  - display options: 4x4 ordered dither normal size (8 bit)
  25.                     4x4 ordered dither double size (8 bit)
  26.                     grayscale (8 bit)
  27.                     true color (24 bit)
  28.  
  29.   - requires:
  30.  
  31.     - '386,'486 or '586 processor (no '286)
  32.     - 4 MB RAM
  33.     - VGA or Super VGA
  34.     - Windows version: Windows 3.1, Win32s and optionally WinG
  35.  
  36.  
  37. 2. Overview
  38. ===========
  39.  
  40. VMPEG is a fast decoder / viewer for MPEG encoded video sequences (.mpg
  41. files). MPEG (Moving Pictures Expert Group) is a video compression algorithm
  42. standardized by the International Organization for Standardization (ISO) and
  43. the International Electrotechnical Commision (IEC) as ISO/IEC IS 11172. Main
  44. application of MPEG is the storage and retrieval of video on/from Compact
  45. Disk at a rate of about 1.5 Mbit/sec.
  46.  
  47. VMPEG can play MPEG system layer streams containing both video and audio.
  48. Most streams from CD-ROM (Video-CD) are of this type. The audio stream is
  49. discarded by the decoder. VMPEG automatically detects whether the file is a
  50. video compression layer or a system layer file. I have also included a small
  51. utility (MPGSPLIT) which extracts the video and audio streams from a system
  52. layer stream into separate files (cf. MPGSPLIT.DOC).
  53.  
  54. The DOS version of VMPEG is compiled with the GNU C compiler (gcc) into '386
  55. code and runs under the DOS extender GO32 by DJ Delorie which is included in
  56. the archive file. The DOS version of VMPEG cannot be run from Windows.
  57.  
  58. The Windows version of VMPEG is not as thoroughly tested as the DOS version
  59. but already seems to be reasonably stable. Please feel free to report any
  60. bugs you encounter to my email address. The Windows version requires
  61. Windows 3.1 and the free Windows extensions Win32s (32 bit support) and
  62. optionally WinG (screen output acceleration). These packages are available
  63. by anonymous ftp from (currently)
  64.  
  65. Win32s: ftp.microsoft.com:/SoftLib/MSLFiles/PW1118.EXE
  66. WinG:   ftp.microsoft.com:/developr/drg/WinG/WinG10.ZIP
  67.  
  68. and perhaps somewhere on CompuServe.
  69.  
  70.  
  71. 3. Installation
  72. ===============
  73.  
  74. 3.1 DOS version
  75. ---------------
  76.  
  77. - You need at least a '386 with a VGA and 512 KB of RAM. 4 MB are strongly
  78.   recommended. XT, AT, EGA and CGA are not supported. A '387 is not required
  79.   nor does it increase speed. VMPEG doesn't use floating point.
  80.  
  81. - You should leave about 2 MB of RAM (XMS) unused: if you have, say,
  82.   a 4 MB system you shouldn't reserve more than 2 MB for a RAM drive.
  83.   Otherwise the DOS extender would start swapping memory pages from and to
  84.   disk. This would slow down the program, even if swapping to a RAM drive.
  85.  
  86. - If you have installed EMM386 make sure you don't have specified the
  87.   'noems' option in your config.sys file.
  88.  
  89. - Create a subdirectory for installation:
  90.  
  91.   md \vmpeg
  92.   cd \vmpeg
  93.  
  94. - Unzip the archive into this subdirectory:
  95.  
  96.   pkunzip -d vmpeg12b.zip
  97.  
  98. - Edit VMPEG.BAT and VMPEG24.BAT; you probably have to change drive
  99.   and/or path specifications and to select a suitable graphics driver
  100.   (see paragraph 4).
  101.  
  102.  
  103. 3.2 Windows version
  104. -------------------
  105.  
  106. - Install Win32s and (optionally) WinG. These packages come with their own
  107.   installation instructions. Basically you have to run the setup program
  108.   supplied with them.
  109.  
  110.   Installation of Win32s copies a couple of files (w32sys.dll, win32s.ini,
  111.   win32s16.dll, winmm16.dll) to the Windows system directory and creates a
  112.   WIN32S subdirectory with additional files. It also adds two entries
  113.   (for winmm16.dll and w32s.386) to the system.ini file in the Windows
  114.   directory. You can deinstall Win32s by removing these files and restoring
  115.   your original system.ini file (saved in system.old by the setup program).
  116.  
  117.   Installation of WinG is optional. I have included two versions of VMPEG,
  118.   one with WinG calls (VMPEGWIN.EXE) and one without (VMPEGNWG.EXE).
  119.   The WinG version is faster, but the difference is only notable for
  120.   large (CIF/SIF) MPEGs (may depend on your SVGA).
  121.  
  122.   WinG adds several files (wing.dll, wing32.dll, wingde.dll, wingdib.drv,
  123.   wingpal.wnd, dva.386) to the system directory and adds an entry for DVA.386
  124.   to your system.ini file. To deinstall WinG simply remove this entry from
  125.   system.ini.
  126.  
  127.   If you start VMPEG (or any other program using WinG) for the first time,
  128.   a performance test window appears which adapts and optimizes WinG for the
  129.   VGA in your PC. This takes a while (about 3 minutes on my computer), don't
  130.   despair...
  131.  
  132. - Create a subdirectory for installation:
  133.  
  134.   md \vmpeg
  135.   cd \vmpeg
  136.  
  137. - Unzip the archive into this subdirectory:
  138.  
  139.   pkunzip -d vmpeg12b.zip
  140.  
  141.   if you don't need the DOS version, you can delete vmpeg, go32.exe, the
  142.   drivers subdirectory and the vmpeg*.bat batch files
  143.  
  144. - You can start the program (vmpegwin.exe / vmpegnwg.exe) either from the
  145.   file manager or from the program manager (File->Run menu item) or you can
  146.   define a program entry in the program manager (File->New menu item).
  147.  
  148. - both VMPEG and the Win32s libraries need a lot of memory (about 3-5 MB in
  149.   total), and you may therefore have to increase the size of the swap file.
  150.   4 MB of RAM are sufficient, however, to run the program without swapping
  151.   (except during program startup).
  152.  
  153.  
  154. 4. Graphics Drivers (DOS version)
  155. =================================
  156.  
  157. The DRIVERS subdirectory contains a set of graphics drivers for different
  158. Super VGAs. Select the one that matches your graphics card by editing the
  159. file VMPEG.BAT (for 8 bit display). If none of the drivers work, you may try
  160. to use the (go32 internal) VESA driver and a TSR VESA BIOS extension. A
  161. collection of such drivers is available at
  162.  
  163.   oak.oakland.edu:/pub/msdos/graphics/vesadrv2.zip (anonymous ftp).
  164.  
  165. and on all other SimTel mirrors.
  166.  
  167. True color support requires VESA BIOS. It works for my configuration (a
  168. Cirrus Logic GD5422 based card with VESA BIOS) and should work for most other
  169. 'well behaved' boards as well. You may have to adjust the -y option in the
  170. last line of VMPEG24.BAT. The number indicates the length of each scanline.
  171. This is usually either 1920 or 2048. If the frames appear scattered over the
  172. screen, the setting is probably wrong... If you get incorrect colors (red
  173. sky, blue faces) you have a card with reversed RGB order. Simply replace the
  174. -y... by a -Y... to fix this.
  175.  
  176.  
  177. 5. Troubleshooting
  178. ==================
  179.  
  180. DOS version:
  181.  
  182. If you get a message about the CPU not being in Real Mode, you have to remove
  183. the noems option from the EMM386.EXE (or any other EMS emulator) line in your
  184. CONFIG.SYS.
  185.  
  186. Windows version:
  187.  
  188. If you get the message 'Can't find WING32.DLL' you don't have WinG properly
  189. installed. Either install WinG or use VMPEGNWG.EXE instead.
  190.  
  191. If starting VMPEGWIN briefly switches to text mode and displays the message
  192. 'This program cannot be run in DOS mode', Win32s is not installed properly.
  193.  
  194. If you get 'Out of Memory' errors, you have to increase the size of your
  195. swap file (from the control panel).
  196.  
  197.  
  198. 6. Command Line Options
  199. =======================
  200.  
  201. The following command line options are valid for both DOS and Windows
  202. versions. To specify options to the Windows version, you have to run it
  203. from the program manager (File->Run menu). Of course you can set all
  204. these options interactively after starting vmpegwin (without command
  205. line options).
  206.  
  207.   vmpeg [options] input.mpg
  208.   vmpeg24 [options] input.mpg
  209.   vmpegwin [options] input.mpg
  210.   vmpegwng [options] input.mpg
  211.  
  212. options:
  213.  
  214.   -l  loop the sequence (infinitely until you press a key)
  215.  
  216.   -x1 skip B frames
  217.   -x2 skip B and P frames, i.e. only I frames are displayed; you should
  218.       use this option for I-frame-only sequences (including Xing compatible
  219.       streams) to make the program run faster (as it doesn't have to manage
  220.       reference frames)
  221.  
  222.   -d0 (default) ordered 4x4 dither
  223.   -d1 grayscale
  224.   -d2 similar to -d0 but display magnified by a factor of 2
  225.  
  226.       True color mode is selected by using vmpeg24 instead of vmpeg. In this
  227.       case the -d switch isn't effective.
  228.  
  229. DOS version only:
  230.  
  231.   -in displace output by n pixel in horizontal direction
  232.   -jn displace output by n pixel in vertical direction
  233.  
  234.       VMPEG centers the MPEG on the screen. If the frame is larger than
  235.       the screen you can use the -i and -j options to pan the visible
  236.       area. positive n shifts to the right or bottom, negative n to the
  237.       left or upwards.
  238.  
  239.   -zn reduce display speed. This is done by a counting loop, so you
  240.       have to experiment until you get the speed you want.
  241.  
  242.  
  243. The program can be terminated by pressing an arbitrary key (DOS version).
  244.  
  245.  
  246. 7. Remarks
  247. ==========
  248.  
  249. Please report bugs (don't forget to mention which version of VMPEG you are
  250. using!) to my email address:
  251.  
  252.   stefan@lis.e-technik.tu-muenchen.de
  253.  
  254. or by mail to:
  255.  
  256.   Stefan Eckart
  257.   Kagerstr. 4
  258.   D-81669 Muenchen, Germany
  259.  
  260.  
  261. 8. Acknowledgements, Copyrights
  262. ===============================
  263.  
  264. This program comes without any warranty. Your are using it at your own
  265. risk. VMPEG is copyrighted software (C) Stefan Eckart, 1994. You may
  266. use, copy and distribute this program without restrictions but only in
  267. unmodified form and without charging money for it.
  268.  
  269. GO32.EXE, DRIVERS\*.GRD:
  270.  
  271.    Copyright (C) DJ Delorie
  272.                  24 Kirsten Ave
  273.                  Rochester NH  03867-2954
  274.  
  275. These files are part of DJGPP which is available from
  276.  
  277.     host:      oak.oakland.edu (or another SimTel mirror)
  278.     login:     ftp
  279.     password:  send your e-mail address
  280.     directory: /pub/msdos/djgpp
  281.  
  282. other DRIVERS:
  283.  
  284.  Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
  285.  Copyright (C) 1992 Csaba Biegl, 820 Stirrup Dr, Nashville, TN 37221
  286.  
  287. VMPEG:
  288.  
  289. The library VMPEG is linked with is
  290.  
  291.  Copyright (c) Regents of the University of California.
  292.  
  293.  acknowledgement:  ``This product includes software developed by the
  294.  University of California, Berkeley and its contributors''
  295.  
  296.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
  297.  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
  298.  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  299.  
  300. The program is compiled with GNU GCC, the C compiler of the Free
  301. Software Foundation (FSF), Inc. 675 Mass Ave, Cambridge, MA 02139, USA.
  302. VMPEG does not contain code covered by the FSF General Public License.
  303.  
  304.  
  305. 9. Known Bugs
  306. =============
  307.  
  308. Interframe coded macroblocks theoretically can experience wrap-around
  309. (255<->0). This happens rarely enough to live with it (fixing would
  310. reduce speed for all sequences).
  311.  
  312. Accuracy of the IDCT does not meet the requirements of IEEE 1180-1990. It is,
  313. however, a reasonable trade-off between speed and image quality.
  314.  
  315. Display should be synchronized to the frame rate signalled in the sequence
  316. header.
  317.  
  318. The program should use VESA BIOS supplied information instead of the -y
  319. option.
  320.  
  321.  
  322. 10. References
  323. ==============
  324.  
  325. 1. Coding of moving pictures and associated audio for digital storage
  326.    media up to about 1,5 Mbit/s, International Standard ISO/IEC
  327.    IS 11172, 1993.
  328.  
  329. 2. Frequently Asked Questions (FAQ) of the alt.binaries.pictures
  330.    and comp.compression newsgroup: contains an introduction to MPEG.
  331.  
  332. 3. Documentation of the PVRG MPEG software: a thorough overview
  333.    covering many aspects of MPEG.
  334.  
  335. 4. Documentation of the MSSG MPEG-2 codec (mpeg2codec, see below).
  336.  
  337.  
  338. Appendix A: Related Software
  339. ============================
  340.  
  341. This list is probably incomplete, but it's all I'm aware of. Of course
  342. there are programs for other systems as well (Mac, Amiga etc.).
  343.  
  344. mpeg2codec     MPEG-1 and MPEG-2 codec from the MPEG Software Simulation Group
  345.                Authors: Stefan Eckart, C. Fogg, C. Aeyung, S. Papuc
  346.                Includes source code for Unix X11 and Windows (Win32s / NT)
  347.                and compiled versions for PC.
  348.                ftp.netcom.com:/pub/cfogg/mpeg2/*
  349.  
  350. mpeg2play      a speed optimized version of the decoder from mpeg2codec
  351.                ftp.netcom.com:/pub/cfogg/mpeg2/mpeg2play*
  352.  
  353. mpeg_play      MPEG Video Software Decoder (Version 2.0; Jan 27, 1993)
  354.                Authors: Lawrence A. Rowe, Ketan Patel, and Brian Smith
  355.                Computer Science Division-EECS, Univ. of Calif. at
  356.                Berkeley
  357.                toe.cs.berkeley.edu:/pub/multimedia/mpeg/mpeg-2.0.tar.Z
  358.  
  359. cmpeg          an MPEG encoder for the PC (DOS, 640K, no '386 req.)
  360.                for Targa, PBMPLUS and Alchemy RAW images
  361.                Author: Stefan Eckart
  362.                garbo.uwasa.fi:/pc/graphics/cmpeg10.zip
  363.  
  364. dmpeg          MPEG decoder and player for the PC (DOS, 640K, VGA)
  365.                Author: Stefan Eckart
  366.                garbo.uwasa.fi:/pc/graphics/dmpeg11.zip
  367.  
  368. mpegwin        Port of mpeg_play for MS-Windows
  369.                by: Michael Simmons, msimmons@ecel.uwa.edu.au
  370.                toe.cs.berkeley.edu:/pub/multimedia/mpeg/Ports/mpegw*
  371.                (HiColor & TrueColor support, Shareware)
  372.  
  373. mpeg.exe       DOS MPEG player from Xing Technologies (XingIt V2.1)
  374.                (high speed, but decodes only a small subset of the
  375.                 MPEG standard, audio (.WAV,.MP2) support, Windows)
  376.                mpegview.zip (available from many ftp sites)
  377.  
  378. MPEGv1.1/1.2alpha
  379.                MPEG Software Encoder/Decoder
  380.                Authors: Portable Video Research Group (PVRG)
  381.                havefun.stanford.edu:/pub/mpeg/MPEGv*.tar.Z
  382.  
  383. disp
  384.                a display program for pictures and animations
  385.                including MPEG (based on mpeg_play)
  386.                contains additional drivers that can also be used
  387.                with VMPEG.
  388.                Author: Jih-Shin Ho, u7711501@bicmos.ee.nctu.edu.tw
  389.                NCTUCCCA.edu.tw:/PC/graphics/disp
  390.                
  391.  
  392.  
  393. APPENDIX B: MPEG files
  394. ======================
  395.  
  396. Two good sources for MPEG files:
  397.  
  398.   s2k-ftp.cs.berkeley.edu:/pub/multimedia/mpeg/movies
  399.   havefun.stanford.edu:/pub/mpeg
  400.  
  401. High quality MPEGs you simply can't afford to miss:
  402.  
  403.   tennis.mpg
  404.   flowg.mpg
  405.   bike.mpg
  406.  
  407.  
  408. --
  409. Stefan Eckart, stefan@lis.e-technik.tu-muenchen.de
  410. Kagerstr. 4, D-81669 Munich, Germany.
  411.