MeiCam SDK For iOS  3.13.5
NvsEffectSdkContext.h
Go to the documentation of this file.
1 //================================================================================
2 //
3 // (c) Copyright Meishe Co. Ltd, 2016. All rights reserved.
4 //
5 // This code and information is provided "as is" without warranty of any kind,
6 // either expressed or implied, including but not limited to the implied
7 // warranties of merchantability and/or fitness for a particular purpose.
8 //
9 //--------------------------------------------------------------------------------
10 // Birth Date: Sep 6. 2018
11 // Author: Meishe video team
12 //================================================================================
13 #pragma once
14 
15 #import <Foundation/Foundation.h>
17 #import "NvsVideoEffect.h"
22 #import "NvsEffectRenderCore.h"
23 #import "NvsEffectCommonDef.h"
24 
31 typedef enum {
34 
41 typedef enum {
62 
69 typedef enum {
76  NvsEffectSdkHumanDetectionDataType_Makeup2, // deprecated, replaced by NvsHumanDetectionDataType_FaceCommon
80 
82 @optional
83 
95 - (void)onDebugLogArrived:(int)level logStr:(NSString*)logStr;
96 @end
97 
104 NVS_EXPORT @interface NvsEffectSdkContext : NSObject
105 
107 
118 + (BOOL)verifySdkLicenseFile:(NSString *)sdkLicenseFilePath;
119 
120 + (void)setDebugLogDelegate:(id<NvsEffectSdkContextDebugLogDelegate>)debugLogDelegate;
130 + (NvsEffectSdkContext *)sharedInstance:(NvsEffectSdkContextFlag)flags;
131 
139 + (void)destroyInstance;
140 
150 + (int)hasARModule;
151 
167 + (BOOL)initHumanDetection:(NSString *)modelFilePath
168  licenseFilePath:(NSString *)licenseFilePath
169  features:(int)features;
170 
184 + (BOOL)initHumanDetectionExt:(NSString *)modelFilePath
185  licenseFilePath:(NSString *)licenseFilePath
186  features:(int)features;
187 
201 + (BOOL)setupHumanDetectionData:(int)dataType
202  dataFilePath:(NSString *)dataFilePath;
203 
211 + (void)closeHumanDetection;
212 
226 + (void)getSdkVersion:(int *)majorVersion minorVersion:(int *)minorVersion revisionNumber:(int *)revisionNumber;
227 
236 - (NSArray *)getAllBuiltinVideoFxNames;
237 
250 - (NvsVideoEffect *)createVideoEffect:(NSString *)effectId aspectRatio:(NvsEffectRational)aspectRatio;
251 
266 - (NvsVideoEffect *)createVideoEffect:(NSString *)effectId aspectRatio:(NvsEffectRational)aspectRatio realTime:(BOOL)realTime;
267 
281 - (NvsVideoEffectTransition *)createVideoTransition:(NSString *)transitionId aspectRatio:(NvsEffectRational)aspectRatio;
282 
301 - (NvsVideoEffectAnimatedSticker *)createAnimatedSticker:(int64_t)inPoint duration:(int64_t)duration isPanoramic:(bool)isPanoramic packageId:(NSString *)packageId aspectRatio:(NvsEffectRational)aspectRatio;
302 
323 - (NvsVideoEffectAnimatedSticker *)createCustomAnimatedSticker:(int64_t)inPoint duration:(int64_t)duration isPanoramic:(bool)isPanoramic packageId:(NSString *)packageId customImageFilePath:(NSString *)customImageFilePath aspectRatio:(NvsEffectRational)aspectRatio;
324 
341 - (NvsVideoEffectCompoundCaption *)createCompoundCaption:(int64_t)inPoint duration:(int64_t)duration packageId:(NSString *)packageId aspectRatio:(NvsEffectRational)aspectRatio;
342 
359 - (NvsVideoEffectCompoundCaption *)createPanoramicCompoundCaption:(int64_t)inPoint duration:(int64_t)duration packageId:(NSString *)packageId aspectRatio:(NvsEffectRational)aspectRatio;
360 
386 - (NvsVideoEffectCaption *)createCaption:(NSString *)captionText inPoint:(int64_t)inPoint duration:(int64_t)duration captionStylePackageId:(NSString *)captionStylePackageId aspectRatio:(NvsEffectRational)aspectRatio;
387 
413 - (NvsVideoEffectCaption *)createPanoramicCaption:(NSString *)captionText inPoint:(int64_t)inPoint duration:(int64_t)duration captionStylePackageId:(NSString *)captionStylePackageId aspectRatio:(NvsEffectRational)aspectRatio;
414 
438 - (NvsVideoEffectCaption *)createModularCaption:(NSString *)captionText inPoint:(int64_t)inPoint duration:(int64_t)duration aspectRatio:(NvsEffectRational)aspectRatio;
439 
463 - (NvsVideoEffectCaption *)createPanoramicModularCaption:(NSString *)captionText inPoint:(int64_t)inPoint duration:(int64_t)duration aspectRatio:(NvsEffectRational)aspectRatio;
464 
474 
484 - (NSString *)registerFontByFilePath:(NSString *)filePath;
485 
493 - (void)UnregisterFontByFilePath:(NSString *)filePath;
494 
507 + (BOOL)functionalityAuthorised:(NSString *)sdkFunctionName;
510 @end
NvsVideoEffect.h
NvsEffectSdkHumanDetectionFeature_HandAction
@ NvsEffectSdkHumanDetectionFeature_HandAction
Definition: NvsEffectSdkContext.h:53
NvsVideoEffectAnimatedSticker
Animated sticker class.
Definition: NvsVideoEffectAnimatedSticker.h:35
NvsEffectSdkHumanDetectionDataType_SkinColor
@ NvsEffectSdkHumanDetectionDataType_SkinColor
Definition: NvsEffectSdkContext.h:72
NvsEffectSdkHumanDetectionFeature_MultiDetect
@ NvsEffectSdkHumanDetectionFeature_MultiDetect
Definition: NvsEffectSdkContext.h:56
NvsVideoEffectTransition.h
NvsEffectSdkHumanDetectionDataType_Makeup2
@ NvsEffectSdkHumanDetectionDataType_Makeup2
Definition: NvsEffectSdkContext.h:76
NvsVideoEffectCaption
captions.
Definition: NvsVideoEffectCaption.h:119
NvsEffectSdkHumanDetectionFeature_FaceAttriShape
@ NvsEffectSdkHumanDetectionFeature_FaceAttriShape
Definition: NvsEffectSdkContext.h:60
NvsEffectRenderCore.h
-[NvsEffectSdkContext getAllBuiltinVideoFxNames]
NSArray * getAllBuiltinVideoFxNames()
Gets a list of all build-in video effects' names.
NvsEffectRational
Rational value.
Definition: NvsEffectCommonDef.h:28
NvsEffectSdkContextDebugLogDelegate-p
Definition: NvsEffectSdkContext.h:81
NvsEffectSdkHumanDetectionDataType_FaceCommon
@ NvsEffectSdkHumanDetectionDataType_FaceCommon
Definition: NvsEffectSdkContext.h:77
NvsEffectSdkHumanDetectionFeature_AvatarExpression
@ NvsEffectSdkHumanDetectionFeature_AvatarExpression
Definition: NvsEffectSdkContext.h:44
NvsVideoEffectTransition
Video transition is a effect of switching between clips.
Definition: NvsVideoEffectTransition.h:50
NvsEffectSdkHumanDetectionFeature_Background
@ NvsEffectSdkHumanDetectionFeature_Background
Definition: NvsEffectSdkContext.h:51
NvsVideoEffect
Video effect.
Definition: NvsVideoEffect.h:44
NvsEffectSdkContextFlag
NvsEffectSdkContextFlag
Effect SDK context creation flag.
Definition: NvsEffectSdkContext.h:31
NvsEffectSdkHumanDetectionFeature_HalfBody
@ NvsEffectSdkHumanDetectionFeature_HalfBody
Definition: NvsEffectSdkContext.h:58
NvsEffectSdkHumanDetectionFeature_Extra
@ NvsEffectSdkHumanDetectionFeature_Extra
Definition: NvsEffectSdkContext.h:50
-[NvsEffectSdkContext createEffectRenderCore]
NvsEffectRenderCore * createEffectRenderCore()
Creates a special effect rendering object.
+[NvsEffectSdkContext hasARModule]
int hasARModule()
Checks if the current SDK contains an AR module.
NvsEffectSdkContext::assetPackageManager
NvsAssetPackageManager * assetPackageManager
Asset package manager.
Definition: NvsEffectSdkContext.h:106
NvsEffectSdkHumanDetectionFeature_FaceAttri
@ NvsEffectSdkHumanDetectionFeature_FaceAttri
Definition: NvsEffectSdkContext.h:59
NvsEffectSdkHumanDetectionFeature_MultiThread
@ NvsEffectSdkHumanDetectionFeature_MultiThread
Definition: NvsEffectSdkContext.h:48
+[NvsEffectSdkContext closeHumanDetection]
void closeHumanDetection()
Turns off the human detection mechanism.
NvsEffectSdkHumanDetectionFeature_SemiImageMode
@ NvsEffectSdkHumanDetectionFeature_SemiImageMode
Definition: NvsEffectSdkContext.h:47
NvsEffectSdkHumanDetectionFeature_HandBone
@ NvsEffectSdkHumanDetectionFeature_HandBone
Definition: NvsEffectSdkContext.h:54
NvsEffectSdkHumanDetectionDataType_Makeup
@ NvsEffectSdkHumanDetectionDataType_Makeup
Definition: NvsEffectSdkContext.h:71
NvsEffectSdkHumanDetectionFeature_EyeballLandmark
@ NvsEffectSdkHumanDetectionFeature_EyeballLandmark
Definition: NvsEffectSdkContext.h:55
NvsEffectSdkHumanDetectionFeature_FaceLandmark
@ NvsEffectSdkHumanDetectionFeature_FaceLandmark
Definition: NvsEffectSdkContext.h:42
NvsEffectSdkHumanDetectionDataType_CustomAvatar
@ NvsEffectSdkHumanDetectionDataType_CustomAvatar
Definition: NvsEffectSdkContext.h:75
NvsVideoEffectCaption.h
NvsVideoEffectAnimatedSticker.h
NvsEffectSdkHumanDetectionFeature_FaceAction
@ NvsEffectSdkHumanDetectionFeature_FaceAction
Definition: NvsEffectSdkContext.h:43
NvsEffectSdkHumanDetectionFeature_HandLandmark
@ NvsEffectSdkHumanDetectionFeature_HandLandmark
Definition: NvsEffectSdkContext.h:52
NvsEffectSdkContext
Effect SDK context class.
Definition: NvsEffectSdkContext.h:105
NvsEffectSdkHumanDetectionDataType_AdvancedBeauty
@ NvsEffectSdkHumanDetectionDataType_AdvancedBeauty
Definition: NvsEffectSdkContext.h:78
NVS_EXPORT
#define NVS_EXPORT
Definition: NvsCommonDef.h:20
NvsVideoEffectCompoundCaption
Definition: NvsVideoEffectCompoundCaption.h:53
NvsEffectSdkHumanDetectionFeatureFlag
NvsEffectSdkHumanDetectionFeatureFlag
Human detection feature.
Definition: NvsEffectSdkContext.h:41
NvsEffectSdkHumanDetectionDataTypeFlag
NvsEffectSdkHumanDetectionDataTypeFlag
Human detection data packet type.
Definition: NvsEffectSdkContext.h:69
NvsEffectCommonDef.h
NvsEffectSdkHumanDetectionDataType_FakeFace
@ NvsEffectSdkHumanDetectionDataType_FakeFace
Definition: NvsEffectSdkContext.h:70
NvsEffectSdkHumanDetectionDataType_PE106
@ NvsEffectSdkHumanDetectionDataType_PE106
Definition: NvsEffectSdkContext.h:73
+[NvsEffectSdkContext destroyInstance]
void destroyInstance()
Destroys the effect sdk context instance.
NvsEffectSdkContextFlag_NoFlag
@ NvsEffectSdkContextFlag_NoFlag
Definition: NvsEffectSdkContext.h:32
NvsEffectRenderCore
Class for special effects rendering.
Definition: NvsEffectRenderCore.h:123
NvsEffectSdkHumanDetectionFeature_VideoMode
@ NvsEffectSdkHumanDetectionFeature_VideoMode
Definition: NvsEffectSdkContext.h:45
NvsAssetPackageManager.h
NvsEffectSdkHumanDetectionFeature_SingleThread
@ NvsEffectSdkHumanDetectionFeature_SingleThread
Definition: NvsEffectSdkContext.h:49
NvsVideoEffectCompoundCaption.h
NvsEffectSdkHumanDetectionFeature_ImageMode
@ NvsEffectSdkHumanDetectionFeature_ImageMode
Definition: NvsEffectSdkContext.h:46
NvsAssetPackageManager
Asset package manager for managing assets in video.
Definition: NvsAssetPackageManager.h:350
NvsEffectSdkHumanDetectionDataType_PE240
@ NvsEffectSdkHumanDetectionDataType_PE240
Definition: NvsEffectSdkContext.h:74
NvsEffectSdkHumanDetectionFeature_SegmentationSky
@ NvsEffectSdkHumanDetectionFeature_SegmentationSky
Definition: NvsEffectSdkContext.h:57