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

# VTSuperResolutionScalerConfiguration

Configuration that you use to set up the super-resolution processor.

```
class VTSuperResolutionScalerConfiguration
```

## Overview

This configuration enables the super-resolution processor on a `VTFrameProcessor` session.

> Important: The super-resolution processor may require ML models which the framework needs to download in order to
> operate. Before calling ``doc://com.apple.videotoolbox/documentation/VideoToolbox/VTFrameProcessor/startSession(configuration:)`` with an instance of this class,
> it is important that you verify that the necessary models are present by checking ``doc://com.apple.videotoolbox/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/configurationModelStatus``.
> If models are not available, you can trigger model download using the ``doc://com.apple.videotoolbox/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/downloadConfigurationModel(completionHandler:)``
> method. Best practice is to confirm availability of models and drive download with user awareness and interaction
> before engaging workflows that need this processor.

## Topics

### Creating a super resolution scaler configuration

[`-  initWithFrameWidth:frameHeight:scaleFactor:inputType:usePrecomputedFlow:qualityPrioritization:revision:`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/init(frameWidth:frameHeight:scaleFactor:inputType:usePrecomputedFlow:qualityPrioritization:revision:))

Creates a new super-resolution scaler processor configuration.

### Determining processor availability

[`supported`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/isSupported)

Reports whether the system supports this processor.

[`supportedScaleFactors`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/supportedScaleFactors-7ucur)

### Inspecting the configuration

[`frameWidth`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/frameWidth)

Width of source frame in pixels.

[`frameHeight`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/frameHeight)

Height of source frame in pixels.

[`scaleFactor`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/scaleFactor)

Indicates the scale factor between input and output.

[`inputType`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/inputType-swift.property)

Indicates the type of input.

[`InputType`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/InputType-swift.enum)

Available super-resolution processor input types.

[`precomputedFlow`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/usesPrecomputedFlow)

Indicates that you provide optical flow.

[`precomputedFlow`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/usesPrecomputedFlow)

Indicates that you provide optical flow.

[`sourcePixelBufferAttributes`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/sourcePixelBufferAttributes)

Pixel buffer attributes dictionary that describes requirements for pixel buffers which represent source frames and reference frames.

[`destinationPixelBufferAttributes`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/destinationPixelBufferAttributes)

Pixel buffer attributes dictionary that describes requirements for pixel buffers which represent destination frames.

[`frameSupportedPixelFormats`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/frameSupportedPixelFormats)

Available supported pixel formats for source frames for current configuration.

[`supportedPixelFormats`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/supportedPixelFormats)

[`qualityPrioritization`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/qualityPrioritization-swift.property)

A parameter to control quality and performance levels.

[`QualityPrioritization`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/QualityPrioritization-swift.enum)

Configuration value you set to prioritize quality or performance.

### Managing the configuration model

[`configurationModelStatus`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/configurationModelStatus)

Reports the download status of models that the system needs for the current configuration.

[`ModelStatus`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/ModelStatus)

Available super-resolution processor model status types.

[`configurationModelPercentageAvailable`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/configurationModelPercentageAvailable)

Returns a floating point value between 0.0 and 1.0 indicating the percentage of required model assets that have been downloaded.

[`-  downloadConfigurationModelWithCompletionHandler:`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/downloadConfigurationModel(completionHandler:))

Downloads models that the system needs for the current configuration.

### Inspecting revision information

[`revision`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/revision-swift.property)

The specific algorithm or configuration revision you use to perform the request.

[`defaultRevision`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/defaultRevision)

Provides the default revision of a specific algorithm or configuration.

[`supportedRevisions`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/supportedRevisions)

Provides the collection of currently supported algorithms or configuration revisions for the class of configuration.

[`Revision`](/documentation/VideoToolbox/VTSuperResolutionScalerConfiguration/Revision-swift.enum)

Available algorithm revisions.

## Relationships

### Inherits From

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

### Conforms To

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

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

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

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

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

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

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

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

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

---

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)