init(rawPixelFormatType:processedFormat:)
Creates a photo settings object for capture in both RAW format and a processed format.
Declaration
convenience init(rawPixelFormatType: OSType, processedFormat: [String : Any]?)Parameters
- rawPixelFormatType:
The Bayer RAW pixel format type to use for capture. This value must be one of the format identifiers listed in the Availablerawphotopixelformattypes 5fatm array of your photo capture output.
- processedFormat:
A dictionary of Core Video pixel buffer attributes or AVFoundation video settings constants (see
Video Settings).To capture a photo in an uncompressed format, such as 420f, 420v, or BGRA, set the key Kcvpixelbufferpixelformattypekey in the
formatdictionary. The corresponding value must be one of the pixel format identifiers listed in the Availablephotopixelformattypes 6eyb array of your photo capture output.To capture a photo in a compressed format, such as JPEG, set the key Avvideocodeckey in the
formatdictionary. The corresponding value must be one of the codec identifiers listed in the Availablephotocodectypes array of your photo capture output. For a compressed format, you can also specify a compression level with the key Avvideoqualitykey.
Return Value
A new photo settings object.
Discussion
Use this initializer to capture an image in both RAW format and a processed format (such as JPEG). For RAW-only capture, use the init(rawPixelFormatType:) initializer instead.
Requesting both formats adds requirements for other photo settings: see the format property for processed format requirements and the rawPhotoPixelFormatType property for RAW format requirements. The capture output validates these requirements when you call the capturePhoto(with:delegate:) method. If your settings and delegate don’t meet these requirements, that method raises an exception.