15 #import <Foundation/Foundation.h>
44 typedef NS_ENUM(NSInteger,NvsFaceActionType){
46 NvsFaceActionTypeInvalid = -1,
47 NvsFaceActionTypeEyeBlink,
48 NvsFaceActionTypeLipsPart,
49 NvsFaceActionTypeHeadYaw,
50 NvsFaceActionTypeHeadPitch,
51 NvsFaceActionTypeBrowJump,
52 NvsFaceActionTypeLipsUpward,
53 NvsFaceActionTypeLipsPouted
64 typedef NS_ENUM(NSInteger,NvsAvatarActionType){
66 NvsAvatarActionTypeInvalid = -1,
67 NvsAvatarActionTypeEyeRightClose,
68 NvsAvatarActionTypeEyeRightDown,
69 NvsAvatarActionTypeEyeRightInward,
70 NvsAvatarActionTypeEyeRightOutward,
71 NvsAvatarActionTypeEyeRightUp,
72 NvsAvatarActionTypeEyeRightNarrow,
73 NvsAvatarActionTypeEyeRightWide,
74 NvsAvatarActionTypeEyeLeftClose,
75 NvsAvatarActionTypeEyeLeftDown,
76 NvsAvatarActionTypeEyeLeftInward,
77 NvsAvatarActionTypeEyeLeftOutward,
78 NvsAvatarActionTypeEyeLeftUp,
79 NvsAvatarActionTypeEyeLeftNarrow,
80 NvsAvatarActionTypeEyeLeftWide,
81 NvsAvatarActionTypeJawForward,
82 NvsAvatarActionTypeJawRight,
83 NvsAvatarActionTypeJawLeft,
84 NvsAvatarActionTypeJawOpen,
85 NvsAvatarActionTypeJawDown,
86 NvsAvatarActionTypeMouthClose,
87 NvsAvatarActionTypeMouthRound,
88 NvsAvatarActionTypeMouthPucker,
89 NvsAvatarActionTypeMouthBulge,
90 NvsAvatarActionTypeMouthBothLipRight,
91 NvsAvatarActionTypeMouthBothLipLeft,
92 NvsAvatarActionTypeMouthRightCornerUp,
93 NvsAvatarActionTypeMouthLeftCornerUp,
94 NvsAvatarActionTypeMouthRightCornerDown,
95 NvsAvatarActionTypeMouthLeftCornerDown,
96 NvsAvatarActionTypeMouthRightCornerBackward,
97 NvsAvatarActionTypeMouthLeftCornerBackward,
98 NvsAvatarActionTypeMouthRightCornerOutward,
99 NvsAvatarActionTypeMouthLeftCornerOutward,
100 NvsAvatarActionTypeMouthCornerShrink,
101 NvsAvatarActionTypeMouthLowerLipInward,
102 NvsAvatarActionTypeMouthUpperLipInward,
103 NvsAvatarActionTypeMouthLowerLipOutward,
104 NvsAvatarActionTypeMouthUpperLipOutward,
105 NvsAvatarActionTypeMouthLowerLipRightUp,
106 NvsAvatarActionTypeMouthLowerLipLeftUp,
107 NvsAvatarActionTypeMouthLowerLipRightDown,
108 NvsAvatarActionTypeMouthLowerLipLeftDown,
109 NvsAvatarActionTypeMouthUpperLipRightUp,
110 NvsAvatarActionTypeMouthUpperLipLeftUp,
111 NvsAvatarActionTypeMouthLipPart,
112 NvsAvatarActionTypeEyebrowRightOuterDown,
113 NvsAvatarActionTypeEyebrowLeftOuterDown,
114 NvsAvatarActionTypeEyebrowBothInnerUp,
115 NvsAvatarActionTypeEyebrowBothInnerDown,
116 NvsAvatarActionTypeEyebrowRightOuterUp,
117 NvsAvatarActionTypeEyebrowLeftOuterUp,
118 NvsAvatarActionTypeCheekBothOutward,
119 NvsAvatarActionTypeCheekRightUp,
120 NvsAvatarActionTypeCheekLeftUp,
121 NvsAvatarActionTypeNoseRightUp,
122 NvsAvatarActionTypeNoseLeftUp,
123 NvsAvatarActionTypeNoseBothWide,
124 NvsAvatarActionTypeTongueOutward
127 typedef NS_ENUM(NSInteger,NvsToBeCheckedFunctionType) {
128 NvsToBeCheckedFunctionType_Invalid = -1,
129 NvsToBeCheckedFunctionType_Matte,
130 NvsToBeCheckedFunctionType_Count
142 @property (nonatomic, assign)
int faceId;
144 @property (nonatomic, strong) NSMutableArray<NSValue *> *
landmarks;
145 @property (nonatomic, strong) NSMutableArray<NSNumber *> *
visibilities;
146 @property (nonatomic, strong) NSMutableArray<NSValue *> *
extraPoints;
148 @property (nonatomic, assign)
float yaw;
149 @property (nonatomic, assign)
float pitch;
150 @property (nonatomic, assign)
float roll;
151 @property (nonatomic, strong) NSMutableArray<NSValue *> *
vertices;
157 @property (nonatomic, strong) NSMutableArray<NSNumber *> *
faceActions;
162 typedef NS_ENUM(NSInteger, NvsHandActionType) {
163 NvsHandActionInvalid = -1,
165 NvsHandActionScissor,
171 NvsHandActionCongratulate,
172 NvsHandActionFingerHeart,
173 NvsHandActionFingerIndex,
177 NvsHandActionILoveYou,
185 @property (nonatomic, assign)
int handId;
187 @property (nonatomic, assign) NvsHandActionType actionType;
209 - (void)notifyFaceBoundingRectWithId:(
int*)faceIds boundingRect:(
NvsRect*)boundingRects faceCount:(
int)count;
222 - (void)notifyFaceFeatureInfos:(NSMutableArray<
NvsFaceFeatureInfo *> *)faceFeatureInfos;
248 - (void)notifyCustomAvatarRealtimeResourcesPreloaded:(BOOL)isPreloaded;
261 - (void)notifyDetectionTimeCost:(
float)time;
275 - (void)notifyTotalTimeCost:(
float)time;
291 @property (nonatomic, weak) id<NvsARSceneManipulateDelegate> delegate;
311 - (void)resetTracking;
320 - (void)resetSkinColor;
331 - (void)setDetectionAutoProbe:(
bool)autoProbe;
333 - (void)setInternalObject:(
void *)internalObject;
344 - (void)setDisableDetectionSmooth:(BOOL)disable;
356 - (void)setSoundVolumeGain:(
float)volume;
368 - (float)getSoundVolumeGain;
380 - (void)setMusicVolumeGain:(
float)volume;
392 - (float)getMusicVolumeGain;
403 - (BOOL)isFunctionAvailable:(NvsToBeCheckedFunctionType)functionType;
414 - (void)setFaceLandmarkConfidenceThresh:(
float)thresh;
425 - (void)setFaceConfidenceThresh:(
float)thresh;
436 - (void)setDetectionForceInterval:(
int)interval;
447 - (void)setDetectionInterval:(
int)interval;