Special FontsTypes of NotesDevelopment EnvironmentIntroduction to QuickTimeQuickTime Concepts Movies and Media Data Structures
ComponentsImage CompressionTimeThe QuickTime Architecture$Figure 1-1 QuickTime playing a movie
The Movie ToolboxThe Image Compression ManagerThe Component ManagerQuickTime Components
Using QuickTimePlaying Movies:Figure 1-2 A QuickTime movie with Apple’s movie controller?Figure 1-3 A QuickTime movie with an active selection rectangle
Creating and Editing Movies-Figure 1-4
Capturing and playing back movies
Movie-Editing ApplicationsTFigure 1-5 Apple’s movie controller with a portion of the movie selected for editing
Movie-Creating ApplicationsFigure 1-6 A monitor windowFigure 1-7 Compression settings
Movie ToolboxIntroduction to MoviesTime and the Movie ToolboxTime Coordinate Systems"Table 2-1 Common movie time scalesFigure 2-1 Time scales
Time Bases3Figure 2-2 A time coordinate system and a time baseMovies+Figure 2-3 A movie’s time coordinate system,Figure 2-4 A movie containing several tracks/Figure 2-5 A movie, its preview, and its posterTracksFigure 2-6 A track in a movie Figure 2-7 A track and its mediaMedia StructuresFigure 2-8 A media and its dataAbout MoviesMovie Characteristics Figure 2-9 Movie characteristicsTrack Characteristics!Figure 2-10 Track characteristicsMedia Characteristics!Figure 2-11 Media characteristicsSpatial Properties8Figure 2-12 Spatial processing of a movie and its tracksFigure 2-13 A track rectangle$Figure 2-14 Clipping a track’s image>Figure 2-15 A track transformed into a movie coordinate system$Figure 2-16 Clipping a movie’s image@Figure 2-17 A movie transformed to the display coordinate system.Figure 2-18 Clipping a movie for final displayThe Transformation Matrix2Figure 2-19 A point transformed by a 3-by-3 matrixFigure 2-20 The identity matrix;Figure 2-21 A matrix that describes a translation operation7Figure 2-22 A matrix that describes a scaling operation8Figure 2-23 A matrix that describes a rotation operationGFigure 2-24 A matrix that describes a scaling and translation operationAudio PropertiesSound PlaybackAdding Sound to VideoSound Data FormatsData InterchangeMovies on the ClipboardMovies in FilesUsing the Movie Toolbox2Determining Whether the Movie Toolbox Is Installed<Listing 2-1 Using the Gestalt Manager with the Movie ToolboxJFigure 2-25 An alert box that tells the user that QuickTime is unavailable!Getting Ready to Work With MoviesGetting a Movie From a File'Listing 2-2 Getting a movie from a file?Figure 2-26 A dialog box used when searching for a movie’s dataMFigure 2-27 A dialog box that informs the user the movie file cannot be foundLFigure 2-28 A dialog box that allows the user to specify a movie file to try.Figure 2-29 An alert for an invalid movie file3Figure 2-30 An alert when QuickTime cannot be found&Playing Movies With a Movie Controller.Figure 2-31 A movie controller playing a movie>Listing 2-3 Playing a movie using a movie controller componentPlaying a MovieListing 2-4 Playing a movieMovies and the ScrapCreating a Movie %A Sample Program for Creating a Movie.Listing 2-5 Creating a movie: The main program7A Sample Function for Creating and Opening a Movie File-Listing 2-6 Creating and opening a movie file;A Sample Function for Creating a Video Track in a New Movie"Listing 2-7 Creating a video track5A Sample Function for Adding Video Samples to a Media+Listing 2-8 Adding video samples to a media5A Sample Function for Creating Video Data for a MovieListing 2-9 Creating video data-A Sample Function for Creating a Sound Track #Listing 2-10 Creating a sound track<A Sample Function for Creating a Sound Description Structure)Listing 2-11 Creating a sound descriptionParsing a Sound Resource%Listing 2-12 Parsing a sound resourceSaving Movies in Movie Files-Figure 2-32 A sample movie Save As dialog boxUsing Movies in Your Event Loop)Listing 2-13 Handling movie update eventsThe Movie Toolbox and System 6The Alias ManagerThe File ManagerPreviewing FilesAPreviewing Files in System 6 Using Standard File Reply StructuresLFigure 2-33 SFGetFilePreview or SFPGetFilePreview dialog box without previewIFigure 2-34 SFGetFilePreview or SFPGetFilePreview dialog box with preview&Customizing Your Interface in System 6RFigure 2-35 Standard preview dialog box for SFGetFilePreview and SFPGetFilePreviewAPreviewing Files in System 7 Using Standard File Reply StructuresUFigure 2-36 StandardGetFilePreview or CustomGetFilePreview dialog box without previewRFigure 2-37 StandardGetFilePreview or CustomGetFilePreview dialog box with previewHFigure 2-38 Dialog box showing automatic file-to-movie conversion option?Figure 2-39 Dialog box for saving a movie converted from a file&Customizing Your Interface in System 7@Figure 2-40 Standard preview dialog box for CustomGetFilePreview#Using Application-Defined Functions-Listing 2-14 Two sample movie cover functions*Working With Movie Spatial Characteristics#Listing 2-15 Creating a track matteMovie Toolbox Reference
Data Types
Movie IdentifiersThe Time Structure.The Fixed-Point and Fixed-Rectangle StructuresThe Sound Description Structure(Functions for Getting and Playing MoviesInitializing the Movie ToolboxEnterMovies
Preferred Movie SettingsSetMoviePreferredRateGetMoviePreferredRate
SetMoviePreferredVolumeGetMoviePreferredVolume%
Enhancing Movie Playback PerformancePrerollMovie
SetMovieActiveSegment
GetMovieActiveSegmentSetMoviePlayHints
SetMediaPlayHints LoadMovieIntoRam
LoadTrackIntoRam
LoadMediaIntoRam
SetMediaShadowSyncGetMediaShadowSyncDisabling Movies and TracksSetMovieActiveGetMovieActive
SetTrackEnabledGetTrackEnabledGenerating Pictures From MoviesGetMoviePictGetMoviePosterPict
GetTrackPict$Creating Tracks and Media Structures
NewMovieTrackDisposeMovieTrack
NewTrackMediaDisposeTrackMedia*
Working With Progress and Cover FunctionsSetMovieProgressProcSetMovieCoverProcs&Functions That Modify Movie Properties*Working With Movie Spatial CharacteristicsSetMovieGWorldGetMovieGWorldSetMovieBoxGetMovieBox
GetMediaNextInterestingTime .Locating a Movie’s Tracks and Media StructuresGetMovieTrackCountGetMovieIndTrack
GetMovieTrack
GetTrackID
GetTrackMovie
GetTrackMedia
GetMediaTrack
Working With Alternate TracksSetMovieLanguageSelectMovieAlternates
SetAutoTrackAlternatesEnabled SetTrackAlternateGetTrackAlternateSetMediaLanguageGetMediaLanguageSetMediaQualityGetMediaQualityWorking With Data References
AddMediaDataRefSetMediaDataRefGetMediaDataRef
GetMediaDataRefCount0Determining Movie Creation and Modification Time
GetMovieCreationTimeGetMovieModificationTimeGetTrackCreationTimeGetTrackModificationTimeGetMediaCreationTimeGetMediaModificationTimeWorking With Media Samples
Selecting Media HandlersGetMediaHandlerDescriptionGetMediaHandler
SetMediaHandlerGetMediaDataHandlerDescriptionGetMediaDataHandlerSetMediaDataHandlerVideo Media Handler FunctionsSetVideoMediaGraphicsModeGetVideoMediaGraphicsModeSound Media Handler FunctionsSetSoundMediaBalanceGetSoundMediaBalanceText Media Handler Functions
Functions for Displaying File PreviewsHFigure 2-41 Dialog box showing automatic file-to-movie conversion option?Figure 2-42 Dialog box for saving a movie converted from a file
SFGetFilePreview
SFPGetFilePreviewStandardGetFilePreview
CustomGetFilePreview
Time Base Functions$Creating and Disposing of Time BasesNewTimeBaseDisposeTimeBaseSetMovieMasterClock
RectMatrix>Figure 2-43 Transforming an image with the RectMatrix functionIFigure 2-44 Matrix created as a result of calling the RectMatrix function MapMatrix=Figure 2-45 Transforming an image with the MapMatrix function
MyTextProcSummary of the Movie ToolboxImage Compression Manager-Introduction to the Image Compression Manager%Data That Is Suitable for CompressionStoring ImagesAbout Image Compression!Image-Compression CharacteristicsCompression RatioCompression Speed
Image QualityCompressors Supplied by Apple
The Photo CompressorThe Video Compressor
The Compact Video CompressorThe Animation CompressorThe Graphics CompressorThe Raw Compressor3
Types of Images Suitable for Different Compressors$Figure 3-1 24-bit photographic image!Figure 3-2 24-bit synthetic imageFigure 3-3 8-bit graphic image #Figure 3-4 8-bit photographic imageKFigure 3-5
Compressor performance for a 921 KB, 24-bit, photographic imageHFigure 3-6
Compressor performance for a 502 KB, 24-bit, synthetic imageDFigure 3-7
Compressor performance for a 30 KB, 8-bit, graphic imageTFigure 3-8
Compressor performance for a 302 KB, 8-bit, dithered, photographic image$
Using the Image Compression Manager9Getting Information About Compressors and Compressed DataWorking With PicturesCTable 3-1 Fields of the PICT opcode for compressed QuickTime imagesETable 3-2 Fields of the PICT opcode for uncompressed QuickTime imagesCompressing Images2Listing 3-1 Compressing and decompressing an imageDecompressing ImagesCompressing SequencesDecompressing Sequences*Decompressing Still Images From a Sequence&Using Screen Buffers and Image BuffersGA Sample Program for Compressing and Decompressing a Sequence of ImagesPListing 3-2 Compressing and decompressing a sequence of images: The main program@A Sample Function for Saving a Sequence of Images to a Disk File`Listing 3-3 Compressing and decompressing a sequence of images: Saving a sequence to a disk fileMA Sample Function for Creating, Compressing, and Drawing a Sequence of Images`Listing 3-4 Compressing and decompressing a sequence of images: Drawing one frame with QuickDrawQ
A Sample Function for Decompressing and Playing Back a Sequence From a Disk FilezListing 3-5 Compressing and decompressing a sequence of images: Decompressing and playing back a sequence from a disk fileSpooling Compressed DataBanding and Extending Images-Figure 3-9 Image bands and their measurements
Defining Key Frame RatesFast Dithering$
Understanding Compressor Components$
Image Compression Manager Reference
Data TypesThe Image Description Structure$The Compressor Information StructureThe Compressor Name Structure"The Compressor Name List StructureCompression Quality Constants0Image Compression Manager Function Control Flags#Image Compression Manager Functions/Getting Information About Compressor ComponentsCodecManagerVersionGetCodecNameList%Table 3-3 Compressor type descriptorsDisposeCodecNameListGetCodecInfo FindCodec)Getting Information About Compressed Data
GetMaxCompressionSizeGetCompressionTime
GetSimilarityGetCompressedImageSizeWorking With Images
DrawTrimmedPictureFileGetPictureFileHeaderMaking Thumbnail PicturesMakeThumbnailFromPictureMakeThumbnailFromPictureFileMakeThumbnailFromPixMapWorking With SequencesCompressSequenceBeginCompressSequenceFrameDecompressSequenceBeginDecompressSequenceFrame
Summary of the Image Compression ManagerMovie Resource FormatsIntroduction to Movie Resources
Storing Movies in Files2Figure 4-1 Movie files and single-fork movie files4Figure 4-2 The structure of a single-fork movie fileAtoms
Atom Types"Table 4-1 Apple-defined atom typesThe Layout of a QuickTime Atom"Figure 4-3 A sample QuickTime atom$
Overview of the Movie Resource Atom9Figure 4-4 Sample organization of a one-track video movieMovie Atoms%Figure 4-5 The layout of a movie atomMovie Header Atoms,Figure 4-6 The layout of a movie header atomTrack Atoms&Figure 4-7 The layout of a track atom Track Header Atoms,Figure 4-8 The layout of a track header atomMedia Atoms%Figure 4-9 The layout of a media atomMedia Header Atoms-Figure 4-10 The layout of a media header atomHandler Reference Atoms2Figure 4-11 The layout of a handler reference atomUser-Defined Data Atoms2Figure 4-12 The layout of a user-defined data atomClipping Atoms)Figure 4-13 The layout of a clipping atomClipping Region AtomsTrack Matte Atoms-Figure 4-14 The layout of a track matte atom Compressed Matte Atoms
Edit Atoms'Figure 4-15 The layout of an edit atom Edit List Atoms,Figure 4-16 The layout of an edit list tableMedia Information AtomsVideo Media Information Atoms<Figure 4-17 The layout of a media information atom for video$Video Media Information Header AtomsCFigure 4-18 The layout of a media information header atom for videoSound Media Information Atoms<Figure 4-19 The layout of a media information atom for sound$Sound Media Information Header Atoms?Figure 4-20 The layout of a sound media information header atomData Information Atoms1Figure 4-21 The layout of a data information atomData Reference Atoms An Introduction to SamplesFigure 4-22 Samples in a mediaSample Table Atoms-Figure 4-23 The layout of a sample table atomSample Description Atoms3Figure 4-24 The layout of a sample description atomTime-to-Sample Atoms/Figure 4-25 The layout of a time-to-sample atom0Figure 4-26 The layout of a time-to-sample table0Figure 4-27 An example of a time-to-sample tableSync Sample Atoms,Figure 4-28 The layout of a sync sample atom-Figure 4-29 The layout of a sync sample tableSample-to-Chunk Atoms0Figure 4-30 The layout of a sample-to-chunk atom1Figure 4-31 The layout of a sample-to-chunk table1Figure 4-32 An example of a sample-to-chunk tableSample Size Atoms,Figure 4-33 The layout of a sample size atom-Figure 4-34 An example of a sample size tableChunk Offset Atoms-Figure 4-35 The layout of a chunk offset atom.Figure 4-36 An example of a chunk offset tableShadow Sync Atoms,Figure 4-37 The layout of a shadow sync atom-Figure 4-38 The layout of a shadow sync tableUsing Media Information AtomsFinding a SampleFinding a Key Frame