<!--
{
  "documentType" : "article",
  "framework" : "AVFoundation",
  "identifier" : "/documentation/AVFoundation/video-settings",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Video settings"
}
-->

# Video settings

Configure video processing settings using standard key and value constants.

## Topics

### Clean aperture

[`AVVideoCleanApertureKey`](/documentation/AVFoundation/AVVideoCleanApertureKey)

A key that defines the region within the video dimension displayed during playback.

[`AVVideoCleanApertureWidthKey`](/documentation/AVFoundation/AVVideoCleanApertureWidthKey)

A key to access the width of video that’s free from transition artifacts caused by signal encoding.

[`AVVideoCleanApertureHeightKey`](/documentation/AVFoundation/AVVideoCleanApertureHeightKey)

A key to access the height of video that’s free from transition artifacts caused by signal encoding.

[`AVVideoCleanApertureVerticalOffsetKey`](/documentation/AVFoundation/AVVideoCleanApertureVerticalOffsetKey)

A key to access the vertical offset of video that’s free from transition artifacts caused by signal encoding.

[`AVVideoCleanApertureHorizontalOffsetKey`](/documentation/AVFoundation/AVVideoCleanApertureHorizontalOffsetKey)

A key to access the horizontal offset of video that’s free from transition artifacts caused by signal encoding.

### Video codecs

[`AVVideoCodecKey`](/documentation/AVFoundation/AVVideoCodecKey)

A key to access the name of the codec for compressing video.

[`AVVideoCodecType`](/documentation/AVFoundation/AVVideoCodecType)

A set of constants that describe the codecs the system supports for video capture.

### Color properties

Keys specify video properties, and corresponding keys and values specify the color primary, transfer function, and Y’CbCr matrix.

[Setting color properties for a specific resolution](/documentation/AVFoundation/setting-color-properties-for-a-specific-resolution)

Choose the proper color property keys for the desired color range.

[`AVVideoAllowWideColorKey`](/documentation/AVFoundation/AVVideoAllowWideColorKey)

The key for a dictionary that indicates whether the client can process wide color.

[`AVVideoColorPrimariesKey`](/documentation/AVFoundation/AVVideoColorPrimariesKey)

The key to identify color primaries in a color properties dictionary.

[`AVVideoColorPrimaries_EBU_3213`](/documentation/AVFoundation/AVVideoColorPrimaries_EBU_3213)

The color primary is in the EBU Tech. 3213 color space.

[`AVVideoColorPrimaries_ITU_R_2020`](/documentation/AVFoundation/AVVideoColorPrimaries_ITU_R_2020)

The color primary is in the ITU_R BT.2020 color space for ultra high definition television.

[`AVVideoColorPrimaries_ITU_R_709_2`](/documentation/AVFoundation/AVVideoColorPrimaries_ITU_R_709_2)

The color primary is in the ITU_R BT.709 color space.

[`AVVideoColorPrimaries_P3_D65`](/documentation/AVFoundation/AVVideoColorPrimaries_P3_D65)

The color primary uses the DCI-P3 D65 color space.

[`AVVideoColorPrimaries_SMPTE_C`](/documentation/AVFoundation/AVVideoColorPrimaries_SMPTE_C)

The color primary uses the SMPTE C color space.

[`AVVideoColorPropertiesKey`](/documentation/AVFoundation/AVVideoColorPropertiesKey)

The key for a dictionary that contains properties specifying video color.

[`AVVideoLogTransferFunctionKey`](/documentation/AVFoundation/AVVideoLogTransferFunctionKey)

[`AVVideoLogTransferFunction_AppleLog`](/documentation/AVFoundation/AVVideoLogTransferFunction_AppleLog)

[`AVVideoLogTransferFunction_AppleLog2`](/documentation/AVFoundation/AVVideoLogTransferFunction_AppleLog2)

[`AVVideoTransferFunctionKey`](/documentation/AVFoundation/AVVideoTransferFunctionKey)

The key to identify the transfer function in a color properties dictionary.

[`AVVideoTransferFunction_IEC_sRGB`](/documentation/AVFoundation/AVVideoTransferFunction_IEC_sRGB)

The transfer function for the IEC sRGB color space.

[`AVVideoTransferFunction_ITU_R_2100_HLG`](/documentation/AVFoundation/AVVideoTransferFunction_ITU_R_2100_HLG)

The transfer function for the ITU_R BT.2100 color space.

[`AVVideoTransferFunction_ITU_R_709_2`](/documentation/AVFoundation/AVVideoTransferFunction_ITU_R_709_2)

