rent-now

Rent More, Save More! Use code: ECRENTAL

5% off 1 book, 7% off 2 books, 10% off 3+ books

9780120596409

Discovering QuickTime : An Introduction for Windows and Macintosh Programmers

by Towner, George
  • ISBN13:

    9780120596409

  • ISBN10:

    0120596407

  • Edition: CD
  • Format: Paperback
  • Copyright: 1999-06-01
  • Publisher: Elsevier Science Ltd
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $44.95
We're Sorry.
No Options Available at This Time.

Summary

Written for programmers, multimedia designers, and everyone interested in the latest media technology, this book gives you a step-by-step introduction to QuickTime programming, from movies and animation to streaming video on the Internet. The CD-ROM in the back provides working applications, sample code, and the essential programming resources you need to get started. QuickTime sets the standard for worldwide distribution of multimedia content. An increasing number of Windows and Macintosh application developers use its extensive toolkit to bring time and action to their programs. If you're going to compete in today's multimedia world, you need to understand QuickTime. What can QuickTime do for you? QuickTime is a complete system for working with all aspects of digital media. With QuickTime, you can: * Build, play, and edit movies on both Windows and Macintosh computers. * Fill your movies with a wide range of video, audio, graphic, and animation data, using most popular formats and compression standards. * Create Windows and Macintosh movie files that you can stream over the Internet or deliver on CD-ROM. * Make animated graphics with interactive capabilities. * Compose and play synthetic sounds and music, using QuickTime's built-in MIDI synthesizer. * Create virtual reality environments and 3D interactive models. This book shows you how to harness the power of QuickTime. It doesn't take weeks of work to achieve sophisticated multimedia effects; fewer than a dozen lines of Java or C can bring the power of QuickTime into your application. * * Includes a companion CD-ROM packed with QuickTime support materials, reference materials, and examples

Author Biography

A former software developer and filmmaker, George Towner works with the QuickTime team at Apple Computer's headquarters in Cupertino. He has written 14 books about computer technology and is currently lead writer for QuickTime technical documentation.

Table of Contents

