<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 15.4.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "VideoToolbox",
  "identifier" : "/documentation/VideoToolbox/VTFrameRateConversionParameters",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Video Toolbox"
    ],
    "preciseIdentifier" : "c:objc(cs)VTFrameRateConversionParameters"
  },
  "title" : "VTFrameRateConversionParameters"
}
-->

# VTFrameRateConversionParameters

An object that contains the required input and output parameters to run a frame rate conversion processor on a frame.

```
class VTFrameRateConversionParameters
```

## Overview

This object is used in the processWithParameters call of a VTFrameProcessor class. The output parameter is a destinationFrame where the output frame is returned as a VTFrameProcessorMutableFrame back to the caller function once the processing completes.

The parameters within VTFrameRateConversionParameters are frame level parameters.

## Topics

### Creating conversion parameters

[`init(sourceFrame:nextFrame:opticalFlow:interpolationPhase:submissionMode:destinationFrames:)`](/documentation/VideoToolbox/VTFrameRateConversionParameters/init(sourceFrame:nextFrame:opticalFlow:interpolationPhase:submissionMode:destinationFrames:))

Creates a new frame rate conversion parameters object.

[`-  initWithSourceFrame:nextFrame:opticalFlow:interpolationPhase:submissionMode:destinationFrames:`](/documentation/VideoToolbox/VTFrameRateConversionParameters/initWithSourceFrame:nextFrame:opticalFlow:interpolationPhase:submissionMode:destinationFrames:)

Creates a new frame rate conversion parameters object.

### Inspecting the parameters

[`sourceFrame`](/documentation/VideoToolbox/VTFrameRateConversionParameters/sourceFrame)

The current source frame.

[`nextFrame`](/documentation/VideoToolbox/VTFrameRateConversionParameters/nextFrame)

The next source frame in presentation time order.

[`opticalFlow`](/documentation/VideoToolbox/VTFrameRateConversionParameters/opticalFlow)

A property that defines the optical flow for an object.

[`interpolationPhase`](/documentation/VideoToolbox/VTFrameRateConversionParameters/interpolationPhase-2jky5)

An array of floating-point values that indicate which intervals to insert a frame between the current and next frame.   

[`interpolationPhase`](/documentation/VideoToolbox/VTFrameRateConversionParameters/interpolationPhase-6wdns)

An array of floating-point values that indicate which intervals to insert a frame between the current and next frame.   

[`submissionMode`](/documentation/VideoToolbox/VTFrameRateConversionParameters/submissionMode-swift.property)

A value describing the processing request in a parameters submission object.

[`SubmissionMode`](/documentation/VideoToolbox/VTFrameRateConversionParameters/SubmissionMode-swift.enum)

A value describing the processing request in a parameters submission object.

[`destinationFrames`](/documentation/VideoToolbox/VTFrameRateConversionParameters/destinationFrames)

A caller-allocated array of frames that contains the pixel buffers to receive the results.

## Relationships

### Conforms To

[`Hashable`](/documentation/Swift/Hashable)

[`VTFrameProcessorParameters`](/documentation/VideoToolbox/VTFrameProcessorParameters)

[`CVarArg`](/documentation/Swift/CVarArg)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`Equatable`](/documentation/Swift/Equatable)

### Inherits From

[`NSObject-swift.class`](/documentation/ObjectiveC/NSObject-swift.class)

---

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)