---
title: Reference movies
framework: quicktime-file-format
role: collectionGroup
role_heading: API Collection
path: quicktime-file-format/reference_movies
---

# Reference movies

A movie that contains references to alternate movies is called a reference movie.

## Overview

Overview A QuickTime movie can act as a container for a set of alternate movies to display under specific conditions. One of these movies may be contained within the same file; any others are included by reference. For example, a QuickTime movie can contain a list of references to movies having different data rates, allowing an application to choose the best-looking movie that can play smoothly as it downloads over the Internet, based on the user’s connection speed. A movie that contains references to alternate movies is called a reference movie. A reference movie contains a reference movie atom ('rmra') at the top level of the movie atom. The movie atom may also contain a movie header atom, or it may contain the reference movie atom alone. The reference movie atom contains one or more reference movie descriptor atoms, each of which describes an alternate movie. Each reference movie descriptor atom contains a data reference atom, which specifies the location of a movie. note: Movie locations are specified using QuickTime data references. QuickTime supports multiple types of data reference, but alternate movies are generally specified using data reference types of either url ('url ') or file alias ('alis'). A reference movie descriptor atom may contain other atoms that specify the movie’s system requirements and the movie quality. If so, there will be an atom of an appropriate type for each requirement that must be met for the movie to play, and there may be a quality atom as well. Applications play the highest-quality movie whose requirements are met by the user’s system. If the data reference to the selected movie cannot be resolved — because the file cannot be found, for example — the application recursively attempts to play the next-highest-quality movie until it succeeds or has exhausted the list of movies whose requirements are met. If a movie contains both a reference movie atom and a movie header atom, applications play the appropriate movie indicated by the reference movie atom. If the user’s system does not meet any of the alternate movies’ criteria, or none of the qualifying data references can be resolved, applications play the movie defined in the movie header atom. (The movie defined in the movie header atom can also be indicated by one of the alternate movie references.) The movie header atom is sometimes used to provide a fallback movie for applications that can play older QuickTime movies but do not understand reference movies. When parsing a reference movie, treat the URL or file reference in the reference movie atom as a new starting point, making no assumptions that the reference is a valid URL, or an existing file, or a well-formed and playable QuickTime movie.

## Topics

### Describing reference movies

- [Reference movie atom ('rmra')](quicktime-file-format/reference_movie_atom.md)
- [Reference movie descriptor atom ('rmda')](quicktime-file-format/reference_movie_descriptor_atom.md)
- [Data reference atom](quicktime-file-format/reference_movie_data_reference_atom.md)
- [Data rate atom ('rmdr')](quicktime-file-format/data_rate_atom.md)
- [CPU speed atom ('rmcs')](quicktime-file-format/cpu_speed_atom.md)
- [Version check atom ('rmvc')](quicktime-file-format/version_check_atom.md)
- [Component detect atom ('rmcd')](quicktime-file-format/component_detect_atom.md)
- [Movie importer component flags](quicktime-file-format/movie_importer_component_flags.md)
- [Quality atom ('rmqu')](quicktime-file-format/quality_atom.md)

## See Also

### Movie data

- [Compressed movie resources](quicktime-file-format/compressed_movie_resources.md)
- [Authoring movies with external movie targets](quicktime-file-format/authoring_movies_with_external_movie_targets.md)
