Organization of This Document
Licensing Information
Special Fonts
Updates to This Specification
For More Information
The QuickTime File Format (QTFF) is designed to accommodate the many kinds of data that need to be stored in order to work with digital multimedia. The QTFF is an ideal format for the exchange of digital media between devices, applications, and operating systems because it can be used to describe almost any media structure.
The file format is object-oriented, consisting of a flexible collection of objects that is easily parsed and easily expanded. Unknown objects can simply be ignored or skipped, allowing considerable forward compatibility as new object types are introduced.
QuickTime itself provides a number of high-level functions that you can use to create and manipulate QuickTime files, without requiring you to understand the actual file format. These functions serve to insulate developers from the low-level details of operation. That said, not all kinds of QuickTime files can be created without the information presented here.
Important: The QuickTime File Format has been used as the basis of the MPEG-4 standard and the JPEG-2000 standard, developed by the International Organization for Standardization (ISO). While these file types have similar structures and contain many functionally identical elements, they are distinct file types.
Warning: Do not use one specification to interpret a file that conforms to a different specification, however similar.
The QuickTime File Format Specification is intended primarily for application developers who need to work with QuickTime files outside the context of the QuickTime environment. For example, if you are developing a non-QuickTime application that imports QuickTime files or works with QuickTime VR, you need to understand the material in this document. By reading the information provided here, you should be able to create appropriate data structure specifications for your environment.
The document assumes that you are familiar with the basic concepts of digital video and audio, as well as with programming QuickTime and the QuickTime API. Note that this iteration of the document supersedes all previous versions of the QuickTime File Format Specification.
This document begins with an overview of QuickTime atoms, then presents the structure of the QuickTime file format in detail. This is followed by a series of code examples for manipulating a QuickTime file using the QuickTime API. Finally, a number of related topics are described in a series of appendixes. These include such topics as the QuickTime Image File format, the handling of metadata when importing files into QuickTime, and details of the profile atom.
QuickTime files are described in general, rather than how they are supported on a specific computing platform or in a specific programming language. As a result, the file format information is presented in a tabular manner, rather than in coded data structures. Similarly, field names are presented in English rather than as programming language tags. Furthermore, to the extent possible, data types are described generically. For example, this book uses “32-bit signed integer” rather than “long” to define a 32-bit integer value.
QuickTime files are used to store QuickTime movies, as well as other data. If you are writing an application that parses QuickTime files, you should recognize that there may be non-movie data in the files.
The QuickTime File Format Specification is provided for informational purposes. Apple may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. The furnishing of this document does not give you a license to any patents, trademarks, copyrights, or other intellectual property.
Important: For more information about licensing the QuickTime File Format, contact: Apple, Inc., Software Licensing Department, 12545 Riata Vista Circle, MS 198 3-SWL, Austin, TX 78727. Email Address: sw.license@apple.com
All code listings, reserved words, and the names of actual
data structures, constants, fields, parameters, and routines are
shown in Letter Gothic (this is Letter Gothic
).
Words that appear in boldface are key terms or concepts and are defined in the glossary.
For updates or changes to this specification, go to the QuickTime documentation site at
and click the File Format Specification link.
For information about membership in Apple’s developer program and developer technical support, you should go to this URL:
For information on registering signatures, file types, and other technical information, contact
Apple Developer Technical Support (DTS
Apple, Inc.
1 Infinite Loop, M/S 303-2T
Cupertino, CA 95014
© 2004, 2007 Apple Inc. All Rights Reserved. (Last updated: 2007-09-04)