home *** CD-ROM | disk | FTP | other *** search
/ ftp.pasteur.org/FAQ/ / ftp-pasteur-org-FAQ.zip / FAQ / sgi / faq / movie < prev    next >
Encoding:
Internet Message Format  |  2001-07-06  |  51.9 KB

  1. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!howland.erols.net!fu-berlin.de!enews.sgi.com!news.tamu.edu!sgi-faq
  2. From: sgi-faq@viz.tamu.edu (The SGI FAQ group)
  3. Newsgroups: comp.sys.sgi.misc,comp.answers,news.answers
  4. Subject: SGI movie Frequently Asked Questions (FAQ)
  5. Supersedes: <movie_993016817@viz.tamu.edu>
  6. Followup-To: comp.sys.sgi.misc
  7. Date: 6 Jul 2001 05:59:47 GMT
  8. Organization: Visualization Lab, Texas A&M University
  9. Lines: 1275
  10. Approved: news-answers-request@mit.edu
  11. Expires: 3 Aug 2001 06:00:15 GMT
  12. Message-ID: <movie_994399215@viz.tamu.edu>
  13. Reply-To: sgi-faq@viz.tamu.edu (The SGI FAQ group)
  14. NNTP-Posting-Host: viz.tamu.edu
  15. NNTP-Posting-Date: 6 Jul 2001 05:59:47 GMT
  16. Originator: sgi-faq@viz.tamu.edu
  17. Xref: senator-bedfellow.mit.edu comp.sys.sgi.misc:57363 comp.answers:46108 news.answers:210660
  18.  
  19. Archive-name: sgi/faq/movie
  20. Last-modified: Wed Oct 20  1:00:04 CDT 1999
  21. Posting-Frequency: Twice monthly
  22. URL: http://www-viz.tamu.edu/~sgi-faq/
  23.  
  24.     SGI movie Frequently Asked Questions (FAQ)
  25.  
  26. This is one of the Silicon Graphics FAQ series, which consists of:
  27.  
  28.     SGI admin FAQ - IRIX system administration
  29.     SGI apps FAQ - Applications and miscellaneous programming
  30.     SGI audio FAQ - Audio applications and programming
  31.     SGI diffs FAQ - Changes to the other FAQs since the last posting
  32.     SGI graphics FAQ - Graphics and user environment customization
  33.     SGI hardware FAQ - Hardware
  34.     SGI impressario FAQ - IRIS Impressario
  35.     SGI inventor FAQ - IRIS Inventor
  36.     SGI misc FAQ - Introduction & miscellaneous information
  37.     SGI movie FAQ - Movies
  38.     SGI performer FAQ - IRIS Performer
  39.     SGI pointer FAQ - Pointer to the other FAQs
  40.     SGI security FAQ - IRIX security
  41.  
  42. Read the misc FAQ for information about the FAQs themselves. Each FAQ is
  43. posted to comp.sys.sgi.misc and to the news.answers and comp.answers
  44. newsgroups (whose purpose is to store FAQs) twice per month. If you
  45. can't find one of the FAQs with your news program, you can get it from
  46.  
  47.     ftp://viz.tamu.edu/pub/sgi/faq/
  48.     ftp://rtfm.mit.edu/pub/usenet/news.answers/sgi/faq/
  49.  
  50. (rtfm.mit.edu is home to many other FAQs and informational documents,
  51. and is a good place to look if you can't find an answer here.) The FAQs
  52. are on the World Wide Web at
  53.  
  54.     http://www-viz.tamu.edu/~sgi-faq/
  55.  
  56. If you can't use FTP or WWW, send mail to mail-server@rtfm.mit.edu with
  57. the word 'help' on a line by itself in the text, and it will send you a
  58. document describing how to get files from rtfm.mit.edu by mail. Send the
  59. command 'send usenet/news.answers/sgi/faq/misc' to get the SGI misc FAQ,
  60. and similarly for the other FAQs. Send the command 'send
  61. usenet/news.answers/internet-services/access-via-email' to get the
  62. "Accessing the Internet by E-Mail FAQ".
  63.  
  64. You may distribute the SGI FAQs freely and we encourage you to do so.
  65. However, you must keep them intact, including headers and this notice,
  66. and you must not charge for or profit from them. Contact us for other
  67. arrangements. We can't be responsible for copies of the SGI FAQs at
  68. sites which we do not control, and copies published on paper or CD-ROM
  69. are certain to be out of date. The contents are accurate as far as we
  70. know, but the usual disclaimers apply. Send additions and changes to
  71. sgi-faq@viz.tamu.edu.
  72.  
  73. Topics covered in this FAQ:
  74. ---------------------------
  75.    -1- Is there a QuickTime movieplayer available for SGI?
  76.    -2- I cannot play a QuickTime movie on my Silicon Graphics computer.
  77.        How can I make it work?
  78.    -3- I cannot play a QuickTime movie created on a Silicon Graphics
  79.        computer on my Macintosh.  How can I make it work?
  80.    -4- What version of QuickTime does Silicon Graphics support?
  81.    -5- How can I create a QuickTime file on an SGI?
  82.    -6- I need to play MPEG movies.  Does SGI offer MPEG support?
  83.    -7- I created a movie with Capture, but now I can't edit it with
  84.        Movie Maker or play it with Movie Player.
  85.    -8- How can I write a program to create, edit, convert, or play
  86.        movies?  Where can I get a copy of the SGI Movie Library?
  87.    -9- I can't use images exported with Moviemaker in any of my
  88.        applications.  What image format does Moviemaker use?
  89.   -10- Can anyone provide details on the SGI movie format?
  90.   -11- Can anyone provide details on the QuickTime movie format?
  91.   -12- How can I convert from SGI movie format to MPEG?
  92.   -13- How can I convert from Microsoft AVI movie format to SGI movie
  93.        format?
  94.   -14- Is there a way to bring up a movie (using movieplayer) within
  95.        Showcase using a button click...and having it place itself
  96.        automatically in a certain location and start?
  97.   -15- I am using Mosaic.  When I try to view a movie, movieplayer
  98.        starts, but then shows a message: no movie.  How can I make it
  99.        work?
  100.   -16- I have the Galileo (or Indy Video/Indigo2 Video) option, but I
  101.        can't get Capture to use it.  When I run it, the IndyCam shows
  102.        up.  What do I do?
  103.   -17- I cannot get the right video to show in the Capture tool! I get a
  104.        video source other than the one I want or the screen is black.
  105.        What do I do?
  106.   -18- Why does Capture tell me to "Please Stand By", instead of
  107.        capturing video?
  108.   -19- Capture just grabbed a file for me, but now I can't find it.
  109.        Where did Capture hide it?
  110.   -20- Under IRIX 5.3, my system has a video board and/or IndyCam, but
  111.        Capture won't let me use it.  It just greys out the video options
  112.        on its menu.  How can I make it work?
  113.   -21- I created a movie with audio using makemovie, but the soundtrack
  114.        plays back really garbled and choppy.  What do I do?
  115.   -22- Does anyone know the maximum size a movie file that MovieMaker or
  116.        MoviePlayer can handle?  Is it limited by free memory, or will it
  117.        play from the hard drive?
  118.   -23- How do I write a program to access the pixels of a video frame in
  119.        a movie file for image processing purposes?
  120.   -24- How do I write a program which can write individual frames from a
  121.        movie file out to a still image file?
  122.   -25- I'm using the Movie Library to create QuickTime movies using
  123.        Apple's Video compression.  When are default key-frames placed in
  124.        a QuickTime movie made with the SGI movie library?
  125.   -26- The Movie Library has calls to play a movie in a file, memory or
  126.        a file descriptor.  But all of them seem to assume that the
  127.        complete movie is available locally.  How can I play a movie all
  128.        of which is not available locally?
  129.   -27- When programming with the Movie Library, can we insert and delete
  130.        frames from a playing movie?
  131.   -28- When writing frames to a movie with the Movie Library, if we fix
  132.        the image track parameters, does the byte size of the frame
  133.        remain constant across frames?
  134.   -29- How do I write a program to play a movie entirely from memory?
  135.   -30- How do I capture movies from live video within my application?
  136.   -31- How do I write a program to read and write compressed data to a
  137.        movie file?
  138.   -32- I want to write a program which creates a JPEG-compressed movie
  139.        file, but I need to control the compression quality.  How do I do
  140.        this with the Movie Library?
  141.   -33- I want to write a program which can create a JPEG-compressed
  142.        movie file compatible with the Cosmo Compress board, SGI's
  143.        hardware JPEG accelerator.  How do I do this?
  144.   -34- I simply want to create a JPEG-compressed movie which is
  145.        compatible with the Cosmo Compress board.  I don't want to write
  146.        my own program.  How do I do this?
  147.   -35- I want to capture a still image from video using a shell script.
  148.        The Capture tool doesn't seem to be appropriate because it waits
  149.        for the user to click the mouse button. How can I accomplish
  150.        this?
  151.  
  152. ----------------------------------------------------------------------
  153.  
  154. Subject:    -1- Is there a QuickTime movieplayer available for SGI?
  155. Date: Fri May  3 10:23:53 PDT 1996
  156.  
  157.   SGI provides QuickTime movie support as part of Movieplayer in IRIX
  158.   5.1 and later.  If you can't or don't wish to upgrade, you may wish
  159.   to investigate a public domain program called Xanim which offers
  160.   QuickTime capability.
  161.  
  162.   The XAnim Home Page is:
  163.  
  164.     http://www.portal.com/~podlipec/home.html
  165.  
  166.   and it's available for anonymous ftp from:
  167.  
  168.     ftp.portal.com   /pub/podlipec/xanim2703.tar.?
  169.                      /pub/podlipec/cinepak.readme
  170.                      /pub/podlipec/indeo.readme
  171.  
  172.   If you are running IRIX 4.0.5 (any variant) or earlier, please
  173.   consider upgrading to IRIX 5.3 (if you have an R3000-based system)
  174.   or best of all, to IRIX 6.2.  Both releases contain a more
  175.   full-featured set of movie tools bundled with the system.
  176.   
  177.   If you upgrade to IRIX 5.3, you should download the Digital Media
  178.   Tools 5.5 product from SGI.  They can be found at the following
  179.   URL:
  180.   
  181.   http://www.sgi.com/Products/Evaluation/dmedia/
  182.   
  183.   This is an enhanced set of digital media tools for IRIX 5.3 systems.
  184.   It provides additional support for QuickTime features and MPEG.
  185.   You do not need to download the Digital Media Tools 5.5 product
  186.   if you have IRIX 6.2.
  187.  
  188.   IRIX 6.2 contains all of the enhancements in Digital Media Tools
  189.   5.5, as well as additional features and updated applications.
  190.   (Note: if you need to create content in MPEG-1 or CinePak format,
  191.   you will still need to purchase codec licenses).
  192.  
  193. ------------------------------
  194.  
  195. Subject:    -2- I cannot play a QuickTime movie on my Silicon Graphics
  196.                 computer. How can I make it work?
  197. Date: Thu May  2 16:33:54 PDT 1996
  198.  
  199.   Here is a checklist of things to try:
  200.  
  201.   - You should be using the 5.1 MR version of the OS or later. Later
  202.     versions, in particular Irix 6.2 support more QuickTime files.
  203.  
  204.   - The QT movie must be "flattened".  Use the Apple Movie Converter
  205.     program and choose BOTH "Make playable on non-Apple systems" and
  206.     "Make self-contained" in the Save As dialog.  The file must
  207.     also be compressed with an algorithm we support.  For example,
  208.     do not choose "Cinepak" or "Compact Video". 
  209.  
  210.   - Try changing the compression to something else, say "none" to see
  211.     if that may be the problem.
  212.  
  213.   SGI has licensed the QuickTime movie file format and three
  214.   compressors from Apple.  In IRIX releases 5.1 through 5.3, you can
  215.   display QuickTime movies compressed with the RLE or RPZA algorithms
  216.   (Apple Graphics and Apple Video) with the bundled SGI movieplayer.
  217.  
  218.   If you have IRIX 5.3, you can download the Digital Media Tools 5.5
  219.   product.  This will allow you to create and view QuickTime movies
  220.   using Cinepak compression, and it can also read QuickTime movies on
  221.   Macintosh filesystems which have not been "flattened".  See the first
  222.   question in this FAQ for information on downloading the tools.
  223.  
  224.   If you have IRIX 6.2, CinePak and Indeo3.2 decompressors are included.
  225.   The CinePak compressor requires a license which is included with SGI's
  226.   WebForce software product.
  227.   
  228.   Prior to OS release 6.2, the SGI movie tools did not support QuickTime
  229.   movies which contain an edit list; version 6.2 and beyond supports
  230.   QuickTime movies with edit lists, and with multiple image tracks.
  231.  
  232.   Typically, a QuickTime file on the Macintosh stores all of the movie
  233.   parameters and header information in the resource fork, and the
  234.   actual media (sound + video) in the data fork.  To be used on a
  235.   computer which has a conventional file system (such as the Indigo),
  236.   you must first "flatten" the movie on the Macintosh before
  237.   transferring it to the Indigo.  This is what the "Make playable on
  238.   non-Apple systems" option in the Apple Movie Converter does.
  239.  
  240.   The Apple Movie Converter is part of the QuickTime Starter Kit, a
  241.   software package sold by Apple Computer for Macintosh systems.  It is
  242.   available from retail software distributors.
  243.  
  244. ------------------------------
  245.  
  246. Subject:    -3- I cannot play a QuickTime movie created on a Silicon
  247.                 Graphics computer on my Macintosh.  How can I make it
  248.                 work?
  249. Date: Thu Feb 16 15:37:32 PST 1995
  250.  
  251.   When going from an SGI to a Mac, the file must have a creator and
  252.   file type.  This can be done in "ResEdit".
  253.  
  254.   To move a file to the Mac...
  255.  
  256.   1. Save the file in a QuickTime format.  See elsewhere in this FAQ
  257.      for more details on how to create QuickTime files.
  258.   
  259.   2. Move the file to a Mac (using the floptical, or ftp).
  260.  
  261.      NOTE:  If using ftp, make sure the mode is binary, *not* macbinary
  262.  
  263.   3. Open the Mac program "ResEdit".
  264.  
  265.   4. Select "Get File info..." from File menu.
  266.  
  267.   5. Type "MooV" into file type field, and "TVOD" into creator field.
  268.  
  269.   6. Close dialog (Choose Yes to save changes).
  270.  
  271.   7. Quit "ResEdit".
  272.  
  273.   It should just work from here.
  274.  
  275. ------------------------------
  276.  
  277. Subject:    -4- What version of QuickTime does Silicon Graphics support?
  278. Date: Thu May  2 16:26:48 PDT 1996
  279.  
  280.   Silicon Graphics does not provide support for the QuickTime
  281.   programming library, but only for the QuickTime file format.
  282.  
  283.   The definition of the QuickTime file format has not changed since its
  284.   original release.  Apple's enhancements have mostly been in the form
  285.   of performance improvements and new features to QuickTime which have
  286.   not changed the basic file format.  So, in some sense SGI supports
  287.   every version of QuickTime.  But to answer the question practically,
  288.   we do not support every features which Apple has introduced in later
  289.   releases of QuickTime, such as MIDI tracks in QuickTime files,  
  290.   or QuickTime VR.
  291.   
  292.   SGI is working very hard to enhance its QuickTime support over time.
  293.   In the Digital Media 5.5 tools software product for IRIX 5.3, SGI
  294.   provides support for reading and writing QuickTime movies with
  295.   Cinepak compression, as well as support for reading "non-flattened"
  296.   movies which contain separate resource and data forks.
  297.   
  298.   To download the Digital Media 5.5 tools, see the first question in
  299.   this FAQ.
  300.  
  301.   In IRIX 6.2, SGI also provides support for reading QuickTime files 
  302.   stored with Indeo3.2 compression, and also other features of QuickTime
  303.   which were not previously recognized.
  304.  
  305. ------------------------------
  306.  
  307. Subject:    -5- How can I create a QuickTime file on an SGI?
  308. Date: Wed Sep 22 13:01:17 CDT 1999
  309.  
  310.   The answer to this question depends upon the IRIX system
  311.   release you have:
  312.   
  313.         - If you are using IRIX 5.2 or earlier, you must obtain
  314.         quicktime_dev, SGI's QuickTime development option, or else
  315.         find or purchase a tool which supports QuickTime output.
  316.  
  317.         SGI does not provide a method to create QuickTime movie
  318.         files in the 5.2 release of the Movie Tools.  If you
  319.         obtain the Digital Media Development Option, together
  320.         with the QuickTime Development option, you can obtain a
  321.         tool which will create QuickTime files on an SGI system.
  322.   
  323.         See elsewhere in this FAQ for more information on both
  324.         the Digital Media Development Option and the QuickTime
  325.         Developer's Option.
  326.         
  327.       - If you are using IRIX 5.3 or later, you can use the
  328.           Movie Maker or Movie Convert applications to write a
  329.           QuickTime file.
  330.           
  331.         - If you use IRIX 5.3 with any of the following:
  332.             -  WebFORCE software product,
  333.               -  Desktop Special Edition 1.1,
  334.               -  the Digital Media 5.5 Tools
  335.               
  336.           or if you use IRIX 6.2 or later, you can also use the 
  337.       Movie Master/mediaconvert, dmconvert, and makemovie 
  338.       utilities to create the QuickTime file.  You can also 
  339.       record a QuickTime movie using the Capture Tool.  See 
  340.       the first question in this FAQ for information on obtaining
  341.       the Digital Media 5.5 tools, or IRIX 6.2.
  342.  
  343.     - If you use IRIX 6.2, note that the QuickTime Development
  344.       option has been incorporated into the Digital Media
  345.       Development option, and is no longer needed; additionally,
  346.       it supports the features found in Digital Media Tools
  347.       5.5. 
  348.         
  349.   There is a commercially available tool called Image Independence
  350.   which will allow creation of both SGI and QuickTime movies
  351.   under IRIX 5.2 and later.  It is a batch image converter with A
  352.   GUI and command-line versions.  It can also convert movies from
  353.   one type to another, or split movies into separate frames.  It
  354.   comes with over 20 image formats, is fast and flexible.  It lists
  355.   for $495, and it can be purchased from Elastic Reality, Inc.
  356.   http://www.elasticreality.com/.
  357.  
  358. ------------------------------
  359.  
  360. Subject:    -6- I need to play MPEG movies.  Does SGI offer MPEG
  361.                 support?
  362. Date: 4 Nov 1998 00:00:01 MST
  363.  
  364.   Again, the answer to this depends on the IRIX system release
  365.   that you have.
  366.   
  367.     - In all releases of IRIX up to and including IRIX 5.3,
  368.       the SGI movieplayer does not support MPEG movies.
  369.  
  370.       - If you use IRIX 5.3 with the Digital Media Tools 5.5
  371.         software product or IRIX 6.2, the SGI movieplayer
  372.         supports MPEG-1 movies.  
  373.       You can also create MPEG movies using the dmconvert or 
  374.       Movie Master (mediaconvert) tools.  See the first question
  375.       in this FAQ for information on downloading the Digital
  376.       Media Tools 5.5 software product from SGI.
  377.  
  378.   For free, you have several options:
  379.  
  380.   1) You can use the Berkeley mpeg_play. You can get the file
  381.   mpeg_play.Z by anonymous ftp from
  382.  
  383.       ftp://sgigate.sgi.com/pub/Mosaic/mpeg_play.Z
  384.  
  385.   2) A Motif-based MPEG player is available via these URLs:
  386.  
  387.       http://www.geom.umn.edu/software/download/mpeg_play.html
  388.       ftp://geom.umn.edu/priv/daeron/src/mpeg_play-src.tar.Z
  389.   
  390.   3) An MPEG player from Greg Ward <greg@bic.mni.mcgill.ca>, who 
  391.   writes:
  392.  
  393.   glmpeg_play is a feature-rich, GUI-poor player for MPEG-1 video
  394.   streams for SGI workstations.  It supports memory or disk buffering,
  395.   zooming by pixel doubling/tripling/ whatever, pause, single step
  396.   forward or backward, continuous play, continuous back-and-forth play,
  397.   and a few other obscure features.  It is entirely controllable 
  398.   through the keyboard, and most features are also accessible via 
  399.   pop-up menu.  No pretty buttons, though.  Playback status is
  400.   available through a rather ugly (but informative) text window.
  401.  
  402.   glmpeg_play is available from 
  403.  
  404.     ftp://ftp.bic.mni.mcgill.ca/pub/mpeg
  405.   
  406. ------------------------------
  407.  
  408. Subject:    -7- I created a movie with Capture, but now I can't edit it
  409.                 with Movie Maker or play it with Movie Player.
  410. Date: Mon Mar 25 10:04:18 PST 1996
  411.  
  412.   Check to see that you are using compatible versions of the tools.
  413.   Odds are that you created the movie with Capture (an application in
  414.   IRIX 5.1 and later), but are trying to use the tools from an IRIX
  415.   4.0.5 to view and manipulate them.
  416.  
  417.   The IRIX 5.x and 6,x versions of the movie tools can read files
  418.   created by the 4.0.5 tools, but the reverse is not true.
  419.  
  420.   Also, in order to edit a movie, be sure to check that you have write
  421.   permission to the file.
  422.  
  423. ------------------------------
  424.  
  425. Subject:    -8- How can I write a program to create, edit, convert, or
  426.                 play movies?  Where can I get a copy of the SGI Movie
  427.                 Library?
  428. Date: Thu May  2 16:33:54 PDT 1996
  429.  
  430.   The Digital Media Development Option contains the Video,
  431.   Audio, Audio File, MIDI, CD, DAT, Movie, and Compression
  432.   Libraries.  It allows you to perform tasks like these
  433.   inside your application:
  434.  
  435.   - perform audio, video, MIDI I/O on SGI machines (including
  436.     programming the IndyCam)
  437.  
  438.   - convert audio/video data between different formats
  439.     (this includes software and hardware
  440.     compression/decompression for audio and video)
  441.  
  442.   - read/write digital media file formats (SGI movie,
  443.     QuickTime, AIFF/AIFF-C sound files)
  444.  
  445.   - read/write DAT audio tapes using SGI SCSI DAT drive, read
  446.     CD audio disks using SGI SCSI CD drive.
  447.  
  448.   The part number for the Digital Media Development Option is
  449.   SC4-DMDEV-2.0.   For releases prior to IRIX 6.2, if you would 
  450.   like to develop applications which manipulate QuickTime files, 
  451.   you must also order the companion product, QuickTime 1.0 Compressor 
  452.   Library, part number SC4-QTCL-1.0.  The Digital Media Development 
  453.   Option requires IRIX 5.2 or later (both part numbers above are
  454.   for the IRIX 5.2 versions).
  455.  
  456.   In order to use the Digital Media Development Option, you
  457.   also need to have IDO 5.2.  This is the basic IRIS
  458.   developer option, including compilers, basic C library
  459.   headers, graphics libraries, etc.
  460.  
  461.   In the United States, you can order these products by
  462.   calling Silicon Graphics toll-free at 1-800-800-SGI1
  463.   (1-800-800-7441).  If you live in a country other than the
  464.   United States, contact your nearest Silicon Graphics
  465.   office, or call one of these regional telephone numbers:
  466.  
  467.   Europe        (41) 22-798.75.25     (Geneva, CH)
  468.   North Pacific        (81) 3-5420.71.10
  469.   South Pacific        (61) 2-879.95.00
  470.   Latin America        1(415) 390.46.37
  471.   Canada        1(416) 625-4747
  472.  
  473.   Starting with IRIX 5.3, the Digital Media Development
  474.   Environment has been included as a standard piece of IDO,
  475.   and you no longer need to order it separately.  However,
  476.   the QuickTime 1.0 Compressor Library remains a separate
  477.   product in IRIX 5.3.
  478.  
  479.   Starting with WebForce 1.1 (and including IRIX 6.2), the
  480.   QuickTime codecs have been moved into the CL, so the
  481.   QuickTime 1.0 Compressor Library option is no longer needed.
  482.  
  483. ------------------------------
  484.  
  485. Subject:    -9- I can't use images exported with Moviemaker in any of my
  486.                 applications.  What image format does Moviemaker use?
  487. Date: Thu May  2 16:33:54 PDT 1996
  488.  
  489.   In IRIX 5.2 and earlier, Moviemaker exports images using the
  490.   ImageVision FIT file format.  This library is supported by the
  491.   SGI ImageVision Library and its assorted tools.
  492.  
  493.   To convert FIT files to another file format, such as SGI rgb or TIFF,
  494.   use the imgcopy(1) program, part of the ImageVision Tools (imgtools)
  495.   product.  The ImageVision Tools are bundled with the basic IRIX
  496.   distribution.
  497.  
  498.   The following shell script will convert a batch of image files to SGI
  499.   format, using imgcopy:
  500.  
  501.   #----------------------- cut here ---------------------------
  502.   #!/bin/csh
  503.   #
  504.   # iv2sgi - convert a batch of imagevision-supported files to SGI
  505.   # .rgb format using imgcopy
  506.   #
  507.   # usage: iv2sgi <filenames>
  508.   #
  509.  
  510.   foreach image ($argv)
  511.       imgcopy -fSGI $image $image.rgb
  512.   end
  513.   #----------------------- cut here ---------------------------
  514.  
  515.   Moviemaker 2.1, which is available in the IRIX 5.3 release,
  516.   supports image export in SGI and TIFF, as well as FIT formats.
  517.  
  518.   NOTE: the IRIX 5.3 version of Moviemaker contains a bug which
  519.   prevents it from exporting images to TIFF format.  Exported images
  520.   will look all black or all white.  If this is important to you,
  521.   you can download the Digital Media Tools 5.5 software product,
  522.   which contains a version of Moviemaker which corrects the bug.
  523.   See the first question in this FAQ for details on downloading
  524.   the Digital Media Tools 5.5 software product.
  525.  
  526.   If you have IRIX 5.3 or later, you can also use Movie Convert to
  527.   extract image frames from movie files.  Moviemaster converts between
  528.   movies and images. 32 different image formats are currently
  529.   supported. All sgi movie formats are supported.  Moviemaster can
  530.   extract frames from a movie, build a movie from frames, or image
  531.   convert from one format to another.
  532.  
  533.   In IRIX 6.2, moviemaker allows you to choose an image file format 
  534.   to output to (TIFF, RGB, etc); choose "Collection of Images" from the
  535.   pop-up menu in the dialog box, and then choose the appropriate format
  536.   from the pop-up menu in the Image Settings dialog.
  537.  
  538. ------------------------------
  539.  
  540. Subject:   -10- Can anyone provide details on the SGI movie format?
  541. Date: Thu May  2 16:33:54 PDT 1996
  542.  
  543.  
  544.   The contents of the SGI movie file format are not documented.  To
  545.   create and manipulate SGI movie files in your own application, we
  546.   recommend that you use the SGI Movie Library, part of the Digital
  547.   Media Development environment.  This will not only save you work in
  548.   your application, but will ensure that your program remains
  549.   compatible with any revisions SGI makes to its movie file format.
  550.  
  551.   If you need to manipulate movie files for cross-platform purposes, we
  552.   recommend that you obtain the QuickTime Developer's Option to create
  553.   QuickTime movies which can be used cross-platform.  Additionally,
  554.   if you have the WebFORCE software product, or Digital Media Tools 5.5
  555.   software product for IRIX 5.3, you can create MPEG movies which can
  556.   be used cross-platform.
  557.  
  558.   See elsewhere in this FAQ for more information on both the Digital
  559.   Media Development Environment and the QuickTime Developer's Option.
  560.  
  561. ------------------------------
  562.  
  563. Subject:   -11- Can anyone provide details on the QuickTime movie
  564.                 format?
  565. Date: 20 May 1994 00:00:01 EST
  566.  
  567.   For more details on the Apple implementation of QuickTime and its
  568.   file format, see "Inside Macintosh:  QuickTime" (ISBN 0-201-62201-7)
  569.   and "Inside Macintosh:  QuickTime Components", both by Apple Computer
  570.   and published by Addison-Wesley.  The former book contains a detailed
  571.   description of the QuickTime file format. 
  572.  
  573. ------------------------------
  574.  
  575. Subject:   -12- How can I convert from SGI movie format to MPEG?
  576. Date: Fri May  3 11:12:41 PDT 1996
  577.  
  578.   - If you are using IRIX 5.3 with the Digital Media Tools 5.5
  579.     software product, or IRIX 6.2, you can use the Movie Master
  580.     or dmconvert utilities to create MPEG movies.  See the first
  581.     question in this FAQ for information on downloading the
  582.     Digital Media Tools 5.5 software product from SGI.
  583.  
  584.   - If you are using IRIX 5.3 or earlier, SGI provides no bundled
  585.     tools to convert SGI movies to MPEG.
  586.  
  587.     There is a publically available program which can convert SGI
  588.     movie files to MPEG.  It was developed by Andreas Paul
  589.     <paula@informatik.tu-muenchen.de>.  It can be obtained from:
  590.  
  591.     ftp://ftp.rus.uni-stuttgart.de/pub/systems/sgi/animation/mv2mpeg_final.tar.gz
  592.  
  593.     It is for IRIX 5.x systems, and supports all versions of the SGI
  594.     movie file format.
  595.  
  596.     If you are using IRIX 4.0.x, then get mov2mpeg from
  597.  
  598.     ftp://ftp.gvu.gatech.edu/pub/people/kooper/mov2mpeg.tar.gz
  599.  
  600.     Finally, another way to convert to MPEG is to export all of
  601.     the images and audio track from the SGI movie file by using
  602.     moviemaker or makemovie,  and feed the result (a sequence of
  603.     still frames) into one of the public domain MPEG encoders
  604.     available on the net.
  605.     
  606.   There is yet another freely available tool, mv2mpeg, for creating
  607.   MPEG files.  Here is a quote from its README file:
  608.   
  609.     mv2mpeg is a tool to convert a SGI-movie-file into a mpeg-movie.
  610.  
  611.     It consists of a shell-script ('mv2mpeg') and two binaries:
  612.  
  613.             mpeg_encode
  614.             mv2frames
  615.  
  616.     mpeg_encode has been compiled with the '-mips2' switch, so if
  617.     you are using a R3000 machine get the mpeg_encode package and
  618.     compile it yourself. (shouldn't be much of a problem)
  619.     It can be found at:
  620.        qiclab.scn.rain.com:/pub/graphics/mpeg_encode-1.2.tar.Z
  621.        liasun3.epfl.ch:/pub/graphics/mpeg/mpeg_encode-1.2.tar.gz
  622.     If you don't find it there use 'archie' to locate the nearest
  623.     site that has it.
  624.  
  625.   Regardless of IRIX software release, there is at least one
  626.   commercial product which can create MPEG files, called MpegExpert:
  627.  
  628.     MpegExpert is the highest performance and most featured MPEG
  629.     playback solution for SGI platforms. It plays compressed MPEG-1
  630.     audio, video or system level multiplexed audio+video bitstreams in
  631.     realtime with stereo CD quality sound. With the integrated
  632.     CAPTURE_TOOL it lets the user cut and save pictures or sequences
  633.     from an MPEG source, allowing a simple form of editing. And with
  634.     the CD_TOOL user can play Video_CD and CD-I digital movies from a
  635.     CDROM player. Its specially designed data input architecture
  636.     enables smooth MPEG playback from video servers over networks.
  637.     MpegExpert can be integrated into other applications or it can be
  638.     used interactively through its motif based user interface.
  639.     MpegExpert software, documentation, and demo version are available
  640.     on line via anonymous ftp from ftp.portal.com:/pub/apvision or
  641.     ftp.netcom.com:/pub/ap/apvision.  Any further inquiry if required,
  642.     can be sent to apvision@netcom.com
  643.  
  644.   For more information on MPEG, and a list of places where you can
  645.   obtain MPEG encoder software, consult the MPEG Frequently Asked
  646.   Questions document. You can FTP it from
  647.  
  648.       ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/mpegfa11.zip
  649.       ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/mpegfa20.zip
  650.       ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/mpegfa30.zip
  651.       ftp://ftp.cs.tu-berlin.de/pub/msdos/dos/graphics/mpegfa31.zip
  652.  
  653.   These documents are versions 1.1, 2.0, 3.0, and 3.1 of the MPEG FAQ
  654.   document.
  655.  
  656. ------------------------------
  657.  
  658. Subject:   -13- How can I convert from Microsoft AVI movie format to SGI
  659.                 movie format?
  660. Date: Mon Mar 25 10:04:18 PST 1996
  661.  
  662.   Starting with IRIX release 6.2, we can read Microsoft AVI files
  663.   compressed with CinePak or Indeo3.2. (We do not have the rights
  664.   to CRAM or ULTI, which are Microsoft proprietary algorithms.) All
  665.   of our tools support reading the supported AVI files, and writing
  666.   them out to other formats.
  667.  
  668. ------------------------------
  669.  
  670. Subject:   -14- Is there a way to bring up a movie (using movieplayer)
  671.                 within Showcase using a button click...and having it
  672.                 place itself automatically in a certain location and
  673.                 start?
  674. Date: 20 May 1994 00:00:01 EST
  675.  
  676.   Not that I know of.  When we want to play a movie, we usually
  677.   hyperscript the object to run a script, and in the script we place
  678.   the movie where we want to.  Here is an example of the script.  Call
  679.   it with the movie name as an argument.
  680.  
  681.   /usr/sbin/movieplayer -fNv -S$X1,$Y1,360,243 -l 1 -z $ZOOM $1
  682.  
  683.   Define your zoom factor ($ZOOM) and position ( X1 Y1 ) in front of
  684.   this.
  685.  
  686. ------------------------------
  687.  
  688. Subject:   -15- I am using Mosaic.  When I try to view a movie,
  689.                 movieplayer starts, but then shows a message: no movie.
  690.                 How can I make it work?
  691. Date: 20 May 1994 00:00:01 EST
  692.  
  693.   Check the following:
  694.  
  695.   - Is your system running IRIX 4.0.5?  The movieplayer in IRIX 4.0.5
  696.     does not support QuickTime movies.  You will need to upgrade to
  697.     IRIX 5.2 in order to receive QuickTime support in movieplayer.
  698.  
  699.   - Check to see that the movie file was copied over completely by
  700.     Mosaic.  Sometimes Mosaic will fail to transfer the file completely
  701.     if the network load is very high.
  702.     
  703.   - Finally, the following information submitted by Dave Babcock
  704.     (daveb@merlin.mti.sgi.com) may prove helpful:
  705.  
  706.   xmosaic includes the capability to automatically play SGI movie files
  707.   referenced by a html document.  Unfortunately, there is a "bug" which
  708.   keeps it from actually working.
  709.  
  710.   Fortunately, there is an easy fix.  Just edit the
  711.   /usr/local/lib/mosaic/mailcap file and change the following line:
  712.  
  713.     video/x-sgi-movie; movieplayer -l 1 %s; compose=moviemaker %s; \
  714.  
  715.   to be:
  716.  
  717.     video/x-sgi-movie; movieplayer -f -l 1 %s; compose=moviemaker %s; \
  718.  
  719.   that is just add the -f.
  720.  
  721.   For those who care, the problem is: mosaic copies the movie file to a
  722.   local temp file; spawns movieplayer passing it the name of the temp
  723.   file; when it sees movieplayer "terminate" mosaic nicely deletes the
  724.   temp file.  But by default movieplayer runs in background mode which
  725.   mosaic interprets as it being done and deletes the temp file just
  726.   before the background task trys to open the temp file.  The symptom
  727.   is that you get the error message:
  728.  
  729.     Could not open: /usr/tmp/gaaa000-0.mv: No such file or directory
  730.     could not open movie file
  731.  
  732.   and nothing happens.
  733.  
  734. ------------------------------
  735.  
  736. Subject:   -16- I have the Galileo (or Indy Video/Indigo2 Video) option,
  737.                 but I can't get Capture to use it.  When I run it, the
  738.                 IndyCam shows up.  What do I do?
  739. Date: Fri May  3 10:23:53 PDT 1996
  740.  
  741.   When run on a system with more than one video device (for example,
  742.   an Indy with both Indy Video and the built-in IndyCam support),
  743.   Capture will use the IndyCam by default.
  744.  
  745.   To force Capture to run using Galileo or Indy Video, enter the
  746.   following command line at a shell prompt:
  747.  
  748.   capture -ev1
  749.  
  750.   Make sure that you are using Capture with IRIX 5.2 or later.
  751.   
  752.   If you are using IRIX 6.2, there are two new icons in the Icon Book
  753.   called capture_cosmo and capture_galileo.  They invoke Capture such
  754.   that it is recording from the Cosmo Compression board, or from
  755.   Galileo Video (or Indy/Indigo2 Video).
  756.  
  757. ------------------------------
  758.  
  759. Subject:   -17- I cannot get the right video to show in the Capture
  760.                 tool! I get a video source other than the one I want or
  761.                 the screen is black.  What do I do?
  762. Date: Tue Nov 15 15:39:30 PST 1994
  763.  
  764.   Capture does not allow you to choose a signal source.  It uses the
  765.   system video settings.
  766.  
  767.   To change the system settings for signal source (and hence the signal
  768.   source for Capture), do the following:
  769.  
  770.   Run vcp or videopanel.
  771.       
  772.   Choose the device (VINO or Galileo/Indy Video) you are using.
  773.   VINO is for the Indy's built-in video (both the IndyCam and
  774.   its analog video input port).  Galileo/Indy Video is available
  775.   only if you have those optional hardware products installed.
  776.     
  777.   Then choose the input.  For VINO, this control is labeled
  778.   "Default In".  For Galileo/Indy Video, this control is labeled
  779.   "Input Source".  You may need to close other video apps
  780.   (including Capture) to do this.
  781.   
  782.   Don't forget to make sure that your camera or VCR is plugged
  783.   in correctly, and that your camera can see video.  Look into
  784.   the camera's viewfinder to make sure it is working.
  785.     
  786.   Choose "Live Video Input" off the Utilities menu to check.
  787.   The video you see here is what Capture will use.  Close this
  788.   window when you are satisfied.
  789.     
  790.   If you closed Capture, start it again (don't forget -ev1 on
  791.   the command line if you are using Galileo/Indy Video; see
  792.   above).  You should get the video you want.
  793.  
  794. ------------------------------
  795.  
  796. Subject:   -18- Why does Capture tell me to "Please Stand By", instead
  797.                 of capturing video?
  798. Date: Tue Nov 15 15:39:30 PST 1994
  799.  
  800.   Capture presents the "Please Stand By" message in two circumstances:
  801.  
  802.     1) It is processing video that you just captured.
  803.     2) Your system has video support, but Capture for some
  804.        reason cannot use it.
  805.  
  806.   Symptom 1) is normal operation for the program, and is nothing
  807.   you should worry about.
  808.  
  809.   Symptom 2) can happen for several reasons.  Check the following:
  810.  
  811.     - Make sure to close down all other applications which use
  812.       video.
  813.  
  814.     - If you are using the IndyCam, make sure it is plugged in
  815.       to the back of the machine.  Perhaps the connector may have
  816.       worked itself loose.
  817.  
  818.     - If you still get the "Please Stand By" message, reboot the
  819.       system.  It might be possible that the system video services
  820.       had become wedged for some reason; a reboot fixes this
  821.       problem.
  822.  
  823.     - Make sure that you have the signal source set correctly,
  824.       and that video shows up onscreen from the Video Control
  825.       Panel.  See above question, "I cannot get the right
  826.       video to show in the Capture tool!" for details on how
  827.       to do this.
  828.  
  829. ------------------------------
  830.  
  831. Subject:   -19- Capture just grabbed a file for me, but now I can't find
  832.                 it.  Where did Capture hide it?
  833. Date: Thu Nov 17 09:08:40 PST 1994
  834.  
  835.   Capture always places its file in the directory it was run
  836.   from.  If you ran it from the Indigo Magic desktop, odds are
  837.   that it placed the file in your home directory.
  838.  
  839.   To find out the name of the file, look in the title bar, or
  840.   choose "Settings" from the "Actions" menu and look in the
  841.   first typein blank.
  842.  
  843. ------------------------------
  844.  
  845. Subject:   -20- Under IRIX 5.3, my system has a video board and/or
  846.                 IndyCam, but Capture won't let me use it.  It just greys
  847.                 out the video options on its menu.  How can I make it
  848.                 work?
  849. Date: Thu Nov 17 09:08:40 PST 1994
  850.  
  851.   Odds are that you do not have video support installed on your system.
  852.  
  853.   Here is what you need to have installed, at a bare minimum:
  854.  
  855.   I  dmedia_eoe.sw.common 11/07/94  Common Execution Environment Components
  856.   I  dmedia_eoe.sw.compression  11/07/94  Compression Execution Environment
  857.   I  dmedia_eoe.sw.video  11/07/94  Video Execution Environment
  858.  
  859.   For IndyCam users, you also need the following:
  860.  
  861.   I  vino.sw.eoe          11/07/94  Indy Video-In Execution Software
  862.  
  863.   For Galileo/Indy Video users, you also need the following:
  864.  
  865.   I  galileo.sw.eoe       11/07/94  Galileo Video Execution Software
  866.  
  867.   For users with the Cosmo Compress option, you also need these
  868.   systems installed:
  869.  
  870.   I  cosmo.sw.eoe         11/07/94  Cosmo Compress Execution Software
  871.   I  dmedia_eoe.sw.utilities  11/07/94  Media Record, Playback, Convert Commands
  872.  
  873. ------------------------------
  874.  
  875. Subject:   -21- I created a movie with audio using makemovie, but the
  876.                 soundtrack plays back really garbled and choppy.  What
  877.                 do I do?
  878. Date: Thu Nov 17 09:08:40 PST 1994
  879.  
  880.   You created a movie with image and audio tracks of unequal length.
  881.   This probably happened because you chose a frame rate for the
  882.   movie which caused the image track to not match the length of the
  883.   audio track.
  884.  
  885.   There are a few solutions for this problem.  The easiest is to
  886.   choose a frame rate which makes the image track match the audio
  887.   track in length, and then use makemovie to create a new movie file
  888.   with the correct frame rate.  Another way is to pad the shorter
  889.   track (image or audio) out with additional content to match the
  890.   longer one.
  891.  
  892.   In IRIX 5.3, Moviemaker will automatically detect movies like these
  893.   and offer to correct them for you.  You can choose either of the
  894.   above methods of correction.  If you choose to pad out the shorter
  895.   track, Moviemaker adds blank material, which you can later edit.
  896.  
  897.   In IRIX 6.2, the restriction that image tracks and audio tracks must
  898.   be the same length has been removed, so this should no longer be a 
  899.   problem.
  900.  
  901. ------------------------------
  902.  
  903. Subject:   -22- Does anyone know the maximum size a movie file that
  904.                 MovieMaker or MoviePlayer can handle?  Is it limited by
  905.                 free memory, or will it play from the hard drive?
  906. Date: Mon Mar 25 10:04:18 PST 1996
  907.  
  908.   Movieplayer plays movies from the hard drive.  In general,
  909.   Moviemaker edits movies directly on disk, although in 6.2, 
  910.   some types of edits are made in memory (to be written to
  911.   disk later). 
  912.  
  913.   It is entirely possible to write an application which plays
  914.   movies entirely from memory (see below for details), but
  915.   Movieplayer does not support that.
  916.  
  917.   We can read a movie up to 2 gigabytes long off the hard drive.
  918.   Please note, however, that some file formats may impose smaller 
  919.   maximum file sizes.
  920.  
  921. ------------------------------
  922.  
  923. Subject:   -23- How do I write a program to access the pixels of a video
  924.                 frame in a movie file for image processing purposes?
  925. Date: Mon Mar 25 10:04:18 PST 1996
  926.  
  927.   Basic overview:
  928.  
  929.   You need to write the program using the Movie Library.
  930.   Open the file using mvOpenFile(3mv), get a handle to the
  931.   image track using mvFindTrackByMedium(3mv), then read the
  932.   individual image frames using mvReadFrames(3mv).
  933.  
  934.   Details on the format of image data:
  935.  
  936.   The following libmovie calls return information to describe
  937.   the format of the data returned by mvReadFrames():
  938.  
  939.   int           mvGetImageWidth      ( MVid imageTrack );
  940.   int           mvGetImageHeight     ( MVid imageTrack );
  941.   double        mvGetImageRate       ( MVid imageTrack );
  942.   const char*   mvGetImageCompression( MVid imageTrack );
  943.   DMinterlacing mvGetImageInterlacing( MVid imageTrack );
  944.   DMpacking     mvGetImagePacking    ( MVid imageTrack );
  945.   DMorientation mvGetImageOrientation( MVid imageTrack );
  946.  
  947.   For interlacing, packing and orientation, the types of
  948.   formats can be found in <dm_image.h>.
  949.  
  950.   Once you have the description of format for the data in the
  951.   image track, you can treat the buffer of untyped data
  952.   returned by mvReadFrames() as an array of pixels.  If you
  953.   need the data in a different format for your image
  954.   processing or file I/O, you will need to perform the
  955.   conversion yourself.
  956.  
  957.   For writing movies, the process works similarly.  Create a
  958.   DMparams structure that describes the format of the data
  959.   you will be writing, and pass that to mvAddTrack().  This
  960.   creates an image track with the data format you want.  Then
  961.   pass pixel data in that format to mvInsertFrames().
  962.  
  963.   Note that the Movie Library uses the MVid data type to
  964.   represent both movies, and tracks within the movies.  So
  965.   when you write a program to read or write image frames,
  966.   you will have two MVid variables - one for the movie as
  967.   a whole, and one for the image track embedded within the
  968.   movie.
  969.  
  970.   Check the Digital Media Programmer's Guide and the Movie
  971.   Library Manual pages for more details, as well as detailed
  972.   instructions on how to use these calls.
  973.  
  974.   As of IRIX 6.2, since movies with multiple image tracks are
  975.   supported, we recommend the use of mvRenderMovieToImageBuffer
  976.   instead of mvReadFrames. Please see the man page for 
  977.   this function.
  978.  
  979. ------------------------------
  980.  
  981. Subject:   -24- How do I write a program which can write individual
  982.                 frames from a movie file out to a still image file?
  983. Date: Wed Nov 16 13:04:20 PST 1994
  984.  
  985.   Once you have managed to read individual frames from a
  986.   movie file (see above), you have several options for
  987.   writing the still frames to an image file.
  988.  
  989.   There is an image library, libimage.a, which supports
  990.   reading and writing the Silicon Graphics RGB file format.
  991.   Sample programs for using this library appear in the
  992.   4Dgifts subsystem.
  993.  
  994.   Also, you can purchase the optional SGI ImageVision
  995.   Library.  ImageVision supports output to several image file
  996.   formats, including SGI, TIFF, JFIF, and its own proprietary
  997.   FIT format.  C++ developers can add their own file
  998.   formats.  ImageVision also provides several powerful
  999.   operators for converting, procesing, and displaying image
  1000.   data, and also provides hardware acceleration on SGI
  1001.   platforms which support it.  Contact your SGI sales office
  1002.   for more details (see above for details about where to
  1003.   call).
  1004.  
  1005.   Finally, make sure you've installed the Movie Library
  1006.   example programs.  They contain a program called
  1007.   editmovie.c which writes still frames to image files, using
  1008.   ImageVision to write the data to disk.
  1009.  
  1010. ------------------------------
  1011.  
  1012. Subject:   -25- I'm using the Movie Library to create QuickTime movies
  1013.                 using Apple's Video compression.  When are default key-
  1014.                 frames placed in a QuickTime movie made with the SGI
  1015.                 movie library?
  1016. Date: Mon Mar 25 10:04:18 PST 1996
  1017.  
  1018.   For releases prior to Irix 6.2, key frames are placed by 
  1019.   default every fifth frame.  
  1020.  
  1021.   Beginning with WebForce1.1 and IRIX 6.2, it is possible to
  1022.   control the keyframe distance.
  1023.  
  1024.   To do so in a program, set the parameter 
  1025.   DM_IMAGE_KEYFRAME_DISTANCE parameter when you create an 
  1026.   image track.
  1027.  
  1028.   The tools (dmconvert/makemovie/movieconvert) also have 
  1029.   options to allow you to control keyframe rate.
  1030.  
  1031. ------------------------------
  1032.  
  1033. Subject:   -26- The Movie Library has calls to play a movie in a file,
  1034.                 memory or a file descriptor.  But all of them seem to
  1035.                 assume that the complete movie is available locally.
  1036.                 How can I play a movie all of which is not available
  1037.                 locally?
  1038. Date: Wed Nov 16 13:04:20 PST 1994
  1039.  
  1040.   It's really not possible at the moment.  The Movie Library
  1041.   needs access to both the header/indexing information stored
  1042.   in the movie file, as well as the media data itself in
  1043.   order to play the movie.
  1044.  
  1045.   It may be possible to do this by passing a socket
  1046.   descriptor instead of a file descriptor.  There definitely
  1047.   is a problem of seeking to a particular frame.  If the whole
  1048.   movie is streamed in with no mvSetCurrentFrame() kind of
  1049.   calls, it may work.
  1050.  
  1051. ------------------------------
  1052.  
  1053. Subject:   -27- When programming with the Movie Library, can we insert
  1054.                 and delete frames from a playing movie?
  1055. Date: Mon Mar 25 10:04:18 PST 1996
  1056.  
  1057.   For versions of IRIX prior to 6.2, absolutely not.
  1058.  
  1059.   As of 6.2, editing a movie is supported while a movie is
  1060.   bound for playback, and the playback instance will update
  1061.   as the movie is edited, but it is NOT possible to edit a
  1062.   movie that is currently playing--you must call mvStop first.
  1063.  
  1064. ------------------------------
  1065.  
  1066. Subject:   -28- When writing frames to a movie with the Movie Library,
  1067.                 if we fix the image track parameters, does the byte size
  1068.                 of the frame remain constant across frames?
  1069. Date: Mon Mar 25 10:04:18 PST 1996
  1070.  
  1071.   In general, no.  The compression codecs return variable size byte
  1072.   counts for the frames they compress. 
  1073.  
  1074.   However, in later versions of the movie library (eg, IRIX 6.2),
  1075.   some codecs support generation of a constant bitrate. Use the
  1076.   parameter DM_IMAGE_BITRATE when creating an image track. (Note
  1077.   that this is not supported by all codecs; CinePak is the only
  1078.   one currently supporting this feature.)
  1079.  
  1080. ------------------------------
  1081.  
  1082. Subject:   -29- How do I write a program to play a movie entirely from
  1083.                 memory?
  1084. Date: Wed Nov 16 13:04:20 PST 1994
  1085.  
  1086.   Typically, you open the movie file using the Unix open() system
  1087.   call.  You then allocate a memory buffer as large as you need, and
  1088.   use the read() system call to read the entire movie into the memory
  1089.   buffer.  Then pass the pointer to this memory region to mvOpenMem()
  1090.   and you're set.
  1091.  
  1092.   If you want to get more fancy, you can use the mpin() system call
  1093.   to attempt to lock your memory buffer in physical memory, so
  1094.   it does not get swapped out.  Or, you can use the mmap() system
  1095.   call to associate your disk file with a memory pointer, and pass
  1096.   the memory-mapped region to mvOpenMem().  This has certain advantages
  1097.   which are outside the scope of this FAQ; consult the manual pages
  1098.   and a good book on Unix system-call level programming for details.
  1099.  
  1100. ------------------------------
  1101.  
  1102. Subject:   -30- How do I capture movies from live video within my
  1103.                 application?
  1104. Date: Wed Nov 16 13:04:20 PST 1994
  1105.  
  1106.   In IRIX 5.2, your only choice is to write your own code using
  1107.   the Audio, Video, and Movie Libraries to capture live video
  1108.   and audio and save it to disk - not an easy task.
  1109.  
  1110.   In IRIX 5.3, your program can use the Capture Tool to do this
  1111.   work.  You can invoke the Capture tool, passing it a file name
  1112.   and a set of options telling it what media to capture and what
  1113.   compression to use.  When the user exits the Capture Tool, you
  1114.   simply open the movie file it recorded for you.  Check the
  1115.   5.3 manual page for Capture for more details.
  1116.  
  1117. ------------------------------
  1118.  
  1119. Subject:   -31- How do I write a program to read and write compressed
  1120.                 data to a movie file?
  1121. Date: Wed Nov 16 13:04:20 PST 1994
  1122.  
  1123.   Check out the manual pages for the mvGetCompressedImageSize(),
  1124.   mvReadCompressedImage() and mvInsertCompressedImage() calls.
  1125.   They should do what you need.
  1126.  
  1127. ------------------------------
  1128.  
  1129. Subject:   -32- I want to write a program which creates a JPEG-
  1130.                 compressed movie file, but I need to control the
  1131.                 compression quality.  How do I do this with the Movie
  1132.                 Library?
  1133. Date: Fri May  3 11:05:05 PDT 1996
  1134.  
  1135.   As of IRIX 6.2, there are additional parameters that you can pass
  1136.   in to mvAddTrack to control the compression quality: 
  1137.   DM_IMAGE_QUALITY_SPATIAL, DM_IMAGE_QUALITY_TEMPORAL, DM_IMAGE_BITRATE.
  1138.   Note that not all codecs support all of these parameters.
  1139.  
  1140.   JPEG in particular, supports only the SPATIAL setting.
  1141.  
  1142.   (Certain Apple codecs support both TEMPORAL and SPATIAL quality 
  1143.   settings; CinePak also supports the BITRATE setting.)
  1144.  
  1145.   Additionally, you can do the compression yourself (as could be
  1146.   done prior to IRIX 6.2): create a movie file with all the appropriate
  1147.   image track parameters (see above),  But instead of simply writing
  1148.   frames to the movie and letting the Movie Library automatically
  1149.   compress the frames for you, you handle the compression yourself.
  1150.   
  1151.   To do the compression yourself, you open a Compression Library JPEG
  1152.   compressor, set the quality factor, and use it to compress each
  1153.   frame.  Then you write the *compressed* data to the movie file
  1154.   (see above for instructions on how to do this).
  1155.  
  1156.   The tools (dmconvert/makemovie/movieconvert) support these settings
  1157.   in Digital Media Tools 5.5 (see the first question in this FAQ) and
  1158.   IRIX 6.2.
  1159.  
  1160. ------------------------------
  1161.  
  1162. Subject:   -33- I want to write a program which can create a JPEG-
  1163.                 compressed movie file compatible with the Cosmo Compress
  1164.                 board, SGI's hardware JPEG accelerator.  How do I do
  1165.                 this?
  1166. Date: Fri May  3 10:23:53 PDT 1996
  1167.  
  1168.   Movies which are compatible with the Cosmo Compress board
  1169.   have the following characteristics:
  1170.  
  1171.     - Image compression must be JPEG.
  1172.     - Width must be video (NTSC or PAL) sized,
  1173.       and an even multiple of 8.
  1174.     - Height must be video sized, and an even multiple of 8.
  1175.     - Image frames must be interlaced (odd interlacing for NTSC,
  1176.       even interlacing for PAL).
  1177.     - Image frames must be oriented top to bottom.
  1178.     - Image packing must be RGB.
  1179.     - Image track frame rate must be 29.97 for NTSC,
  1180.       25.0 for PAL.
  1181.  
  1182.   Here is a piece of code which will check an existing image
  1183.   track for you.  C programmers will hopefully forgive the use
  1184.   of C++ style comments:
  1185.  
  1186.  
  1187.   ///////////////
  1188.   //
  1189.   // Check to see if the video track is one of the subset of
  1190.   // JPEG-encoded tracks that the cosmo board can play.
  1191.   //
  1192.   ///////////////
  1193.  
  1194.   static DMboolean isCosmoCompatible( MVid videotrack )
  1195.   {
  1196.       //
  1197.       // must be JPEG.
  1198.       //
  1199.       if ( mvGetCompression(videotrack) != IMAGE_COMP_JPEG ) {
  1200.           return DM_FALSE;
  1201.       }
  1202.  
  1203.       //
  1204.       // width must be video sized, even multiple of 8.
  1205.       //
  1206.       int width = mvGetImageWidth(videotrack);
  1207.       if ( width < 16 || width > 768 || width % 8 ) {
  1208.           return DM_FALSE;
  1209.       }
  1210.  
  1211.       //
  1212.       // height must be video sized, even multiple of 8.
  1213.       //
  1214.       int height = mvGetImageHeight(videotrack);
  1215.       if ( height < 16 || height > 2*296 || height % 8 ) {
  1216.           return DM_FALSE;
  1217.       }
  1218.  
  1219.       //
  1220.       // image frames must be interlaced.
  1221.       //
  1222.       if ( mvGetImageInterlacing(videotrack) == DM_IMAGE_NONINTERLACED) {
  1223.           return DM_FALSE;
  1224.       }
  1225.  
  1226.       //
  1227.       // image frames must be oriented top to bottom.
  1228.       //
  1229.       if ( mvGetImageOrientation(videotrack) != DM_TOP_TO_BOTTOM ) {
  1230.       return DM_FALSE;
  1231.       }
  1232.  
  1233.       //
  1234.       // image packing must be RGB.
  1235.       //
  1236.       if ( mvGetImagePacking(videotrack) != DM_PACKING_RGB ) {
  1237.           return DM_FALSE;
  1238.       }
  1239.  
  1240.       //
  1241.       // we've run the gauntlet.  dmplay can play this movie.
  1242.       //
  1243.       return DM_TRUE;
  1244.   }
  1245.  
  1246. ------------------------------
  1247.  
  1248. Subject:   -34- I simply want to create a JPEG-compressed movie which is
  1249.                 compatible with the Cosmo Compress board.  I don't want
  1250.                 to write my own program.  How do I do this?
  1251. Date: Thu May  2 16:47:44 PDT 1996
  1252.  
  1253.   In IRIX 5.3, there are three ways to do this:
  1254.  
  1255.   1) Use the dmrecord utility to record live video from the Galileo
  1256.   or Indy Video options.
  1257.  
  1258.   2) Use the Capture tool to record live video from the Galileo
  1259.   or Indy Video options.
  1260.  
  1261.   3) Use the makemovie utility to generate a cosmo-compatible movie
  1262.   from a collection of still images.  Here is an excerpt from the
  1263.   manual page:
  1264.  
  1265.     To make an odd interlaced, 640x480, JPEG compressed movie with
  1266.     top-to- bottom orientation (of the sort that can be played back on
  1267.     the Cosmo compression board) from image files img1.rgb, img2.rgb,
  1268.     and img3.rgb:
  1269.  
  1270.     makemovie -o movie3.mv -c jpeg -s 640,480 -i odd -t \
  1271.          img1.rgb img2.rgb img3.rgb
  1272.  
  1273.   In IRIX 6.2, you should use the dmconvert utility to accomplish this
  1274.   task.  (makemovie has been retained as a compatibility layer atop
  1275.   dmconvert).  See the manual page for dmconvert.
  1276.  
  1277. ------------------------------
  1278.  
  1279. Subject:   -35- I want to capture a still image from video using a shell
  1280.                 script. The Capture tool doesn't seem to be appropriate
  1281.                 because it waits for the user to click the mouse button.
  1282.                 How can I accomplish this?
  1283. Date: Thu May  2 16:47:44 PDT 1996
  1284.  
  1285.   Check out the vidtomem program.  It will do just what you want.
  1286.  
  1287. ------------------------------
  1288.  
  1289. End of sgi/faq/movie Digest
  1290. ******************************
  1291. -- 
  1292. The SGI FAQ group <sgi-faq@viz.tamu.edu>   http://www-viz.tamu.edu/~sgi-faq/
  1293. Finger us for info on the SGI FAQs, or look in ftp://viz.tamu.edu/pub/sgi/.
  1294.