The transfer function for the ITU_R BT.709 color space.

[`AVVideoTransferFunction_Linear`](/documentation/AVFoundation/AVVideoTransferFunction_Linear)

The transfer function for the linear color space.

[`AVVideoTransferFunction_SMPTE_240M_1995`](/documentation/AVFoundation/AVVideoTransferFunction_SMPTE_240M_1995)

The transfer function for the SMPTE 240M color space.

[`AVVideoTransferFunction_SMPTE_ST_2084_PQ`](/documentation/AVFoundation/AVVideoTransferFunction_SMPTE_ST_2084_PQ)

The transfer function for the SMPTE 2084 color space.

[`AVVideoYCbCrMatrixKey`](/documentation/AVFoundation/AVVideoYCbCrMatrixKey)

The key to identify the Y’CbCr matrix in a color properties dictionary.

[`AVVideoYCbCrMatrix_ITU_R_2020`](/documentation/AVFoundation/AVVideoYCbCrMatrix_ITU_R_2020)

The Y’CbCr color matrix for ITU-R BT.2020 conversion.

[`AVVideoYCbCrMatrix_ITU_R_601_4`](/documentation/AVFoundation/AVVideoYCbCrMatrix_ITU_R_601_4)

The Y’CbCr color matrix for ITU-R BT.601 conversion.

[`AVVideoYCbCrMatrix_ITU_R_709_2`](/documentation/AVFoundation/AVVideoYCbCrMatrix_ITU_R_709_2)

The Y’CbCr color matrix for ITU-R BT.709 conversion.

[`AVVideoYCbCrMatrix_SMPTE_240M_1995`](/documentation/AVFoundation/AVVideoYCbCrMatrix_SMPTE_240M_1995)

The Y’CbCr color matrix for SMPTE 240M conversion.

### Compression

[`AVVideoCompressionPropertiesKey`](/documentation/AVFoundation/AVVideoCompressionPropertiesKey)

A key to access the dictionary of compression properties for a video asset.

[`AVVideoDecompressionPropertiesKey`](/documentation/AVFoundation/AVVideoDecompressionPropertiesKey)

The key that indicates the video decompression properties to pass to the video decoder.

[`AVVideoAverageBitRateKey`](/documentation/AVFoundation/AVVideoAverageBitRateKey)

A key to access the average bit rate—as bits per second—used in compressing video.

[`AVVideoQualityKey`](/documentation/AVFoundation/AVVideoQualityKey)

A key to set the JPEG compression quality of the video.

[`AVVideoMaxKeyFrameIntervalKey`](/documentation/AVFoundation/AVVideoMaxKeyFrameIntervalKey)

A key to access the maximum interval between keyframes.

[`AVVideoMaxKeyFrameIntervalDurationKey`](/documentation/AVFoundation/AVVideoMaxKeyFrameIntervalDurationKey)

A key to access the maximum interval duration between keyframes.

[`AVVideoAllowFrameReorderingKey`](/documentation/AVFoundation/AVVideoAllowFrameReorderingKey)

A key to access permission to reorder frames.

[`AVVideoAppleProRAWBitDepthKey`](/documentation/AVFoundation/AVVideoAppleProRAWBitDepthKey)

A key to access the Apple ProRAW bit depth.

### Entropy mode

[`AVVideoH264EntropyModeKey`](/documentation/AVFoundation/AVVideoH264EntropyModeKey)

The entropy encoding mode for H.264 compression.

[`AVVideoH264EntropyModeCABAC`](/documentation/AVFoundation/AVVideoH264EntropyModeCABAC)

The encoder uses Context-based Adaptive Binary Arithmetic Coding.

[`AVVideoH264EntropyModeCAVLC`](/documentation/AVFoundation/AVVideoH264EntropyModeCAVLC)

The encoder uses Context-based Adaptive Variable Length Coding.

### FairPlay

[`AVStreamingKeyDeliveryContentKeyType`](/documentation/AVFoundation/AVStreamingKeyDeliveryContentKeyType)

A URL for a content key.

[`AVStreamingKeyDeliveryPersistentContentKeyType`](/documentation/AVFoundation/AVStreamingKeyDeliveryPersistentContentKeyType)

A URL for a persistent content key.

### Frame rate

[`AVVideoExpectedSourceFrameRateKey`](/documentation/AVFoundation/AVVideoExpectedSourceFrameRateKey)

The expected source frame rate.

