---
title: VTPixelTransferSession
framework: videotoolbox
role: collectionGroup
role_heading: API Collection
path: videotoolbox/vtpixeltransfersession-api-collection
---

# VTPixelTransferSession

An object converts video data from source pixel buffers to destination pixel buffers.

## Overview

Overview A pixel transfer session supports the copying and/or conversion of images from source pixel buffers to destination pixel buffers. The basic workflow used when working with a pixel transfer session is as follows: Create a pixel transfer session by calling VTPixelTransferSessionCreate(allocator:pixelTransferSessionOut:). Optionally, configure the session with your desired Pixel Transfer Properties by calling VTSessionSetProperty(_:key:value:) or VTSessionSetProperties(_:propertyDictionary:). Transfer images by calling VTPixelTransferSessionTransferImage(_:from:to:). When you finish with the pixel transfer session, call VTPixelTransferSessionInvalidate(_:) to tear it down, and CFRelease to free its memory.

## Topics

### Creating Sessions

- [VTPixelTransferSessionCreate(allocator:pixelTransferSessionOut:)](videotoolbox/vtpixeltransfersessioncreate(allocator:pixeltransfersessionout:).md)

### Configuring Sessions

- [Pixel Transfer Properties](videotoolbox/pixel-transfer-properties.md)

### Converting Image Data

- [VTPixelTransferSessionTransferImage(_:from:to:)](videotoolbox/vtpixeltransfersessiontransferimage(_:from:to:).md)

### Inspecting Sessions

- [VTPixelTransferSessionGetTypeID()](videotoolbox/vtpixeltransfersessiongettypeid().md)

### Ending Sessions

- [VTPixelTransferSessionInvalidate(_:)](videotoolbox/vtpixeltransfersessioninvalidate(_:).md)

### Data Types

- [VTPixelTransferSession](videotoolbox/vtpixeltransfersession.md)

## See Also

### Transformation

- [VTPixelRotationSession](videotoolbox/vtpixelrotationsession-api-collection.md)
