AVCaptureMetadataOutputObjectsDelegate protocol must be adopted by the delegate of an
AVCaptureMetadataOutput object . The single method in this protocol is optional. The method allows a delegate to respond when a capture metadata output object receives relevant metadata objects through its connection.
AVCaptureMetadataOutput object calls the methods of the delegate object on the dispatch queue associated with its
captureOutput(_:didOutputMetadataObjects:fromConnection:) - captureOutput:didOutputMetadataObjects:fromConnection:
Informs the delegate that the capture output object emitted new metadata objects.
AVCaptureMetadataOutputobject that captured and emitted the metadata objects.
An array of
AVMetadataObjectinstances representing the newly emitted metadata. Because
AVMetadataObjectis an abstract class, the objects in this array are always instances of a concrete subclass.
The capture connection through which the objects were emitted.
AVCaptureMetadataOutputobject emits only metadata objects whose types are included in its
metadataObjectTypesproperty. The delegate implements this method to perform additional processing on metadata objects as they become available. If you plan to use metadata objects outside the scope of this method, you must store strong references to them and remove those references when the objects are no longer required.
This method is executed on the dispatch queue specified by the
metadataObjectsCallbackQueueproperty of the capture metadata output object. Because this method may be called frequently, your implementation should be efficient to prevent capture performance problems, including dropped metadata objects.
Available in iOS 6.0 and later.