[`AVVideoAverageNonDroppableFrameRateKey`](/documentation/AVFoundation/AVVideoAverageNonDroppableFrameRateKey)

The desired average number of non-droppable frames to be encoded for each second of video.

### Geometry

[`AVVideoWidthKey`](/documentation/AVFoundation/AVVideoWidthKey)

A key to access the width of the video in pixels.

[`AVVideoHeightKey`](/documentation/AVFoundation/AVVideoHeightKey)

A key to access the height of the video in pixels.

[`AVVideoPixelAspectRatioKey`](/documentation/AVFoundation/AVVideoPixelAspectRatioKey)

A key to access the video’s pixel aspect ratio.

[`AVVideoPixelAspectRatioVerticalSpacingKey`](/documentation/AVFoundation/AVVideoPixelAspectRatioVerticalSpacingKey)

A key to access the pixel aspect ratio vertical spacing.

[`AVVideoPixelAspectRatioHorizontalSpacingKey`](/documentation/AVFoundation/AVVideoPixelAspectRatioHorizontalSpacingKey)

A key to access the pixel aspect ratio horizontal spacing.

### Profile level

[`AVVideoProfileLevelKey`](/documentation/AVFoundation/AVVideoProfileLevelKey)

A key to access the video profile.

[`AVVideoProfileLevelH264High40`](/documentation/AVFoundation/AVVideoProfileLevelH264High40)

A high-level 4.0 profile.

[`AVVideoProfileLevelH264High41`](/documentation/AVFoundation/AVVideoProfileLevelH264High41)

A high-level 4.1 profile.

[`AVVideoProfileLevelH264Main30`](/documentation/AVFoundation/AVVideoProfileLevelH264Main30)

A main-level 3.0 profile.

[`AVVideoProfileLevelH264Main31`](/documentation/AVFoundation/AVVideoProfileLevelH264Main31)

A main-level 3.1 profile.

[`AVVideoProfileLevelH264Main32`](/documentation/AVFoundation/AVVideoProfileLevelH264Main32)

A main-level 3.2 profile.

[`AVVideoProfileLevelH264Main41`](/documentation/AVFoundation/AVVideoProfileLevelH264Main41)

A main-level 4.1 profile.

[`AVVideoProfileLevelH264Baseline30`](/documentation/AVFoundation/AVVideoProfileLevelH264Baseline30)

A baseline-level 3.0 profile.

[`AVVideoProfileLevelH264Baseline31`](/documentation/AVFoundation/AVVideoProfileLevelH264Baseline31)

A baseline-level 3.1 profile.

[`AVVideoProfileLevelH264Baseline41`](/documentation/AVFoundation/AVVideoProfileLevelH264Baseline41)

A baseline-level 4.1 profile.

[`AVVideoProfileLevelH264HighAutoLevel`](/documentation/AVFoundation/AVVideoProfileLevelH264HighAutoLevel)

A high profile auto level profile.

[`AVVideoProfileLevelH264MainAutoLevel`](/documentation/AVFoundation/AVVideoProfileLevelH264MainAutoLevel)

A main profile auto level profile.

[`AVVideoProfileLevelH264BaselineAutoLevel`](/documentation/AVFoundation/AVVideoProfileLevelH264BaselineAutoLevel)

A baseline auto level profile.

### Scaling mode

[`AVVideoScalingModeFit`](/documentation/AVFoundation/AVVideoScalingModeFit)

The string identifier for scaling a video to fit the surrounding view’s dimensions.

[`AVVideoScalingModeKey`](/documentation/AVFoundation/AVVideoScalingModeKey)

A key to retrieve the video scaling mode from a dictionary.

[`AVVideoScalingModeResize`](/documentation/AVFoundation/AVVideoScalingModeResize)

The string identifier for resizing a video to fit the surrounding view’s dimensions.

[`AVVideoScalingModeResizeAspect`](/documentation/AVFoundation/AVVideoScalingModeResizeAspect)

The string identifier for resizing a video to its surrounding view’s shorter dimension while preserving its aspect ratio.

[`AVVideoScalingModeResizeAspectFill`](/documentation/AVFoundation/AVVideoScalingModeResizeAspectFill)

The string identifier for resizing a video to fit the surrounding view’s longer dimension while preserving aspect ratio.

### VideoToolbox options

[`AVVideoEncoderSpecificationKey`](/documentation/AVFoundation/AVVideoEncoderSpecificationKey)

The video encoder specification includes options for choosing a specific video encoder.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)