Protocol

AVCapturePhotoCaptureDelegate

Methods for monitoring progress and receiving results from a photo capture output.

Declaration

protocol AVCapturePhotoCaptureDelegate

Overview

You implement methods in the AVCapturePhotoCaptureDelegate protocol to be notified of progress and results when capturing photos with the AVCapturePhotoOutput class.

To capture a photo, you pass an object implementing this protocol to the capturePhoto(with:delegate:) method, along with a settings object that describes the capture to be performed. As the capture proceeds, the photo output calls several of the methods in this protocol on your delegate object, providing information about the capture’s progress and delivering the resulting photos.

Which delegate methods the photo output calls depends on the photo settings you initiate capture with. All methods in this protocol are optional at compile time, but at run time your delegate object must respond to certain methods depending on your photo settings:

The capture output validates these requirements when you call the capturePhoto(with:delegate:) method. If your delegate does not meet these requirements, that method raises an exception.

You must use a unique AVCapturePhotoSettings object for each capture request. When the photo output calls your delegate methods, it provides an AVCaptureResolvedPhotoSettings object whose uniqueID property matches that of the photo settings you requested capture with. When making multiple captures, use this unique ID to determine which delegate method calls correspond to which requests.

The photo output always calls each method listed in Monitoring Capture Progress exactly once for each capture request. For methods listed in Receiving Capture Results, you may receive a call more than once, or not at all, depending on your photo settings. See the description of each method for details.

Topics

Monitoring Capture Progress

func photoOutput(AVCapturePhotoOutput, willBeginCaptureFor: AVCaptureResolvedPhotoSettings)

Notifies the delegate that the capture output has resolved settings and will soon begin its capture process.

Relationships

Inherits From

See Also

Photo Capture

Capturing Still and Live Photos

Configure and capture single or multiple still images, Live Photos, and other forms of photography.

Supporting Continuity Camera in Your Mac App

Incorporate scanned documents and pictures taken with a user's iPhone, iPad, or iPod touch into your Mac app using Continuity Camera.

class AVCapturePhoto

A container for image data collected by a photo capture output.

class AVCapturePhotoOutput

A capture output for still image, Live Photo, and other photography workflows.