<!--
{
  "availability" : [
    "iOS: 6.0.0 -",
    "iPadOS: 6.0.0 -",
    "macCatalyst: 14.0.0 -",
    "macOS: 13.0.0 -",
    "tvOS: 17.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AVFoundation",
  "identifier" : "/documentation/AVFoundation/AVCaptureMetadataOutput",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "AVFoundation"
    ],
    "preciseIdentifier" : "c:objc(cs)AVCaptureMetadataOutput"
  },
  "title" : "AVCaptureMetadataOutput"
}
-->

# AVCaptureMetadataOutput

A capture output for processing timed metadata produced by a capture session.

```
class AVCaptureMetadataOutput
```

## Overview

An `AVCaptureMetadataOutput` object intercepts metadata objects emitted by its associated capture connection and forwards them to a delegate object for processing. You can use instances of this class to process specific types of metadata included with the input data. You use this class the way you do other output objects, typically by adding it as an output to an [`AVCaptureSession`](/documentation/AVFoundation/AVCaptureSession) object.

## Topics

### Creating metadata output

[`init()`](/documentation/AVFoundation/AVCaptureMetadataOutput/init())

Creates a new capture metadata output.

[`new`](/documentation/AVFoundation/AVCaptureMetadataOutput/new)

Creates a new capture metadata output.

### Configuring metadata capture

[`availableMetadataObjectTypes`](/documentation/AVFoundation/AVCaptureMetadataOutput/availableMetadataObjectTypes)

An array of strings identifying the types of metadata objects that can be captured.

[`metadataObjectTypes`](/documentation/AVFoundation/AVCaptureMetadataOutput/metadataObjectTypes)

An array of strings identifying the types of metadata objects  to process.

[`rectOfInterest`](/documentation/AVFoundation/AVCaptureMetadataOutput/rectOfInterest)

A rectangle of interest for limiting the search area for visual metadata.

[`requiredMetadataObjectTypesForCinematicVideoCapture`](/documentation/AVFoundation/AVCaptureMetadataOutput/requiredMetadataObjectTypesForCinematicVideoCapture)

The required metadata object types when Cinematic Video capture is enabled.

### Receiving captured metadata objects

[`setMetadataObjectsDelegate(_:queue:)`](/documentation/AVFoundation/AVCaptureMetadataOutput/setMetadataObjectsDelegate(_:queue:))

Sets the delegate and dispatch queue to use handle callbacks.

[`metadataObjectsDelegate`](/documentation/AVFoundation/AVCaptureMetadataOutput/metadataObjectsDelegate)

The delegate of the capture metadata output object.

[`metadataObjectsCallbackQueue`](/documentation/AVFoundation/AVCaptureMetadataOutput/metadataObjectsCallbackQueue)

The dispatch queue on which to execute the delegate’s methods.

[`AVCaptureMetadataOutputObjectsDelegate`](/documentation/AVFoundation/AVCaptureMetadataOutputObjectsDelegate)

Methods for receiving metadata produced by a metadata capture output.



---

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)