---
title: AVOutputSettingsAssistant
framework: avfoundation
role: symbol
role_heading: Class
path: avfoundation/avoutputsettingsassistant
---

# AVOutputSettingsAssistant

An object that builds audio and video output settings dictionaries.

## Declaration

```swift
class AVOutputSettingsAssistant
```

## Overview

Overview Use an output settings assistant to create the audio and video settings that you use to configure instances of AVAssetWriter and AVAssetWriterInput. You create an assistant with a specific preset configuration, such as hevc3840x2160WithAlpha or preset1920x1080. You can accept the settings dictionaries as is to generate a file that conforms to the criteria that the preset implies. You may also use the dictionaries it generates as a base configuration that you can customize as you require. Providing the assistant additional details about your source media helps it generate more complete results. For example, setting a value for its sourceVideoFormat property ensures that the assistant generates settings that don’t scale up video frames from a smaller size.

## Topics

### Creating an assistant

- [init(preset:)](avfoundation/avoutputsettingsassistant/init(preset:).md)
- [AVOutputSettingsPreset](avfoundation/avoutputsettingspreset.md)
- [availableOutputSettingsPresets()](avfoundation/avoutputsettingsassistant/availableoutputsettingspresets().md)

### Configuring output settings

- [outputFileType](avfoundation/avoutputsettingsassistant/outputfiletype.md)
- [audioSettings](avfoundation/avoutputsettingsassistant/audiosettings.md)
- [sourceAudioFormat](avfoundation/avoutputsettingsassistant/sourceaudioformat.md)
- [videoSettings](avfoundation/avoutputsettingsassistant/videosettings.md)
- [sourceVideoFormat](avfoundation/avoutputsettingsassistant/sourcevideoformat.md)
- [sourceVideoMinFrameDuration](avfoundation/avoutputsettingsassistant/sourcevideominframeduration.md)
- [sourceVideoAverageFrameDuration](avfoundation/avoutputsettingsassistant/sourcevideoaverageframeduration.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 writing

- [Converting projected video to Apple Projected Media Profile](avfoundation/converting-projected-video-to-apple-projected-media-profile.md)
- [Converting side-by-side 3D video to multiview HEVC and spatial video](avfoundation/converting-side-by-side-3d-video-to-multiview-hevc-and-spatial-video.md)
- [Adding a display mask rectangle metadata track to a movie file](avfoundation/adding-a-display-mask-rectangle-metadata-track-to-a-movie-file.md)
- [Writing fragmented MPEG-4 files for HTTP Live Streaming](avfoundation/writing-fragmented-mpeg-4-files-for-http-live-streaming.md)
- [Creating spatial photos and videos with spatial metadata](imageio/creating-spatial-photos-and-videos-with-spatial-metadata.md)
- [Tagging media with video color information](avfoundation/tagging-media-with-video-color-information.md)
- [Evaluating an app’s video color](avfoundation/evaluating-an-app-s-video-color.md)
- [AVAssetWriter](avfoundation/avassetwriter.md)
- [AVAssetWriterInput](avfoundation/avassetwriterinput.md)
- [AVAssetWriterInputPixelBufferAdaptor](avfoundation/avassetwriterinputpixelbufferadaptor.md)
- [AVAssetWriterInputTaggedPixelBufferGroupAdaptor](avfoundation/avassetwriterinputtaggedpixelbuffergroupadaptor.md)
- [AVAssetWriterInputMetadataAdaptor](avfoundation/avassetwriterinputmetadataadaptor.md)
- [AVAssetWriterInputGroup](avfoundation/avassetwriterinputgroup.md)
