MeiCam SDK For iOS  3.10.0
NvsEffectSdkContext.h
Go to the documentation of this file.
1 //================================================================================
2 //
3 // (c) Copyright China Digital Video (Beijing) Limited, 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: NewAuto 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 {
78 
85 NVS_EXPORT @interface NvsEffectSdkContext : NSObject
86 
88 
99 + (BOOL)verifySdkLicenseFile:(NSString *)sdkLicenseFilePath;
100 
110 + (NvsEffectSdkContext *)sharedInstance:(NvsEffectSdkContextFlag)flags;
111 
119 + (void)destroyInstance;
120 
130 + (int)hasARModule;
131 
147 + (BOOL)initHumanDetection:(NSString *)modelFilePath
148  licenseFilePath:(NSString *)licenseFilePath
149  features:(int)features;
150 
164 + (BOOL)initHumanDetectionExt:(NSString *)modelFilePath
165  licenseFilePath:(NSString *)licenseFilePath
166  features:(int)features;
167 
181 + (BOOL)setupHumanDetectionData:(int)dataType
182  dataFilePath:(NSString *)dataFilePath;
183 
191 + (void)closeHumanDetection;
192 
206 + (void)getSdkVersion:(int *)majorVersion minorVersion:(int *)minorVersion revisionNumber:(int *)revisionNumber;
207 
216 - (NSArray *)getAllBuiltinVideoFxNames;
217 
230 - (NvsVideoEffect *)createVideoEffect:(NSString *)effectId aspectRatio:(NvsEffectRational)aspectRatio;
231 
246 - (NvsVideoEffect *)createVideoEffect:(NSString *)effectId aspectRatio:(NvsEffectRational)aspectRatio realTime:(BOOL)realTime;
247 
261 - (NvsVideoEffectTransition *)createVideoTransition:(NSString *)transitionId aspectRatio:(NvsEffectRational)aspectRatio;
262 
281 - (NvsVideoEffectAnimatedSticker *)createAnimatedSticker:(int64_t)inPoint duration:(int64_t)duration isPanoramic:(bool)isPanoramic packageId:(NSString *)packageId aspectRatio:(NvsEffectRational)aspectRatio;
282 
303 - (NvsVideoEffectAnimatedSticker *)createCustomAnimatedSticker:(int64_t)inPoint duration:(int64_t)duration isPanoramic:(bool)isPanoramic packageId:(NSString *)packageId customImageFilePath:(NSString *)customImageFilePath aspectRatio:(NvsEffectRational)aspectRatio;
304 
321 - (NvsVideoEffectCompoundCaption *)createCompoundCaption:(int64_t)inPoint duration:(int64_t)duration packageId:(NSString *)packageId aspectRatio:(NvsEffectRational)aspectRatio;
322 
348 - (NvsVideoEffectCaption *)createCaption:(NSString *)captionText inPoint:(int64_t)inPoint duration:(int64_t)duration captionStylePackageId:(NSString *)captionStylePackageId aspectRatio:(NvsEffectRational)aspectRatio;
349 
375 - (NvsVideoEffectCaption *)createPanoramicCaption:(NSString *)captionText inPoint:(int64_t)inPoint duration:(int64_t)duration captionStylePackageId:(NSString *)captionStylePackageId aspectRatio:(NvsEffectRational)aspectRatio;
376 
400 - (NvsVideoEffectCaption *)createModularCaption:(NSString *)captionText inPoint:(int64_t)inPoint duration:(int64_t)duration aspectRatio:(NvsEffectRational)aspectRatio;
401 
411 
421 - (NSString *)registerFontByFilePath:(NSString *)filePath;
422 
430 - (void)UnregisterFontByFilePath:(NSString *)filePath;
431 
444 + (BOOL)functionalityAuthorised:(NSString *)sdkFunctionName;
447 @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
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:87
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:86
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:94
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