home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / MPEG / rds-mpeg.lha / Easy_MPEG / Easy_MPEG.doc < prev    next >
Encoding:
Text File  |  1994-12-13  |  29.9 KB  |  664 lines

  1.  
  2.  
  3. =======================================================================
  4. =======================================================================
  5.  
  6.            Easy_MPEG Version 1.03  -  MPEG for the masses...
  7.  
  8. =======================================================================
  9. =======================================================================
  10.  
  11.  
  12.  
  13. by ME: *******************************************************************
  14.  
  15. Scott Tribbey
  16. 885 N.W. 45th Street
  17. Pompano Beach FL, 33064
  18.  
  19. or
  20.  
  21. 4600 Glenwood Drive
  22. Coconut Creek Fl, 33066
  23.  
  24.  
  25. Internet Address:  secrd2@gate.net    OR    TRIBB@DELPHI.COM
  26.  
  27.  
  28. If you have any problems, suggestions, or would just like to say thanks,
  29. feel free to contact me.  It would be nice to hear that this is useful
  30. to someone aside from myself.
  31.  
  32.  
  33.  
  34. CREDIT: ***************************************************************
  35.  
  36. This package is the result of the combined effort of a number of
  37. talented programmers (including me).  I wrote this Arexx program in
  38. order to make MPEG easier to use for myself, and accessible to those
  39. who might wish to use it like any other WorkBench program.  The
  40. arprexxlib.library was of great help in accomplishing this goal.
  41.  
  42. This is my first Arexx program. Although I have programmed in "C" for
  43. years now, if I wrote this in "C", it would have taken much longer,
  44. and been a much bigger program.  Also, the Arexx program is easier
  45. to modify for me and anyone else who has special needs.
  46.  
  47. This is a great example of the power that can be had using Arexx.
  48. Do yourself a favor... LEARN IT!!!
  49.  
  50.  
  51.  
  52. WHATISIT: *************************************************************
  53.  
  54. Easy_MPEG.rexx is an Arexx program that will automatically generate
  55. MPEG format video files from a sequence of IFF frames that have been
  56. generated or are being generated by a rendering program or other graphics
  57. application.  Easy_MPEG sports an Intuition interface for ease of use
  58. and easily recovers after being interrupted.
  59.  
  60. If 100 to 1 compression whets your appetite, read on...
  61.  
  62. Also note that programs like this are only beginning to come out on other
  63. platforms like the PC.  In fact XING Technology Corp. has one for the PC
  64. that is selling for around $1000, gimme a break!
  65.  
  66. I haven't even seen one for the MAC yet.  Just another reason that Apple
  67. was stupid for not including a command line interface in their operating
  68. system.  Us Amiga people can use the Unix stuff almost without
  69. modification while the MAC mavens have to wait for someone to write a
  70. nice little interface for it and then pay through the nose to get it.
  71.  
  72.  
  73. DISCLAIMER: ***********************************************************
  74.  
  75. +----------------------------------------------------------------------+
  76. |                                                                      |
  77. |                  D I S C L A I M E R   N O T I C E                   |
  78. |                                                                      |
  79. |  I make no warranty,                                                 |
  80. |  express or implied, or assume any liability or responsibility for   |
  81. |  accuracy,  completeness or  usefulness of any information, appara-  |
  82. |  tus, product or process disclosed, or represent that its use will   |
  83. |  not infringe privately-owned rights.  Mention of any product,  its  |
  84. |  manufacturer, or suppliers shall not, nor is it intended to, imply  |
  85. |  approval, disapproval, or fitness for any particular use. I retain  |
  86. |  the right to use and disseminate same for any purpose whatsoever.   |
  87. |                                                                      |
  88. +----------------------------------------------------------------------+
  89.  
  90. In other words...
  91.  
  92. If you should happen to run this program on a computer used by
  93. the defense department to target nuclear warheads and the system
  94. goes berzerk sending 1500 megatons of kaboom down on Sadaam Husein's
  95. head...  It's not my fault.  ( not that he would be a loss )
  96.  
  97. Or...
  98.  
  99. If anything bad happens when using this program, it's not my fault
  100. I will not be held responsible.  Use this software at your own risk.
  101.  
  102. However, I can say that no one or thing has been injured due to the
  103. use of this software up to this point.
  104.  
  105.  
  106.  
  107.  
  108. COPYRIGHT: ************************************************************
  109.  
  110.  
  111.                    Easy_MPEG.rexx   Version 1.00
  112.                    ==============================
  113.  
  114.                         Copyright (C) 1994
  115.  
  116.                                 by
  117.  
  118.                          Scott A. Tribbey
  119.  
  120.                        ( all rights reserved )
  121.  
  122.  
  123. This program is not Public Domain, it is Freeware.  I charge no fees
  124. for its use by private individuals.  However, it is not to be sold
  125. in any form without prior written authorization from Scott A. Tribbey.
  126.  
  127. This software may not be used for any commercial venture without
  128. prior written consent from Scott A. Tribbey
  129.  
  130.  
  131.  
  132. REQUIREMENTS: *********************************************************
  133.  
  134. Amiga   -   68020 or better with 68881 or better FPU
  135.             Actually I'm not sure about this, but I've never tried
  136.             running this on anything less.  Even if you can run it
  137.             on a 68000, it will crawl, and so will your graphics
  138.             program.
  139.  
  140. AREXX   -   If you don't have Arexx then don't bother reading on.  Just
  141.             go out and get the AmigaDOS 3.1 upgrade, and then continue
  142.             reading
  143.  
  144. Memory  -   Gobs...  I would suggest at least 6 MEGS of ram.  More is
  145.             always better.  I have 14 MEGS and I'd like more.
  146.             For even better results use a virtual memory program like
  147.             VMM or Gigamem if you have a 68030 or '040.
  148.  
  149. Priority -  The Easy_MPEG program must be run at a priority equal to or
  150.             higher than the rendering program that is producing the
  151.  
  152.             IFF files.  For instance, set the rendering program for a
  153.             priority of -5 and leave the shell where Easy_MPEG will
  154.             be run from, at the standard priority of 0.
  155.  
  156. Stack -     I'm not really sure what the stack requirements are for
  157.             mpeg_encode program, but just to be safe, I run it with a
  158.             stack of 20000 bytes.  I suggest you do the same.
  159.  
  160. Run & Wait  -   Easy_MPEG makes use of these AmigaDOS commands, so
  161.                 make sure they are in your C: directory...
  162.                 They certainly should be!
  163.  
  164. rexxsupport.library - This library is also required.  It is a standard
  165.                       part of the Arexx installation so you should
  166.                       already have it in you LIBS: directory
  167.  
  168. rexxarplib.library - This is used to create the GUI for Easy_MPEG thus
  169.                      making it easy.  It should be in your LIBS: directory
  170.                      See below for more.
  171.  
  172. ixemul.library - The runtime library needed for executables compiled by the
  173.                  GCC C compiler.  This library is required by mpeg_encode
  174.  
  175.  
  176.  
  177.  
  178. INCLUDED PROGRAMS: *******************************************************
  179.  
  180. Included in this archive are several files from other archives that are
  181. necessary for this package to be useful.
  182.  
  183. mpeg_encode -   The freely redistributable MPEG encoder from Berkley
  184.                 University compiled for the Amiga with the GNU
  185.                 GCC 2.5.8 'C++' compiler
  186.  
  187.                 There are other MPEG encoder engines out there such as
  188.                 the one from Stanford University, but I chose the
  189.                 Berkley version for its ability to encode the MPEG
  190.                 file in chunks (GOPS), making it perfect for compressing
  191.                 an animation while it's being generated.
  192.  
  193.                 (I modified this version slightly to get rid of an
  194.                 annoying problem the program was having while
  195.                 searching for a Unix shell file)
  196.  
  197. 24toPPM     -   Actually, I don't know where this came from, but it is
  198.                 about the fastest 24 bit IFF to PPM converter I've seen
  199.                 This program is used to convert the IFF files to PPM
  200.                 format since this is the image format that the
  201.                 mpeg_encode program expects.
  202.  
  203. ILBMtoPPM   -   This was taken from the NetPBM package, another excellent
  204.                 piece of software.  It will convert IFF files of any format,
  205.                 but it is much slower than 24toPPM It is here because the
  206.                 program uses it if 24toPPM fails due to the input frames
  207.                 being something other than IFF-24 format, like HAM8.
  208.  
  209. rexxarplib.library  -  An absolutely excellent library of functions for
  210.                        arexx programs.  My applause to W.G.J. Langeveld
  211.                        at the Stanford Linear Accelerator Center for
  212.                        really adding to the usefulness of Arexx.
  213.  
  214.  
  215. SETUP: ****************************************************************
  216.  
  217. 1 - COPY rexxarplib.library TO LIBS:
  218. 2 - COPY ixemul.library TO LIBS:
  219. 3 - COPY all the other files to a directory of your choice.
  220.  
  221. Gee... that was easy
  222.  
  223.  
  224.  
  225. DESCRIPTION: **********************************************************
  226.  
  227.  
  228. So, maybe you've seen those MPEG encoders floating around the networks
  229. and you're wondering to yourself... "Hmmm, what the heck is MPEG?"
  230.  
  231.  
  232. What is MPEG and why should you use it?
  233.  
  234. Well, MPEG is quickly becoming a standard in motion video compression.
  235. MPEG is a lossy compression scheme based on a technology similar to
  236. that used for JPEG still image compression.  However, MPEG is also
  237. much more sophisticated than JPEG for motion compression and allows
  238. for compression ratios of 50,100,150 to 1, or more.  The disadvantage
  239. to MPEG is that it is extremely computationally intensive and for that
  240. reason does not play back at fast frame rates without dedicated
  241. decompression hardware.  It will play back on the Amiga 4000/040 at up
  242. to 20 frames per second with small frames.  However, the play back
  243. hardware necessary to view the MPEG files is becoming more available.
  244. Commodore's own CD32 MPEG module is one, and the Reel Magic card for the
  245. P.C. (yech!) costs only around $300 for the Lite version.  So, MPEG might
  246. be worth looking into if you would like to create some long animations
  247. and don't have a 1.5 Gigabyte hard drive.
  248.  
  249.  
  250.  
  251. USAGE: ****************************************************************
  252.  
  253.  
  254. Easy_MPEG is intended to be just that... Easy.  I will explain some of
  255. the more esoteric features below, but this is not intended to be an
  256. exhaustive explanation of the fine points of MPEG compression.  The
  257. intuition interface of Easy_MPEG allows the user to adjust most of the
  258. basic parameters for making an MPEG file and a few of the high level
  259. compression options for those a bit more bold.
  260.  
  261.  
  262. First... how to get started.
  263.  
  264. Easy MPEG is launchable from the shell with command line parameters.
  265. If no parameters are given, it will present a nice window full of
  266. gadgets for the user to enter data in.
  267.  
  268. Not all of the available parameters can be entered from the command line
  269. at this time, because I intended for this to be an easy to use program
  270. with an Intuition interface.  However, if you wish to change some of the
  271. options like PATTERN and Quantization, then you can change them from the
  272. Intuition interface, interrupt the program and then call it back up
  273. with command line parameters for the basic framename and such.  I suppose
  274. this would be useful if you want to call Easy_MPEG from some other script.
  275.  
  276. REMEMBER TO SET THE SHELL STACK TO AT LEAST 20000 USING THE STACK COMMAND.
  277.  
  278. Command line parameter launch:
  279. ==============================
  280.  
  281. Usage: rx Easy_MPEG Base_Frame_Name Start End Xdim Ydim
  282.                     OutFileName Delay DelOldFrames
  283.  
  284.        Example: rx Make_MPEG dh0:IFF/Frame. 0000 0030 352 240 Movie 30 YES
  285.                 creates Movie.mpg from the files
  286.                 dh0:IFF/Frame.0000 through dh0:IFF/Frame.0030
  287.                 resolution is 352 by 240, directory scanning every 30 sec.
  288.                 old frames will be deleted
  289.  
  290. NOTE:
  291. Typing rx Easy_MPEG ? will print a usage example like that above
  292. and exit.
  293.  
  294.  
  295. Stay tuned for the meaning of these options...
  296.  
  297.  
  298.  
  299. Intuition interface launch:
  300. ===========================
  301.  
  302. To start the program, just open a shell, CD to the Easy_MPEG directory
  303. and type 'rx Easy_MPEG' at the prompt
  304.  
  305. After a short delay, you will see a display of information in the shell
  306. window, and and intuition interface window will pop up with numerous gadgets.
  307.  
  308. After clicking a gadget or entering data into a string gadget, the status
  309. display in the shell window will update, displaying the current settings
  310. the program will use to operate.
  311.  
  312.  
  313. The Gadgets...
  314.  
  315. Frame Name:   This gadget is used to enter the BASE frame name for the IFF
  316.               files that are to be encoded.  Easy_MPEG expects that the
  317.               output files will be something of the form BlahBlah.000
  318.               where BlahBlah can be any combination of letters, numbers,
  319.               and punctuation and 000 can be any number as long as the
  320.               program that produces the frames numbers them sequentially.
  321.  
  322.               In other words, the program expects to see a series of frames
  323.               like Pic.00000  Pic.00001  Pic.00002 .... Pic.00356
  324.  
  325.               If your graphics program doesn't do that (most of them do) then
  326.               you could write an Arexx program to handle it for you.
  327.  
  328.               The numbers don't have to start with 0, it could be anything...
  329.               0012, 05, 000000567, etc.
  330.  
  331.               Also, the period separating the name and the number is not
  332.               necessary, it's just how some programs number their output
  333.               frames.
  334.  
  335.               Now the important thing to remember here is that this gadget
  336.               only wants the BASE frame name not the number portion.  So an
  337.               example might be Pic.  or  DinosaurFrame  or  Stupid_Pic_No.
  338.  
  339.               Notice how the 0000 is not included at the end of the
  340.               frame name.
  341.  
  342. Input Dir:    This gadget is where you enter the directory where the frames
  343.               exist or are going to be saved when they are generated.
  344.  
  345.               This should be self explanatory.  An example might be
  346.  
  347.               Imagine:Projects/BigGiant.imp/RayTrace.pix/
  348.  
  349.               Remember to include the "/" at the end of the string when
  350.               typing directly into this gadget.
  351.  
  352.               NOTE:  BECAUSE OF AN IDIOSYNCRACY IN THE MPEG_ENCODE PROGRAM,
  353.               THE INPUT FILES MUST RESIDE AT LEAST ONE DIRECTORY LEVEL DOWN
  354.               FROM THE ROOT DIRECTORY.  IN OTHER WORDS,  HAVING YOUR IFF
  355.               FILES IN "WORK:INPUT/" IS OKAY, BUT HAVING THEM IN "WORK:" IS
  356.               NOT.  THIS ALSO GOES FOR ASSIGNMENTS.  IF YOUR FILES ARE IN
  357.               "DH0:FILES/" WHICH IS ASSIGNED TO "ANIMATION-FRAMES:", USE
  358.               THE ACTUAL PATH NOT THE ASSIGNMENT!
  359.  
  360.               THE PROBLEM IS THAT THE MPEG_ENCODE PROGRAM PLACES A "/" AT
  361.               THE END OF ITS INPUT DIRECTORY PARAMETER WHEN SEARCHING FOR
  362.               FILES.  SINCE DH0:/ MEANS NOTHING TO AMIGADOS, THIS CAUSES
  363.               THE PROGRAM TO FAIL.
  364.  
  365.  
  366. File
  367. Requester:    Aren't you glad I included this. You can use the File requester
  368.               to find the frame name and input directory your looking for.
  369.               Just remember to backspace over the numeric portion of the
  370.               name before pressing OK.  Do not just double click on the file
  371.               name.
  372.  
  373.  
  374. Start Frame:  This is where you enter the string representing the numeric
  375.               portion of the first frame to be compressed.  In this gadget,
  376.               0000 is not equivalent to 00.  The program uses the number and
  377.               the length of the string to properly format the file names it
  378.               is looking for.  If your program puts out file names that have
  379.               four digits at the end, then enter four digits in this gadget.
  380.  
  381.  
  382. End Frame:    This is where you enter the string representing the numeric
  383.               portion of the last frame to be compressed.  The number of
  384.               digits entered must be equal to the number of digits entered
  385.               in the Start Frame gadget.
  386.  
  387.  
  388. Resolution X: This is where the Horizontal resolution of the output frame
  389.               must be entered.  For instance, 128... 160... 352..., etc.
  390.  
  391.            Y: Vertical resolution is entered here.  96, 120, 240, etc.
  392.  
  393.            Common MPEG resolutions are 128x96, 160x120, and 352x240(SIF)
  394.            352x240 is the standard NTSC video resolution for MPEG
  395.  
  396.            NOTE:  HORIZONTAL AND VERTICAL RESOLUTIONS MUST ALWAYS BE
  397.                   MULTIPLES OF 16 BECAUSE OF THE WAY THAT THE MPEG PROCESS
  398.                   ENCODES INFORMATION.  IF THE RESOLUTION IS NOT A MULT.
  399.                   OF 16, IT'S NOT FATAL, THE ENCODER WILL JUST TRUNCATE
  400.                   PORTIONS OF THE FRAME.
  401.  
  402.  
  403.            MAKE SURE THAT THE CORRECT DATA IS ENTERED HERE, OR THE MPEG
  404.            FILE WILL BE A MESS.
  405.  
  406.            These numbers are only used during the last stage of the program
  407.            when all the smaller portions of the MPEG file are being combined.
  408.            So if you notice that these numbers are wrong, then interrupt the
  409.            program while it is waiting for frames, start it again and enter
  410.            the correct numbers.
  411.  
  412.  
  413.  
  414. The next two variables are the only ones that really affect the compression
  415. level of the program.
  416.  
  417. Quant. Scale: Quantization Scale is one of those variables controlling a
  418.               more esoteric feature of the compression process.  The numbers
  419.               entered in the I, P, and B gadgets must be between 1 and 31.
  420.               Compression is higher for higher numbers, but quality goes down
  421.               as the numbers get higher.  There are three separate numbers
  422.               for I, P, and B type frames.  Each number affects the
  423.               compression level of the appropriate frame type I, P or B.
  424.               This will be further explained below in the Frame Pattern
  425.               section.
  426.  
  427.               If you have no idea what I'm talking about, use standard
  428.               numbers like 2,4,6 and you'll be just fine.
  429.  
  430.  
  431. Frm Pattern:  Frame Pattern is the repeating pattern that will be used to
  432.               encode the IFF files.  This controls the number of frames that
  433.               Easy_MPEG will wait for before encoding a portion of an MPEG
  434.               file called a GOP (Group of Pictures).  Be aware that larger
  435.               patterns will cause the mpeg_encode program to use more memory.
  436.               So, if you don't have a lot of memory, I would suggest a pattern
  437.               of no more that four characters.  Although you can use only 1
  438.               if you wish.  Enter the pattern in capital letters.
  439.  
  440.               There are three different types of frames in an MPEG file.
  441.  
  442.               I frames are the reference frames that MPEG uses to predict
  443.               the motion of objects from frame to frame.  This is similar to
  444.               the concept of a key frame in animation.  The compression of I
  445.               frames is similar to JPEG compression for still images.
  446.  
  447.               **** THE PATTERN MUST ALWAYS START WITH LEAST ONE I.
  448.  
  449.               P frames are frames that MPEG predicts from previous I frames.
  450.               These frames get significantly higher compression than I frames
  451.               because most of the information for the frame is predicted from
  452.               the previous frame.  This can be a disadvantage when a frame is
  453.               filled with fast moving objects.  If the P frame can not
  454.               properly locate where a portion of the image should be, then
  455.               small blocks of the object may seem out of place in a particular
  456.               frame.  Also, if a very short duration event like the flash out
  457.               of the end of a gun takes place during what is being encoded as
  458.               a series of P or B frames, it will not show up at all, since
  459.               it was not in the previous or succeeding I frames.
  460.  
  461.               B frames are predicted from the previous and following frames.
  462.               B frames achieve even higher compression than I or P.  However,
  463.               the same disadvantage exists as for P frames.
  464.  
  465.               **** DO NOT END YOUR PATTERN WITH A B SINCE THE FOLLOWING
  466.                    FRAME WILL NOT BE AVAILABLE WHEN THE GOP IS ENCODED.
  467.  
  468.               This option really takes time and understanding to use properly,
  469.               so I've included some example patterns that you can use.
  470.  
  471.  
  472.               IIII  -   Encodes the MPEG file with only I frames, this will
  473.                         provide the highest quality, but lower compression.
  474.                         Compression of 20 to 1 is easily attained with this
  475.                         pattern.
  476.  
  477.               II    -   Same as above, but uses less memory during compression.
  478.  
  479.               IP    -   Achieves greater compression but be careful with
  480.                         fast motion.
  481.  
  482.               IPBP  -   (Default) Still better compression, but once again
  483.                         be careful with fast moving objects.  I use this
  484.                         pattern quite often with excellent results.  Using
  485.                         Quantization scale numbers of 2,4,6, and this pattern,
  486.                         I recently compressed an animation from 11.2 megs to
  487.                         114k with virtually no loss of quality.  That's
  488.                         100 to 1 compression for those of you without
  489.                         calculators.
  490.  
  491.               IPBBPBBP - This is a standard pattern that I have seen used
  492.                          in several different MPEG applications.  It will
  493.                          require a fair amount of memory though.
  494.  
  495.  
  496.               Enough about this, if you don't understand, than use IPBP as
  497.               your pattern and you should be just fine.
  498.  
  499.  
  500.               HINT HINT ....
  501.  
  502.               Easy_MPEG is excellent for use with Virtual memory systems like
  503.               VMM.  Using a VM system with an mpeg encoder allows you to use
  504.               a significant amount of memory for the encoder without having
  505.               to limit the memory requirments of a running rendering program
  506.               like Imagine or Lightwave.
  507.  
  508.  
  509. Out File:     Well, this one's easy.  All you need to enter here is the name
  510.               of the MPEG file to be created.  The MPEG file will be placed
  511.               in the directory of the original IFF frames with the extension
  512.               .mpg which is the standard extension for Amiga, PC, and Unix
  513.               MPEG files.  So if you enter BigGiantMovie in this gadget, the
  514.               MPEG file BigGiantMovie.mpg will be placed in the Input Dir. Of
  515.               course, if you want this file to be used on other platforms,
  516.               it would be best to keep the filename to 8 characters or less.
  517.  
  518.  
  519. Dir. Scan:    This option specifies the amount of time the program will sit
  520.               around waiting before checking to see if enough new frames have
  521.               been generated to produce a GOP.  Remember, if your pattern is
  522.               IPBP then four new frames must be complete for the mpeg_encode
  523.               program to produce a GOP.  So, if you type 60 into this gadget,
  524.               then the program will check the Input Dir. every 60 seconds for
  525.               the existence of the necessary IFF files.
  526.  
  527.               If your animation program spits out a frame every 30 minutes,
  528.               then don't set your delay for 5 seconds, your just wasting
  529.               processing time.  A more reasonable value would be maybe 60 or
  530.               120 seconds.  Also, don't set this parameter for 350000 seconds,
  531.               as you don't want Easy_MPEG sitting around doing nothing for
  532.               350000 seconds if the last frame just completed rendering.
  533.  
  534.               In the case where the full animation has already been produced,
  535.               the just set this value to 1 and the compression will
  536.               proceed uninterrupted. I would not advise setting this to
  537.               0 at any time, as it may become difficult to break out of
  538.               the loop.
  539.  
  540.               Actually what Easy_MPEG does is to check for the existence of
  541.               the frame just following the last one in the GOP to be encoded.
  542.               In other words, if Easy_MPEG is waiting for Pic.0000 through
  543.               Pic.0003 then it actually checks to see if Pic.0004 exists
  544.               (although it doesn't have to been complete yet).  Easy_MPEG
  545.               then assumes that the previous frames are done and compresses
  546.               them into a GOP.  If the last GOP is being produced, then
  547.               Easy_MPEG will check to see if the last frame is actually
  548.               completed before proceeding with the encoding.  The GOP files
  549.               will have the extension .gop and are only stored until the
  550.               final MPEG file is produced at which time they are deleted.
  551.  
  552.  
  553. Del.Old Frames - This gadget will toggle the state of the DelOldFrms line in
  554.                  the shell window when pressed.  If this option has a YES
  555.                  next to it then the original IFF frames will be deleted
  556.                  after producing a GOP.  This option is great when you want
  557.                  to produce a large animation but don't have a huge hard
  558.                  drive.  However, make sure that you have the MPEG parameters
  559.                  just the way you want them, because you'll have to regenerate
  560.                  all the frames if you don't get what you want the first
  561.                  time.  If you're really not sure and have all the hard drive
  562.                  space you need, then just set this option to NO and the
  563.                  original IFF frames will be left in the Input Directory.
  564.                  That way you can try different encoding parameters until
  565.                  you get just what you want.
  566.  
  567. Quit Program - What do you think!  Hmmm... I'll just bet the program quits
  568.                if you click this button.  The window CLOSE gadget will also
  569.                have the same effect.
  570.  
  571. Start Scanning - This is it!  You've set all the parameters correctly and
  572.                  you're ready to go.  Press this button and it's all
  573.                  automatic.  Come back in a few minutes, hours or days and
  574.                  Presto!, your MPEG file is complete!  You'll notice that
  575.                  the Intuition window disappears when you press this button.
  576.  
  577.                  From here until the MPEG file is complete, the shell window
  578.                  tells you everything.  The status display is mainly a
  579.                  summary of the parameters you fed to the program, but is
  580.                  also tells you how many GOPS have been produced out of the
  581.                  total number and the percentage complete.
  582.  
  583.                  While Easy_MPEG is waiting for frames, it will occasionally
  584.                  print messages telling you what frame it is waiting for.
  585.                  During this time it is safe to press the CONTROL-C key
  586.                  combination to halt the program.  Easy_MPEG will recover
  587.                  from this when you run it again.  In fact, I envisioned
  588.                  that this feature might be used fairly often, so the program
  589.                  writes a file called MPEG.settings every time it is run, and
  590.                  reads it every time it is started up.  This allows you to
  591.                  start the program from where you left off without having
  592.                  to enter any data.  The program will start up with the same
  593.                  parameters you entered last time.  All you need to do is
  594.                  press the Start Scanning button and the program will tell
  595.                  you how many GOPS are complete and continue waiting for the
  596.                  rest.
  597.  
  598.                  When Easy_MPEG has found the frames it is waiting for, it
  599.                  will start the encoding process.  During this period of time,
  600.                  you will see the actual encoding process taking place.
  601.                  First of all, the frames all have to be converted to a
  602.                  graphics file format called PPM.  Then the PPM files are
  603.                  fed to the mpeg_encode program.  During the encoding
  604.                  process, do not interrupt the program.  You may have trouble
  605.                  starting over where you left off if you interrupt the
  606.                  program during any time other then when it is waiting for
  607.                  IFF frames.
  608.  
  609.  
  610.  
  611. Completion  - Upon completion, Easy_MPEG will display a little
  612.               "Processing Complete" box with an OK button for you to click.
  613.  
  614.  
  615.  
  616. NOTE:   You will notice that during each session, Easy_MPEG writes a
  617.         file called BlahBlah.param to its home directory.  This file
  618.         is a special file that contains all necessary parameters for
  619.         the mpeg_encode program to work.  The mpeg_encode program
  620.         uses this file to figure out what to do with the incoming
  621.         PPM files.  The name of the .param file is actually the name
  622.         of the Output MPEG file with .param on the end.  For instance
  623.         if you specified BigMovie as your Output file name, then the
  624.         parameter file would be called BigMovie.param.
  625.  
  626.         These .param files only take up about 500 bytes or so, but
  627.         as you work with the program more and more, you may want to
  628.         occasionally delete the .param files from the Easy_MPEG
  629.         directory.
  630.  
  631.         The program does not automatically delete them, because they
  632.         serve as a record of the parameters used to create a certain
  633.         MPEG file.  This can be useful when experimenting with
  634.         numerous different compression parameters.
  635.  
  636.  
  637.  
  638.  
  639.  
  640. Conclusion: ***************************************************************
  641.  
  642. Well, that's about it, I didn't cover everything in detail, but I think it
  643. should be enough to get most of you going.  If you have problems, contact me
  644. at one of the addresses above.
  645.  
  646. If you would like further technical details on the MPEG compression scheme,
  647. or the particulars of the mpeg_encode program from Berkley, the archives
  648. containing these have been floating around the BBS world for a while.
  649.  
  650. files worth looking for are;
  651.  
  652. Amipeg04.lha        -  MPEG player for AGA/ECS
  653. mp103.lha           -  MPEG player for AGA/ECS
  654. MPEGPLAY_201.lha    -  MPEG player for AGA/ECS
  655. MPEG12.lha          -  Stanford University MPEG encoder
  656. mpeg_enc.lha        -  Berkley University MPEG encoder
  657. BMPEG.lha           -  Stanford Encoder modified for use with Image F/X
  658.  
  659. These are all on the Aminet ( Internet )
  660.  
  661.  
  662.  
  663. Happy MPEGing!...            Scott A. Tribbey 1994
  664.