Class: AVCaptureStillImageOutput

Inherits:
AVCaptureOutput show all

Overview

AVCaptureStillImageOutput is a concrete sub-class of AVCaptureOutput that you use to capture a high-quality still image with accompanying metadata.

Instance Attribute Summary (collapse)

Attributes inherited from AVCaptureOutput

#connections

Class Method Summary (collapse)

Instance Method Summary (collapse)

Methods inherited from AVCaptureOutput

#connectionWithMediaType:, #transformedMetadataObjectForMetadataObject:connection:

Methods inherited from NSObject

#!, #!=, #!~, #, #==, #===, #=~, #Rational, #__callee__, #__method__, #__send__, #__type__, `, alloc, allocWithZone:, #autoContentAccessingProxy, autoload, autoload?, autorelease_pool, #awakeAfterUsingCoder:, binding, block_given?, caller, cancelPreviousPerformRequestsWithTarget:, cancelPreviousPerformRequestsWithTarget:selector:object:, catch, class, classFallbacksForKeyedArchiver, #classForCoder, #classForKeyedArchiver, classForKeyedUnarchiver, #clone, conformsToProtocol:, #copy, copyWithZone:, #dealloc, #define_singleton_method, description, display, #doesNotRecognizeSelector:, #dup, #enum_for, #eql?, #equal?, #extend, fail, #finalize, format, #forwardInvocation:, #forwardingTargetForSelector:, framework, #freeze, #frozen?, getpass, gets, global_variables, #init, initialize, #initialize_clone, #initialize_copy, #initialize_dup, #inspect, instanceMethodForSelector:, instanceMethodSignatureForSelector:, #instance_eval, #instance_exec, #instance_of?, #instance_variable_defined?, #instance_variable_get, #instance_variable_set, #instance_variables, instancesRespondToSelector:, isSubclassOfClass:, #is_a?, iterator?, #kind_of?, lambda, load, load_bridge_support_file, load_plist, local_variables, loop, #method, #methodForSelector:, #methodSignatureForSelector:, #methods, #mutableCopy, mutableCopyWithZone:, new, #nil?, open, p, #performSelector:onThread:withObject:waitUntilDone:, #performSelector:onThread:withObject:waitUntilDone:modes:, #performSelector:withObject:afterDelay:, #performSelector:withObject:afterDelay:inModes:, #performSelectorInBackground:withObject:, #performSelectorOnMainThread:withObject:waitUntilDone:, #performSelectorOnMainThread:withObject:waitUntilDone:modes:, print, printf, #private_methods, proc, #protected_methods, #public_method, #public_methods, #public_send, putc, puts, raise, rand, readline, readlines, #replacementObjectForCoder:, #replacementObjectForKeyedArchiver:, require, resolveClassMethod:, resolveInstanceMethod:, #respond_to?, #respond_to_missing?, select, #send, setVersion:, #singleton_methods, sprintf, srand, superclass, #taint, #tainted?, #tap, test, throw, #to_plist, #to_s, trace_var, trap, #trust, #untaint, untrace_var, #untrust, #untrusted?, version

Constructor Details

This class inherits a constructor from NSObject

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class NSObject

Instance Attribute Details

- (Array) availableImageDataCodecTypes (readonly)

The supported image codec formats that can be specified in outputSettings. (read-only) The value of this property is an array of NSString objects that you can use as values for the AVVideoCodecKey in the outputSettings property.

Returns:

- (Array) availableImageDataCVPixelFormatTypes (readonly)

The supported image pixel formats that can be specified in outputSettings. (read-only) The value of this property is an array of NSNumber objects that you can use as values for the kCVPixelBufferPixelFormatTypeKey in the outputSettings property.

Returns:

- (Boolean) capturingStillImage (readonly)

Indicates whether a still image is being captured. (read-only) The value of this property is YES when a still image is being captured, and NO when no still image capture is underway.You can observe the value of this property using key-value observing.

Returns:

  • (Boolean)

- (Hash) outputSettings

The compression settings for the output. You specify the compression settings using keys from AVVideoSettings.h, or a dictionary of pixel buffer attributes using keys from CVPixelBuffer.h. Currently the only supported keys are AVVideoCodecKey and kCVPixelBufferPixelFormatTypeKey. The recommended values are kCMVideoCodecType_JPEG, kCVPixelFormatType_420YpCbCr8BiPlanarFullRange and kCVPixelFormatType_32BGRA.

Returns:

Class Method Details

+ (NSData) jpegStillImageNSDataRepresentation(jpegSampleBuffer)

Returns an NSData representation of a still image data and metadata attachments in a JPEG sample buffer. This method merges the image data and Exif metadata sample buffer attachments without re-compressing the image.The returned NSData object is suitable for writing to disk.

Parameters:

  • jpegSampleBuffer (CMSampleBufferRef)

    The sample buffer carrying JPEG image data, optionally with Exif metadata sample buffer attachments.This method throws an NSInvalidArgumentException if jpegSampleBuffer is NULL or not in the JPEG format.

Returns:

  • (NSData)

    An NSData representation of jpegSampleBuffer.

Instance Method Details

- (Object) captureStillImageAsynchronouslyFromConnection(connection, completionHandler:handler)

Initiates a still image capture and returns immediately. This method returns immediately after it is invoked, later calling the provided completion handler block when image data is ready. If the request could not be completed, the error parameter will contain an NSError object describing the failure. You should not assume that the completion handler will be called on a specific thread.

Parameters:

  • connection

    The connection from which to capture the image.

  • handler

    A block to invoke after the image has been captured. The block parameters are as follows:imageDataSampleBufferThe data that was captured.The buffer attachments may contain metadata appropriate to the image data format. For example, a buffer containing JPEG data may carry a kCGImagePropertyExifDictionary as an attachment. See ImageIO/CGImageProperties.h for a list of keys and value types.errorIf the request could not be completed, an NSError object that describes the problem; otherwise nil.

  • imageDataSampleBuffer

    The data that was captured.The buffer attachments may contain metadata appropriate to the image data format. For example, a buffer containing JPEG data may carry a kCGImagePropertyExifDictionary as an attachment. See ImageIO/CGImageProperties.h for a list of keys and value types.

  • error

    If the request could not be completed, an NSError object that describes the problem; otherwise nil.

Returns: