---
title: AVAssetExportSession
framework: avfoundation
role: symbol
role_heading: Class
path: avfoundation/avassetexportsession
---

# AVAssetExportSession

An object that exports assets in a format that you specify using an export preset.

## Declaration

```swift
class AVAssetExportSession
```

## Mentioned in

Exporting video to alternative formats

## Overview

Overview You configure this object to export an instance of AVAsset by setting an export preset, an output file type, and an output URL.

## Topics

### Creating an export session

- [init(asset:presetName:)](avfoundation/avassetexportsession/init(asset:presetname:).md)
- [Export presets](avfoundation/export-presets.md)

### Accessing export presets

- [presetName](avfoundation/avassetexportsession/presetname.md)
- [determineCompatibleFileTypes(completionHandler:)](avfoundation/avassetexportsession/determinecompatiblefiletypes(completionhandler:).md)
- [allExportPresets()](avfoundation/avassetexportsession/allexportpresets().md)
- [determineCompatibility(ofExportPreset:with:outputFileType:completionHandler:)](avfoundation/avassetexportsession/determinecompatibility(ofexportpreset:with:outputfiletype:completionhandler:).md)
- [exportPresets(compatibleWith:)](avfoundation/avassetexportsession/exportpresets(compatiblewith:).md)

### Configuring output

- [outputURL](avfoundation/avassetexportsession/outputurl.md)
- [outputFileType](avfoundation/avassetexportsession/outputfiletype.md)
- [supportedFileTypes](avfoundation/avassetexportsession/supportedfiletypes.md)
- [allowsParallelizedExport](avfoundation/avassetexportsession/allowsparallelizedexport.md)
- [shouldOptimizeForNetworkUse](avfoundation/avassetexportsession/shouldoptimizefornetworkuse.md)
- [canPerformMultiplePassesOverSourceMediaData](avfoundation/avassetexportsession/canperformmultiplepassesoversourcemediadata.md)
- [timeRange](avfoundation/avassetexportsession/timerange.md)
- [fileLengthLimit](avfoundation/avassetexportsession/filelengthlimit.md)
- [directoryForTemporaryFiles](avfoundation/avassetexportsession/directoryfortemporaryfiles.md)

### Configuring metadata

- [metadata](avfoundation/avassetexportsession/metadata.md)
- [metadataItemFilter](avfoundation/avassetexportsession/metadataitemfilter.md)

### Configuring video output

- [videoComposition](avfoundation/avassetexportsession/videocomposition.md)
- [customVideoCompositor](avfoundation/avassetexportsession/customvideocompositor.md)

### Configuring track groups

- [audioTrackGroupHandling](avfoundation/avassetexportsession/audiotrackgrouphandling.md)
- [AVAssetTrackGroupOutputHandling](avfoundation/avassettrackgroupoutputhandling.md)

### Configuring audio output

- [audioMix](avfoundation/avassetexportsession/audiomix.md)
- [audioTimePitchAlgorithm](avfoundation/avassetexportsession/audiotimepitchalgorithm.md)

### Exporting media

- [export(to:as:isolation:)](avfoundation/avassetexportsession/export(to:as:isolation:).md)
- [cancelExport()](avfoundation/avassetexportsession/cancelexport().md)
- [exportAsynchronously(completionHandler:)](avfoundation/avassetexportsession/exportasynchronously(completionhandler:).md)

### Monitoring export progress

- [states(updateInterval:)](avfoundation/avassetexportsession/states(updateinterval:).md)
- [AVAssetExportSession.State](avfoundation/avassetexportsession/state.md)
- [status](avfoundation/avassetexportsession/status-swift.property.md)
- [AVAssetExportSession.Status](avfoundation/avassetexportsession/status-swift.enum.md)
- [progress](avfoundation/avassetexportsession/progress.md)
- [error](avfoundation/avassetexportsession/error.md)

### Estimating file length and duration

- [estimateOutputFileLength(completionHandler:)](avfoundation/avassetexportsession/estimateoutputfilelength(completionhandler:).md)
- [estimatedOutputFileLength](avfoundation/avassetexportsession/estimatedoutputfilelength.md)

### Estimating duration

- [estimateMaximumDuration(completionHandler:)](avfoundation/avassetexportsession/estimatemaximumduration(completionhandler:).md)
- [maxDuration](avfoundation/avassetexportsession/maxduration.md)

### Accessing the asset

- [asset](avfoundation/avassetexportsession/asset.md)

### Configuring resumable export

- [configureForResumableExport()](avfoundation/avassetexportsession/configureforresumableexport().md)
- [AVAssetExportSession.ResumptionFailureReason](avfoundation/avassetexportsession/resumptionfailurereason.md)

### Enumerations

- [AVAssetExportSession.ResumptionState](avfoundation/avassetexportsession/resumptionstate.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Media export

- [Exporting video to alternative formats](avfoundation/exporting-video-to-alternative-formats.md)
