QuickTime Movie Track and Media Reference

Framework
Frameworks/QuickTime.framework
Declared in
Movies.h

Overview

Track and media management functions help with the construction and editing of QuickTime movies.

Functions by Task

Adding Samples to Media Structures

Creating Tracks and Media Structures

Determining Movie Creation and Modification Time

Disabling Movies and Tracks

Editing Tracks

Enhancing Movie Playback Performance

Finding and Adding Samples

High-Level Movie Editing Functions

Locating a Movie's Tracks and Media Structures

Low-Level Movie Editing Functions

Manipulating Media Input Maps

Movie Functions

Movie Posters and Movie Previews

Movies and Your Event Loop

Selecting Media Handlers

Undo for Movies

Undo for Tracks

Working With Alternate Tracks

Working With Media Samples

Working With Media Time

Working With Movie Spatial Characteristics

Working With QuickTime Sample Tables

Working With Sound Volume

Working With Track References

Working With Track Sound

Working With Track Time

Working With User Data

Supporting Functions

Functions

Callbacks

Data Types

DataHandlerComponent

Represents a type used by the Track and Media API.

typedef Component DataHandlerComponent;
Availability
  • Available in OS X v10.0 and later.
  • Not available to 64-bit applications.
Declared In
Movies.h

MediaHandlerComponent

Represents a type used by the Track and Media API.

typedef Component MediaHandlerComponent;
Availability
  • Available in OS X v10.0 and later.
  • Not available to 64-bit applications.
Declared In
Movies.h

MovieEditState

Represents a type used by the Track and Media API.

typedef MovieEditStateRecord * MovieEditState;
Availability
  • Available in OS X v10.0 and later.
  • Not available to 64-bit applications.
Declared In
Movies.h

MovieEditStateRecord

Undocumented

struct MovieEditStateRecord {
   long    data[1];
};
Fields
data

Undocumented

Declared In
Movies.h

SampleReference64Ptr

Represents a type used by the Track and Media API.

typedef SampleReference64Record * SampleReference64Ptr;
Availability
  • Available in OS X v10.0 and later.
  • Not available to 64-bit applications.
Declared In
Movies.h

SampleReference64Record

Provides a 64-bit version of SampleReferenceRecord.

struct SampleReference64Record {
   wide             dataOffset;
   unsigned long    dataSize;
   TimeValue        durationPerSample;
   unsigned long    numberOfSamples;
   short            sampleFlags;
};
Fields
dataOffset

Specifies the offset into the movie data file. This field specifies the offset into the file of the sample data.

dataSize

Specifies the total number of bytes of sample data identified by the reference. All samples referenced by a single SampleReference64Record must be the same size.

durationPerSample

Specifies the duration of each sample in the reference. You must specify this parameter in the media's time scale. All samples referenced by a single SampleReference64Record must be the same duration.

numberOfSamples

Specifies the number of samples contained in the reference.

sampleFlag

Contains flags (see below) that control the operation. Set unused flags to 0. See these constants:

  • mediaSampleNotSync

Declared In
Movies.h

SampleReferencePtr

Represents a type used by the Track and Media API.

typedef SampleReferenceRecord * SampleReferencePtr;
Availability
  • Available in OS X v10.0 and later.
  • Not available to 64-bit applications.
Declared In
Movies.h

SampleReferenceRecord

Describes a sample or group of similar samples.

struct SampleReferenceRecord {
   long         dataOffset;
   long         dataSize;
   TimeValue    durationPerSample;
   long         numberOfSamples;
   short        sampleFlags;
};
Fields
dataOffset

Specifies the offset into the movie data file. This field specifies the offset into the file of the sample data.

dataSize

Specifies the total number of bytes of sample data identified by the reference. All samples referenced by a single SampleReferenceRecord must be the same size.

durationPerSample

Specifies the duration of each sample in the reference. You must specify this parameter in the media's time scale. All samples referenced by a single SampleReferenceRecord must be the same duration.

numberOfSamples

Specifies the number of samples contained in the reference.

