<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CoreImage",
  "identifier" : "/documentation/CoreImage/CIImageProcessorKernel/outputFormat(at:arguments:)",
  "metadataVersion" : "0.1.0",
  "role" : "Type Method",
  "symbol" : {
    "kind" : "Type Method",
    "modules" : [
      "Core Image",
      "CoreImage"
    ],
    "preciseIdentifier" : "c:objc(cs)CIImageProcessorKernel(cm)outputFormatAtIndex:arguments:"
  },
  "title" : "outputFormat(at:arguments:)"
}
-->

# outputFormat(at:arguments:)

Override this class method if your processor has more than one output and
you want your processor’s output to be in a specific supported `CIPixelFormat`.

```
class func outputFormat(at outputIndex: Int32, arguments: [String : Any]?) -> CIFormat
```

## Parameters

`outputIndex`

the index that tells you which processor output for which to return the desired `CIPixelFormat`

`arguments`

the arguments dictionary that was passed to [`apply(withExtent:inputs:arguments:)`](/documentation/CoreImage/CIImageProcessorKernel/apply(withExtent:inputs:arguments:)).

## Return Value


Return the desired `CIPixelFormat`

## Discussion

The format must be one of `kCIFormatBGRA8`, `kCIFormatRGBAh`, `kCIFormatRGBAf` or `kCIFormatR8`.
On iOS 12 and macOS 10.14, the formats `kCIFormatRh` and `kCIFormatRf` are also supported.

If the outputFormat is `0`, then the output will be a supported format that best
matches the rendering context’s `/CIContext/workingFormat`.

---

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)