GARAugmentedFaceFrame

Object that holds all relevant information for an Augmented Faces frame during which face detection was run.

Summary

Inheritance

Inherits from: NSObject

Properties

capturedImage
CVPixelBufferRef
A buffer containing the image that was input to GARAugmentedFaceSession.
face
Contains a GARAugmentedFace if a face is detected in this frame, otherwise nil.
timestamp
NSTimeInterval
The time at which the frame was captured.

Public methods

displayTransformForViewportSize:presentationOrientation:mirrored:
CGAffineTransform
A transform that converts between image coordinates and coordinate space for displaying 2D content on screen that is aligned with the AR rendered content.
projectionMatrixForViewportSize:presentationOrientation:mirrored:zNear:zFar:
simd_float4x4
A 3D projection matrix that will result in the correct alignment of AR rendered content on top of the captured camera image.

Properties

capturedImage

@property(nonatomic, readonly) CVPixelBufferRef capturedImage;

A buffer containing the image that was input to GARAugmentedFaceSession.

face

@property(nonatomic, readonly, nullable) GARAugmentedFace *face;

Contains a GARAugmentedFace if a face is detected in this frame, otherwise nil.

timestamp

@property(nonatomic, readonly) NSTimeInterval timestamp;

The time at which the frame was captured.

This is simply the timestamp passed into updateWithPixelBuffer:timestamp:recognitionRotation: (GARAugmentedFaceSession).

Public methods

displayTransformForViewportSize:presentationOrientation:mirrored:

- (CGAffineTransform)displayTransformForViewportSize:
(CGSize) viewPortSize
presentationOrientation:
(UIDeviceOrientation) presentationOrientation
mirrored:
(BOOL) mirrored

A transform that converts between image coordinates and coordinate space for displaying 2D content on screen that is aligned with the AR rendered content.

This method assumes camera images are rendered to aspect fill, not aspect fit.

Details
Parameters
viewPortSize
The size of the view used to render the camera image.
presentationOrientation
The orientation in which to display the 2D content. UIDeviceOrientationUnknown, UIDeviceOrientationFaceUp and UIDeviceOrientationFaceDown map to UIDeviceOrientationPortrait.
mirrored
Whether to provide a mirrored transform. Use this in conjunction with the value passed in projectionMatrixForViewportSize:presentationOrientation:mirrored:zNear:zFar:.

projectionMatrixForViewportSize:presentationOrientation:mirrored:zNear:zFar:

- (simd_float4x4)projectionMatrixForViewportSize:
(CGSize) viewPortSize
presentationOrientation:
(UIDeviceOrientation) presentationOrientation
mirrored:
(BOOL) mirrored
zNear:
(CGFloat) zNear
zFar:
(CGFloat) zFar

A 3D projection matrix that will result in the correct alignment of AR rendered content on top of the captured camera image.

This method assumes camera images are rendered to aspect fill, not aspect fit.

Details
Parameters
viewPortSize
The size of the view into which the AR content will be rendered.
presentationOrientation
The orientation in which to display the AR content. UIDeviceOrientationUnknown, UIDeviceOrientationFaceUp and UIDeviceOrientationFaceDown map to UIDeviceOrientationPortrait.
mirrored
Whether to provide a mirrored projection matrix. This will require you to flip the winding order for rendering.
zNear
The near clipping distance in meters.
zFar
The far clipping distance in meters. Must be positive and greater than the near distance.