Preface About This Book xix
Why You Need This Book xx
Installing QuickTime 4 and Using the CD xxi
A Quick Tour xxii
Getting More Information xxiii
Part 1 The World of QuickTime 1(184)
Introduction
3(14)
Frequently Asked Questions
3(3)
A Few Definitions
6(6)
Movies
7(3)
Components
10(2)
Atoms
12(1)
Multiplatform Programming
12(3)
Quick Summary
15(1)
The Next Five Chapters
15(2)
The QuickTime User Experience
17(26)
Playing a Movie
18(7)
Invoking the Movie Controller
18(3)
Assigning a Movie to a Controller
21(1)
Handling Events
22(1)
Controlling the Controller
23(1)
Filtering Controller Actions
24(1)
Releasing Memory
24(1)
Controlling Playback
25(2)
User Controls
25(1)
Power Keys
26(1)
Chapter Lists
27(1)
Controller Configurations
27(6)
Sound Only
28(1)
Picture, Video, or Text Only
29(1)
Virtual Reality
29(4)
Playing Streamed Movies
33(1)
QuickTime Player
33(3)
Choosing Favorite Movies
35(1)
Controlling Sound and Video
35(1)
Making Movies Interactive
36(2)
Getting Great Performance
38(2)
Quick Summary
40(3)
Delivering Movies
43(34)
Movie Files
44(6)
Movie File Format
44(2)
Forks and Resources
46(1)
Making a Macintosh File
47(1)
Making a Windows File
48(1)
Macintosh and Windows Pathnames
49(1)
Loading and Playing Movies
50(8)
Opening a Movie File
51(1)
Loading a Movie
52(2)
Reading Non-QuickTime Files
54(1)
Selecting a Movie File
54(1)
Exporting a Movie to a File
55(3)
QuickTime and the Internet
58(8)
The QuickTime Browser Plug-In
58(2)
Accessing Movies from Web Pages
60(4)
Internet Movie Techniques
64(2)
Real-Time Streaming
66(8)
Streaming Components
67(1)
Streamed Movie Structure
68(1)
Receiving Streaming Content
69(2)
Serving Streaming Movies
71(1)
Preparing a Movie for Streaming
72(2)
Quick Summary
74(3)
Composing Movies
77(30)
The Movie Idea
78(1)
How Movies Manage Time
78(4)
Time Coordinate System
79(1)
Media Time Scales
80(1)
Playback Time Base
80(1)
An Example
81(1)
Movie Structure
82(1)
Creating a Movie
83(3)
Tracks and Media
86(2)
Creating a Track
88(7)
Putting a Track in a Movie
89(1)
Associating a Media Reference with a Track
90(1)
Beginning and Ending Media Editing
91(1)
Adding Data Samples to the Media
92(1)
Putting Media into a Track
93(2)
Graphic Transformations
95(3)
Clipping
96(1)
Matrix Operations
97(1)
Layering and Graphics Modes
98(5)
Track Enabling
99(1)
Layering
100(1)
Graphics Modes
101(2)
Sound Parameters
103(2)
Volume
104(1)
Balance
104(1)
Quick Summary
105(2)
Working with Digital Media
107(30)
Media Types
108(1)
Media References
108(4)
Data Reference Structures
110(1)
Endian Issues
111(1)
Image Compression
112(1)
Compression Tradeoffs
113(4)
Compression Ratio
113(1)
Compression Speed
114(1)
Image Quality
114(1)
Compressible Image Data
115(1)
Key Frames
116(1)
Standard Compression Components
117(5)
Presenting the Compression Dialog Box
117(1)
Compressing a Single Image
118(2)
Compressing an Image Sequence
120(2)
The Image Compression Manager
122(1)
Codecs
122(1)
Sound Formats
123(1)
Sound Data Compression
124(2)
Media Conversion
126(9)
Exchanging Movie Data
127(2)
Image Transcoders
129(1)
Sound Data Conversion
130(5)
Quick Summary
135(2)
Capturing and Creating Movie Data
137(48)
Working with Digital Files
138(5)
Still Images
138(3)
FlashPix
141(1)
Sound Clips
141(1)
Text
142(1)
Capturing Video and Sound
143(2)
Channels
145(1)
Panels
145(1)
Working with a Sequence Grabber
145(7)
Initializing the Grabber
147(1)
Setting Up a Graphics Port
147(1)
Creating a Channel
147(2)
Getting Ready
149(1)
Previewing Captured Data
149(1)
Recording Captured Data
150(1)
Getting the Result
151(1)
Sequence Grabber Panels
152(3)
Displaying the Standard Dialog Box
153(2)
Creating Your Own Dialog
155(1)
Managing Sound Data
155(2)
Adding Text to Movies
157(4)
Text Descriptors
157(1)
Text Channel and Digitizer Components
158(1)
Handling Text Media
158(2)
Text Export Settings Dialog Box
160(1)
Creating Animation with Sprites
161(7)
Movie Sprites
163(2)
Desktop Sprites
165(3)
Creating Synthetic Music
168(7)
The QuickTime Music Architecture
169(2)
Music Events
171(1)
The Note Allocator
171(3)
Synthesizers
174(1)
Working with Vector Graphics
175(2)
Video Digitizing
177(4)
Video Processing and Digitizer Types
177(3)
Digitizer Components
180(1)
Timecodes and Clock Components
181(2)
Timecode Tracks
181(2)
Clock Components
183(1)
Quick Summary
183(2)
Part 2 Programming Techniques 185(236)
Resources for Programmers
187(4)
The QuickTime SDK
187(2)
Technical Help from Apple
189(1)
Third-Party Resources
189(1)
Distributing QuickTime Software
190(1)
Programming for Windows
191(14)
Mac OS and Windows Differences
191(3)
Win32 Graphics Structures
194(1)
File Structures
195(1)
Movie Files
195(1)
Application Files
195(1)
Windows Utility Routines
196(3)
File Pathnames
196(1)
Desktop Compatibility
196(1)
QuickTime Media Layer
197(2)
General Utilities
199(1)
Converting Earlier QuickTime Code for Windows
199(2)
API Name Conflicts
201(4)
Working with QuickTime Components
205(10)
About Components
205(1)
The Component Manager
206(1)
Component Types
206(1)
Application Interface to Components
207(5)
Finding Components
208(2)
Opening and Closing Components
210(1)
Getting Information about a Component
211(1)
Building Your Own Component
212(3)
Managing Component Connections
212(1)
Calling Functions in Components
213(1)
Miscellaneous Services
213(2)
Opening and Playing Movies
215(26)
Using QuickTime with Your Application
215(2)
Playing a Movie
217(4)
Playing a Movie from a Message Loop
221(1)
A Sample Movie Playing Program for Windows
221(20)
Initializing QuickTime
224(2)
Setting Up a Graphics Port
226(1)
Setting Up a Window Record
227(2)
Defining a Graphics World
229(5)
Using the File Selection Dialog
234(2)
Reading Movies from Movie Files
236(2)
Creating a Movie Controller
238(3)
Creating and Saving Movies
241(18)
Creating a Movie
241(14)
Main Movie Creation Program
242(1)
Creating and Opening a Movie File
242(2)
Creating a Video Track
244(1)
Adding Video Samples
245(3)
Creating Video Data
248(1)
Creating a Sound Track
249(2)
Creating a Sound Description Structure
251(4)
Saving your Movie to a File
255(4)
Flattening the Movie
255(2)
Exporting the Movie
257(2)
Capturing Movie Data
259(14)
Sequence Grabbing
259(3)
Previewing
259(1)
Recording
260(2)
A Sample Data Grabbing Program
262(11)
Initializing a Sequence Grabber Component
262(1)
Creating Sound and Video Channels
263(1)
Previewing Sound and Video Sequences
264(4)
Capturing Sound and Video Data
268(1)
Setting Up a Video Bottleneck
269(1)
Drawing Over Video Frames
270(3)
Working with Graphics and Sound
273(18)
Importing Graphics
273(5)
Importable Image File Formats
274(1)
QTIF Format
275(1)
Atom Types in QTIF Files
275(2)
How Graphics Import Components Work
277(1)
Exporting Graphics
278(7)
Exportable Image File Formats
280(1)
Selecting a Graphics Exporter Component
280(1)
Specifying the Source
281(1)
Specifying the Destination
282(1)
Specifying Export Settings
282(1)
Graphics Export Flags
282(1)
Graphics Export Flags
282(2)
Settings Dialogs
284(1)
Finding Out about Specific Formats
285(1)
Decompressing Images
285(4)
Working with Sound Descriptions
289(2)
The Sound Description Structure
289(2)
Coding Visual Effects
291(28)
Adding Effects and Transitions
291(6)
Video Effects in Movies
293(2)
Effects Outside Movies
295(1)
Custom Video Effects
295(2)
Video Effects user Interface
297(1)
Displaying the Standard Parameters Dialog Box
298(6)
Getting a List of Effects
298(1)
Creating the Dialog Box
299(1)
Processing Dialog Box Events
300(2)
Adding Effects Controls to an Existing Dialog Box
302(2)
Using Video Effects Outside a QuickTime Movie
304(8)
Preparing an Effect for Direct Execution
305(2)
Preparing a Decompression Sequence
307(3)
Executing the Decompression Sequence
310(2)
The Sample Effect Component
312(7)
Structure of the Framework
312(1)
Writing an Effect Component Using the Framework
313(6)
Programming Music
319(22)
Creating a Music Movie
319(7)
Building a Tune Header
319(3)
Building a Tune Sequence
322(2)
Building the Movie
324(2)
Using the Note Allocator
326(2)
Playing Notes on a Note Channel
328(1)
Playing a Melody
329(1)
Picking an Instrument
330(2)
Modifying Notes
332(2)
Playing a Tune
334(3)
Processing a MIDI Message
337(1)
Reading a MIDI Input
338(1)
Music Controls
339(2)
Writing Sprite Code
341(36)
Creating Desktop Sprites
341(7)
Animating Sprites
344(3)
Disposing of a Sprite Animation
347(1)
Putting Sprites in a Movie
348(18)
Defining a Key Frame Sample
348(6)
Adding Sprites to the Key Frame Sample
354(3)
Defining Override Samples
357(2)
Setting Properties of the Sprite Track
359(1)
Updating Sprite Data
360(1)
Getting Sprite Data from a Modifier Track
361(5)
Wiring Sprites
366(2)
User Events
366(1)
Sprite Actions
367(1)
Creating and Using Wired Sprites
368(9)
Setting Up the Sprite Track's Properties
369(1)
Adding Logic to a Sprite
370(1)
Adding a Series of Actions to a Sprite
370(3)
Notes on the Sample Code
373(1)
Wiring to External Movies
373(4)
Coding for Virtual Reality
377(28)
The VR Media Type
377(2)
Scenes and Nodes
379(4)
Object Nodes
380(1)
Storing Object Node Data
381(1)
Tricks with Object Nodes
382(1)
Panoramas
383(1)
Hot Spots
384(1)
Viewing Limits and Constraints
384(1)
Displaying a VR Movie
385(2)
Inside the VR Manager
387(2)
Buffers
387(1)
Memory Management
388(1)
Using the VR Manager
389(16)
Is the VR Manager Available?
389(1)
Initializing the VR Manager
390(1)
Identifying VR Movies
390(1)
Manipulating Viewing Angles and Zooming
391(3)
Intercepting QuickTime VR Manager Routines
394(4)
Entering a Node
398(3)
Leaving a Node
401(1)
Drawing in the Prescreen Buffer
402(3)
Using QuickTime Atoms
405(12)
Kinds of Atoms
405(2)
QT Atom Hierarchies
407(2)
Working with QT Atoms
409(8)
Creating QT Atom Containers
410(1)
Creating QT Atoms
410(2)
Modifying QT Atoms
412(1)
Searching and Retrieving
413(4)
Accessing QuickTime through Java
417(4)
The QuickTime/Java API
418(1)
A Sample Applet
418(3)
Appendix A QuickTime's Component Architecture 421(12)
Movie Composition and Presentation
421(2)
Movie Toolbox
421(1)
Movie Controllers
421(1)
Preview Components
422(1)
Effects Components
422(1)
Clock Components
422(1)
Streaming Components
423(1)
Media Processing
423(3)
Base Image Decompressors
423(1)
Derived Image Decompressors
423(1)
Image Compressors
424(1)
Data Codecs
424(1)
Standard Image-Compression Dialog
424(1)
Standard Sound Dialog
424(1)
Movie Data Exchange Components
425(1)
Base Media Handler
425(1)
Derived Media Handlers
425(1)
Data Handlers
425(1)
Tween Media Handler
425(1)
Tween Components
425(1)
Graphics Importers
426(1)
Graphics Exporters
426(1)
Data Capture, Creation, and Processing
426(1)
The Sequence Grabber Component
426(1)
Sequence Grabber Channel Components
426(1)
Sequence Grabber Panel Components
426(1)
The Text Channel Component
427(1)
Video Digitizers
427(1)
Video Output Components
427(1)
Final Summary: What QuickTime Does
427(6)
Movies
427(1)
Digital Media
428(1)
Music and Sound
429(1)
Sprites
430(1)
Virtual Reality
430(1)
Real-Time Streaming
431(2)
Appendix B Media Types 433(14)
Digital Video
433(3)
Digital Audio
436(2)
Still Images
438(4)
Animation
442(1)
MIDI, Audio CD, and Text
443(2)
Real-Time Streaming
445(2)
RTP Payload Types
445(1)
The MPEG-4 Standard
446(1)
Appendix C Visual Effects 447(10)
SMPTE Video Transitions
447(3)
Wipes
447(1)
Irises
448(1)
Radial Effects
448(1)
Matrix Effects
449(1)
Video Effects from Apple
450(7)
Appendix D System Services in QuickTime 457(4)
Memory Management
457(1)
Mac OS File Management
458(1)
QuickDraw
458(2)
Data Structures
459(1)
Offscreen Operations
459(1)
Window Management
460(1)
Appendix E Contents of the CD 461(8)
Demonstration Programs
461(3)
Sample Code
464(5)
Glossary 469(20)
Bibliography 489(6)
QuickTime Programming
489(1)
Multimedia Content Authoring
490(1)
QuickTime VR
491(1)
3D Graphics
491(1)
Useful Web Sites
492(3)
Index 495

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program