sampleFlag

Contains flags (see below) that control the operation. Set unused flags to 0. See these constants:

  • mediaSampleNotSync

Declared In
Movies.h

TrackEditState

Represents a type used by the Track and Media API.

typedef TrackEditStateRecord * TrackEditState;
Availability
  • Available in OS X v10.0 and later.
  • Not available to 64-bit applications.
Declared In
Movies.h

TrackEditStateRecord

Contains a track edit state.

struct TrackEditStateRecord {
   long    data[1];
};
Fields
data

An array of data that constitutes a track edit state.

Declared In
Movies.h

Constants

GetMovieImporter Flags

Constants that represent <codeVoice>GetMovieImporter</codeVoice> flags.

enum {
   kGetMovieImporterValidateToFind = 1L << 0,
   kGetMovieImporterAllowNewFile = 1L << 1,
   kGetMovieImporterDontConsiderGraphicsImporters = 1L << 2,
   kGetMovieImporterDontConsiderFileOnlyImporters = 1L << 6,
   kGetMovieImporterAutoImportOnly = 1L << 10 /* reject aggressive movie importers which have dontAutoFileMovieImport set*/
};
Declared In
Movies.h

AddClonedTrackToMovie Values

Constants passed to AddClonedTrackToMovie.

enum {
   kQTCloneShareSamples          = 1 << 0,
   kQTCloneDontCopyEdits         = 1 << 1
};
Declared In
Movies.h

QTGetMIMETypeInfo Values

Constants passed to QTGetMIMETypeInfo.

enum {
   kQTGetMIMETypeInfoIsQuickTimeMovieType = 'moov', /* info is a pointer to a Boolean*/
   kQTGetMIMETypeInfoIsUnhelpfulType = 'dumb' /* info is a pointer to a Boolean*/
};
Declared In
Movies.h

GetMovieIndTrackType Values

Constants passed to GetMovieIndTrackType.

enum {
   movieTrackMediaType           = 1 << 0,
   movieTrackCharacteristic      = 1 << 1,
   movieTrackEnabledOnly         = 1 << 2
};
Declared In
Movies.h

movieFileSpecValid

Constants grouped with movieFileSpecValid.

enum {
   pasteInParallel               = 1 << 0,
   showUserSettingsDialog        = 1 << 1,
   movieToFileOnlyExport         = 1 << 2,
   movieFileSpecValid            = 1 << 3
};
Declared In
Movies.h

SetTrackUsage Values

Constants passed to SetTrackUsage.

enum {
   trackUsageInMovie             = 1 << 1,
   trackUsageInPreview           = 1 << 2,
   trackUsageInPoster            = 1 << 3
};
Declared In
Movies.h

Media Identifiers

Identify media types in QuickTime.

enum {
   VideoMediaType                = 'vide',
   SoundMediaType                = 'soun',
   TextMediaType                 = 'text',
   BaseMediaType                 = 'gnrc',
   MPEGMediaType                 = 'MPEG',
   MusicMediaType                = 'musi',
   TimeCodeMediaType             = 'tmcd',
   SpriteMediaType               = 'sprt',
   FlashMediaType                = 'flsh',
   MovieMediaType                = 'moov',
   TweenMediaType                = 'twen',
   ThreeDeeMediaType             = 'qd3d',
   SkinMediaType                 = 'skin',
   HandleDataHandlerSubType      = 'hndl',
   PointerDataHandlerSubType     = 'ptr ',
   NullDataHandlerSubType        = 'null',
   ResourceDataHandlerSubType    = 'rsrc',
   URLDataHandlerSubType         = 'url ',
   AliasDataHandlerSubType       = 'alis',
   WiredActionHandlerType        = 'wire'
};
Constants
SoundMediaType

Sound channel.

Available in OS X v10.0 and later.

Not available to 64-bit applications.

Declared in Movies.h.

TextMediaType

Text media.

Available in OS X v10.0 and later.

Not available to 64-bit applications.

Declared in Movies.h.

Declared In
Movies.h