Global Variable


A Boolean value that indicates whether the asset should be prepared to indicate a precise duration and provide precise random access by time.


let AVURLAssetPreferPreciseDurationAndTimingKey: String


true indicates that longer loading times are acceptable in cases in which precise timing is required. Such precision, however, may require additional parsing of the resource in advance of operations that make use of any portion of it, depending on the specifics of its container format.

Many container formats provide sufficient summary information for precise timing and do not require additional parsing to prepare for it; QuickTime movie files and MPEG-4 files are examples of such formats. Other formats do not provide sufficient summary information, and precise random access for them is possible only after a preliminary examination of a file's contents.

If you only intend that the asset be played, the default value of false will suffice (because AVPlayer supports approximate random access by time when full precision isn't available). If you intend to insert the asset into an AVMutableComposition object, precise random access is typically desirable, and the value of true is recommended.