<!--
{
  "documentType" : "article",
  "framework" : "VideoToolbox",
  "identifier" : "/documentation/VideoToolbox/VTSession-api-collection",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "VTSession"
}
-->

# VTSession

An abstract object that provides the common interface to configure VideoToolbox session objects.

## Topics

### Setting Properties

[`func VTSessionSetProperty(VTSession, key: CFString, value: CFTypeRef?) -> OSStatus`](/documentation/VideoToolbox/VTSessionSetProperty(_:key:value:))

Sets a property on a VideoToolbox session.

[`func VTSessionSetProperties(VTSession, propertyDictionary: CFDictionary) -> OSStatus`](/documentation/VideoToolbox/VTSessionSetProperties(_:propertyDictionary:))

Sets multiple properties at once.

### Getting Properties

[`func VTSessionCopyProperty(VTSession, key: CFString, allocator: CFAllocator?, valueOut: UnsafeMutableRawPointer?) -> OSStatus`](/documentation/VideoToolbox/VTSessionCopyProperty(_:key:allocator:valueOut:))

Retrieves a property on a Video Toolbox session.

[`func VTSessionCopySerializableProperties(VTSession, allocator: CFAllocator?, dictionaryOut: UnsafeMutablePointer<CFDictionary?>) -> OSStatus`](/documentation/VideoToolbox/VTSessionCopySerializableProperties(_:allocator:dictionaryOut:))

Retrieves the set of serializable property keys and their current values.

[`func VTSessionCopySupportedPropertyDictionary(VTSession, supportedPropertyDictionaryOut: UnsafeMutablePointer<CFDictionary?>) -> OSStatus`](/documentation/VideoToolbox/VTSessionCopySupportedPropertyDictionary(_:supportedPropertyDictionaryOut:))

Retrieves a dictionary enumerating all the supported properties of a video toolbox session.

[Supported Property Dictionary Constants](/documentation/VideoToolbox/supported-dictionary-constants)

Property dictionary key and constant values.

### Data Types

[`typealias VTSession`](/documentation/VideoToolbox/VTSession)

A reference to a VideoToolbox compression session,  decompression session or pixel transfer session.

### Enumerations

[Frame Delay](/documentation/VideoToolbox/1441330-frame-delay)

Indicates that no limit should be placed on the compression window.



---

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)