QuickTime File Format Specification
PDF
Introduction
Overview of QTFF
Metadata
Atoms
Atom Layout
Atom Structure
QT Atoms and Atom Containers
QT Atom Containers
QuickTime Movie Files
The File Type Compatibility Atom
Free Space Atoms
Movie Data Atoms
Preview Atoms
Movie Atoms
Overview of Movie Atoms
The Movie Atom
The Movie Profile Atom
Movie Header Atoms
Color Table Atoms
User Data Atoms
User Data Text Strings and Language Codes
Print to Video (Full Screen Mode)
Track Atoms
Track Profile Atom
Track Header Atoms
Clipping Atoms
Clipping Region Atoms
Track Matte Atoms
Compressed Matte Atoms
Edit Atoms
Edit List Atoms
Track Load Settings Atoms
Track Reference Atoms
Track Input Map Atoms
Media Atoms
Media Header Atoms
Handler Reference Atoms
Media Information Atoms
Video Media Information Atoms
Video Media Information Header Atoms
Sound Media Information Atoms
Sound Media Information Header Atoms
Base Media Information Atoms
Base Media Information Header Atoms
Base Media Info Atoms
Data Information Atoms
Data Reference Atoms
Sample Atoms
Sample Table Atoms
Sample Description Atoms
General Structure of a Sample Description
Time-to-Sample Atoms
Sync Sample Atoms
Sample-to-Chunk Atoms
Sample Size Atoms
Chunk Offset Atoms
Using Sample Atoms
Finding a Sample
Finding a Key Frame
Compressed Movie Resources
Allowing QuickTime to Compress the Movie Resource
Structure of a Compressed Movie Resource
Reference Movies
Reference Movie Atom
Reference Movie Descriptor Atom
Data Reference Atom
Data Rate Atom
CPU Speed Atom
Version Check Atom
Component Detect Atom
Component Description Record
Constants
Quality Atom
Media Data Atom Types
Video Media
Video Sample Description
Video Sample Description Extensions
Pixel Aspect Ratio ('pasp')
MPEG-4 Elementary Stream Descriptor Atom ('esds')
Color Parameter Atoms ('colr')
Clean Aperture ('clap')
Video Sample Data
Uncompressed RGB
Uncompressed Y′CbCr (including yuv2)
JPEG
MPEG-4 Video
Motion-JPEG
Sound Media
Sound Sample Descriptions
Sound Sample Description (Version 0)
Sound Sample Description (Version 1)
Redefined Sample Tables
Sound Sample Description Extensions
siSlopeAndIntercept Atom
siDecompressionParam atom ('wave')
Format atom ('frma')
Terminator atom (0x00000000)
MPEG-4 Elementary Stream Descriptor ('esds') Atom
Sound Sample Data
Uncompressed 8-Bit Sound
Uncompressed 16-Bit Sound
IMA, uLaw, and aLaw
Floating-Point Formats
24- and 32-Bit Integer Formats
kMicrosoftADPCMFormat and kDVIIntelIMAFormat Sound Codecs
kDVAudioFormat Sound Codec
kQDesignCompression Sound Codec
MPEG-1 Layer 3 (MP3) Codecs
MPEG-4 Audio
Formats Not Currently in Use:MACE 3:1 and 6:1
Timecode Media
Timecode Sample Description
Timecode Media Information Atom
Timecode Sample Data
Text Media
Text Sample Description
Text Sample Data
Hypertext and Wired Text
Music Media
Music Sample Description
Music Sample Data
MPEG-1 Media
MPEG-1 Sample Description
MPEG-1 Sample Data
Sprite Media
Sprite Sample Description
Sprite Sample Data
Sprite Track Properties
Sprite Track Media Format
Sprite Media Format Atoms
Sprite Media Format Extensions
Sprite Track Property Atoms
Atom Types
Sprite Button Behaviors
QT Atom Container Description Key
Sprite Media Handler Track Properties QT Atom Container Format
Sprite Media Handler Sample QT Atom Container Formats
Wired Action Grammar
Flash Media
Tween Media
Tween Sample Description
Tween Sample Data
Tween Type Categories
Tween QT Atom Container
General Tween Atoms
Path Tween Atoms
List Tween Atoms
3D Tween Atoms
Interpolation Tween Atoms
Region Tween Atoms
Sequence Tween Atoms
Modifier Tracks
Limitations of Spatial Modifier Tracks
Track References
Chapter Lists
3D Media
3D Sample Description
3D Sample Data
Streaming Media
Streaming Media Sample Description
Hint Media
Adding Hint Tracks to a Movie
Packetization Hint Media Header Atom
Hint Track User Data Atom
Movie Hint Info Atom
Finding an Original Media Track From a Hint Track
RTP Hint Tracks
Hint Sample Data Format
Packetization Hint Sample Data for Data Format 'rtp '
No-Op Data Mode
Immediate Data Mode
Sample Mode
Sample Description Mode
VR Media
VR World Atom Container
VR World Header Atom Structure
Imaging Parent Atom
Panorama-Imaging Atom
Node Parent Atom
Node Location Atom Structure
Custom Cursor Atoms
Node Information Atom Container
Node Header Atom Structure
Hot Spot Parent Atom
Hot Spot Information Atom
Specific Information Atoms
Link Hot Spot Atom
Link Hot Spot Valid Flags
URL Hot Spot Atom
Support for Wired Actions
QuickTime VR File Format
Single-Node Panoramic Movies
Single-Node Object Movies
Multinode Movies
QTVR Track
QuickTime VR Sample Description Structure
Panorama Tracks
Panorama Sample Atom Structure
Panorama Image Track
Cylindrical Panoramas
Cubic Panoramas
Image Tracks in Cubic Nodes
Panorama Tracks in Cubic Nodes
Nonstandard Cubes
Hot Spot Image Tracks
Low-Resolution Image Tracks
Track Reference Entry Structure
Object Tracks
Object Sample Atom Structure
Animation Settings
Control Settings
Track References for Object Tracks
Movie Media
Movie Sample Description
Movie Media Sample Format
Basic Data Types
Language Code Values
Macintosh Language Codes
ISO Language Codes
Calendar Date and Time Values
Matrices
Graphics Modes
RGB Colors
Balance
Some Useful Examples and Scenarios
Creating, Copying, and Disposing of Atom Containers
Creating New Atoms
Copying Existing Atoms
Retrieving Atoms From an Atom Container
Modifying Atoms
Removing Atoms From an Atom Container
Creating an Effect Description
Structure of an Effect Description
Required Atoms of an Effects Description
Parameter Atoms of an Effects Description
Creating an Input Map
Structure of an Input Map
Building Input Maps
Creating Movies with Modifier Tracks
Authoring Movies with External Movie Targets
Target Atoms for Embedded Movies
Adding Wired Actions To a Flash Track
Extending the SWF Format
What You Need to Modify
File Length
ActionRecordsOffset
ActionOffset
Condition
Actions
DoAction
Creating Video Tracks at 30 Frames per Second
Creating Video Tracks at 29.97 Frames per Second
Creating Audio Tracks at 44.1 kHz
Creating a Timecode Track for 29.97 FPS Video
Playing with Edit Lists
Interleaving Movie Data
Referencing Two Data Files With a Single Track
Getting the Name of a QuickTime VR Node
Adding Custom Atoms in a QuickTime VR Movie
Adding Atom Containers in a QuickTime VR Movie
Optimizing QuickTime VR Movies for Web Playback
The QTVR Flattener
Sample Atom Container for the QTVR Flattener
Appendix A: QuickTime Image File Format
Atom Types in QuickTime Image Files
Recommended File Type and Suffix
Appendix B: Defining Media Data Layouts
Using QuickTime Files and Media Layouts
Appendix C: Random Access
Seeking With a QuickTime File
Appendix D: Metadata Handling
Digital Video File Formats
Digital Audio File Formats
Still Image File Formats
Animation and 3D File Formats
Appendix E: Summary of VR World and Node Atom Types
C Summary
Constants
VR World Atom Types
Node Information Atom Types
Miscellaneous Atom Types
Track Reference Types
Imaging Property Valid Flags
Link Hot Spot Valid Bits
Animation Settings
Control Settings
Controller Subtype and ID
Object Controller Types
Node Location Flag
Panorama Sample Flag
Data Types
Sample Description Header Structure
String Atom Structure
VR World Header Atom Structure
Panorama-Imaging Atom Structure
Node Location Atom Structure
Node Header Atom Structure
Hot Spot Information Atom Structure
Link Hot Spot Atom Structure
Angle Range Atom Structure
Panorama Sample Atom Structure
Cubic View Atom Structure
Cubic Face Data Atom Structure
Object Sample Atom Structure
Track Reference Entry Structure
Appendix F: Profile Atom Guidelines
About This Appendix
Profile Atom Specification
Definition
Syntax
Semantics
Universal Features
Table of Features
Maximum Video Bitrate
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
Average Video Bitrate
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
Maximum Audio Bitrate
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Average Audio Bitrate
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
QuickTime Video Codec Type
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
QuickTime Audio Codec Type
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
MPEG-4 Video Profile
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
MPEG-4 Video Codec
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
MPEG-4 Video Object Type
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
MPEG-4 Audio Codec
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
Maximum Video Size in a Movie
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
Maximum Video Size in a Track
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
Maximum Video Frame Rate in a Single Track
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
Average Video Frame Rate in a Single Track
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Comments
Video Variable Frame Rate Indication
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Audio Sample Rate for a Sample Entry
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Audio Variable Bitrate Indication
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Audio Channel Count
Feature Values
Writer Responsibilities
Feature Value Algorithm
Reader Responsibilities
Revision History
Glossary