home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 …ember: Reference Library / Apple Developer Reference Library (December 1999) (Disk 1).iso / pc / what's new / sample code / quicktime / qteffects explode / qteffects.h < prev    next >
Encoding:
Text File  |  1999-10-19  |  2.4 KB  |  61 lines

  1. /*
  2.     File:        QTEffects.h
  3.     
  4.     Contains:    Code to generate a QuickTime movie with a QuickTime video effect in it.
  5.     
  6.     Written by:    Scott Kuechle
  7.                 (based heavily on QuickTime SDK QTShowEffect sample code by Tim Monroe)
  8.  
  9.     Copyright:    © 1999 by Apple Computer, Inc. All rights reserved
  10.     
  11.     Change History (most recent first)
  12.     
  13.         <1>        9/25/99        srk        first file
  14.         <2>        10/19/99    srk        changed cross fade effect to explode effect
  15.  
  16.  
  17. */
  18.  
  19. Movie                             QTEffects_CreateEffectsMovie();
  20.  
  21. static void                     QTEffects_CreateTwoTrackMovie( Movie *theMovie,
  22.                                                                 short    *resRefNum,
  23.                                                                 FSSpec    *movieFSSpec,
  24.                                                                 Track    *videoTrack1,
  25.                                                                 Track    *videoTrack2);
  26. static OSErr                     QTEffects_GetPictResourceAsGWorld (short theResID,
  27.                                                                     short theWidth,
  28.                                                                     short theHeight,
  29.                                                                     short theDepth,
  30.                                                                     GWorldPtr *theGW);
  31. static OSErr                     QTEffects_AddVideoTrackFromGWorld (Movie *theMovie,
  32.                                                                     GWorldPtr theGW,
  33.                                                                     Track *theSourceTrack,
  34.                                                                     long theStartTime,
  35.                                                                     short theWidth,
  36.                                                                     short theHeight);
  37. static void                     QTEffects_SetupEffectsDescription(OSType    theEffectType,
  38.                                                                 ImageDescriptionHandle    *mySampleDesc,
  39.                                                                 QTAtomContainer         *theEffectDesc);
  40. static void                     QTEffects_CreateEffectsTrackAndMedia(Movie                     myMovie, 
  41.                                                                     ImageDescriptionHandle    mySampleDesc,
  42.                                                                     QTAtomContainer         theEffectDesc,
  43.                                                                     Track *myTrack,
  44.                                                                     Media *myMedia);
  45. static void                     QTEffects_CreateInputMapAndAddTrackReferences(Track effectsTrack,
  46.                                                                             Media    effectsTrackMedia,
  47.                                                                             Track     sourceTrack1,
  48.                                                                             Track     sourceTrack2);                                            
  49. static void                        QTEffects_CreateEffectDescription (OSType            theEffectName,
  50.                                                                   OSType            theSourceName1,
  51.                                                                   OSType            theSourceName2,
  52.                                                                   QTAtomContainer    *theEffectDesc);
  53.  
  54. static void                     QTEffects_CreateEffectParameterForExplode(QTAtomContainer        myEffectDesc);
  55. static ImageDescriptionHandle     QTEffects_MakeSampleDescription (OSType theEffectType,
  56.                                                                     short theWidth,
  57.                                                                     short theHeight);
  58. static OSErr                     QTEffects_AddTrackReferenceToInputMap (QTAtomContainer theInputMap,
  59.                                                                         Track theTrack,
  60.                                                                         Track theSrcTrack,
  61.                                                                         OSType theSrcName);