MeiCam SDK For iOS  3.10.0
NvsAICutter.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: Feb 18. 2022
11 // Author: Meishe video team
12 //================================================================================
13 
14 #pragma once
15 #import "NvsObject.h"
16 
17 typedef enum {
36 
37 NVS_EXPORT @interface NvsTimeStampValue : NSObject
38 
39 @property(nonatomic, assign)int64_t timeStamp;
40 @property(nonatomic, assign)float value;
41 @property(nonatomic, strong)NSString *strValue;
42 
43 @end
44 
45 NVS_EXPORT @interface NvsUnitClip : NSObject
46 
47 @property(nonatomic, assign) int64_t start;
48 @property(nonatomic, assign) int64_t end;
49 @property(nonatomic, assign) int fileIdx;
50 @property(nonatomic, strong) NSDictionary <NSString*,NSArray<NvsTimeStampValue*>*>*formulaValues;
51 
52 @end
53 
54 NVS_EXPORT @interface NvsAITag : NSObject
55 
56 @property(nonatomic, strong) NSString *title;
57 @property(nonatomic, strong) NSString *userName;
58 @property(nonatomic, strong) NSDictionary <NSString *, NSString *>*tag;
59 
60 @end
61 
62 NVS_EXPORT @interface NvsClipInfo : NSObject
63 @property(nonatomic, strong) NSString *ID;
64 @property(nonatomic, strong) NSArray<NvsUnitClip*> *clips;
65 @property(nonatomic, strong) NvsAITag *tag;
66 
67 @end
68 
69 NVS_EXPORT @interface NvsLabelInfo : NSObject
70 @property(nonatomic, assign) int labelType;
71 @property(nonatomic, assign) int value;
72 @property(nonatomic, strong) NSString *strValue;
73 
74 @end
75 
77 
78 - (BOOL)readTemplates:(NSArray<NSString*>*)template_jsons;
79 
80 - (NSArray<NvsClipInfo*>*)matchTemplateHUD:(NSArray<NSString *>*)dataPaths extraParam:(NSArray<NSString *>*)extraParam;
81 
82 - (NSArray<NvsClipInfo*>*)matchTemplateARSky:(NSArray<NSString *>*)dataPaths extraParam:(NSArray<NSString *>*)extraParam;
83 
84 - (NSArray<NvsClipInfo*>*)matchTemplateVlog:(NSArray<NSString *>*)dataPaths extraParam:(NSArray<NSString *>*)extraParam;
85 
86 - (NSArray<NvsClipInfo*>*)matchTemplateColor:(NSArray<NSString *>*)dataPaths extraParam:(NSArray<NSString *>*)extraParam;
87 
88 - (NSArray<NvsClipInfo*>*)matchTemplateVlogIM:(NSArray<NSString *>*)dataPaths extraParam:(NSArray<NSString *>*)extraParam;
89 
90 - (NSArray<NvsClipInfo*>*)matchTemplateSmart:(NSArray<NSString *>*)dataPaths extraParam:(NSArray<NSString *>*)extraParam;
91 
92 - (NSArray<NvsLabelInfo*>*)induceAndRecommend:(NSArray<NSString *>*)dataPaths;
93 
94 - (void)setSmartTemplateCutPreference:(int)type;
95 
96 @end
NvsTimeStampValue::timeStamp
int64_t timeStamp
Definition: NvsAICutter.h:39
NvsAICutterFlag_LabelTypeFaceAge
@ NvsAICutterFlag_LabelTypeFaceAge
Definition: NvsAICutter.h:26
NvsAITag
Definition: NvsAICutter.h:55
NvsAICutterFlag_LabelTypeDateCn
@ NvsAICutterFlag_LabelTypeDateCn
Definition: NvsAICutter.h:29
NvsAICutterFlag_LabelTypeFace
@ NvsAICutterFlag_LabelTypeFace
Definition: NvsAICutter.h:24
NvsClipInfo
Definition: NvsAICutter.h:63
NvsAICutterFlag_LabelTypeDate
@ NvsAICutterFlag_LabelTypeDate
Definition: NvsAICutter.h:28
NvsAICutterFlag_LabelTypePlaceL1
@ NvsAICutterFlag_LabelTypePlaceL1
Definition: NvsAICutter.h:20
NvsObject
The NvsObject class inherits from the NSObject class in object-c.
Definition: NvsObject.h:78
NvsAICutterFlag_LabelTypeSkyAirplanecloud
@ NvsAICutterFlag_LabelTypeSkyAirplanecloud
Definition: NvsAICutter.h:34
NvsTimeStampValue::strValue
NSString * strValue
Definition: NvsAICutter.h:41
NvsAICutterFlag_LabelTypeSkyStatus
@ NvsAICutterFlag_LabelTypeSkyStatus
Definition: NvsAICutter.h:30
NvsAICutterFlag_LabelTypeFaceRace
@ NvsAICutterFlag_LabelTypeFaceRace
Definition: NvsAICutter.h:25
NvsAICutter
Definition: NvsAICutter.h:77
NvsAICutterFlag_LabelTypeSkyWeather
@ NvsAICutterFlag_LabelTypeSkyWeather
Definition: NvsAICutter.h:31
NvsObject.h
NvsTimeStampValue::value
float value
Definition: NvsAICutter.h:40
NvsTimeStampValue
Definition: NvsAICutter.h:38
NvsAICutterFlag_LabelTypeObjectL1
@ NvsAICutterFlag_LabelTypeObjectL1
Definition: NvsAICutter.h:22
NvsUnitClip
Definition: NvsAICutter.h:46
NvsAICutterFlag_LabelTypeSkyRainbow
@ NvsAICutterFlag_LabelTypeSkyRainbow
Definition: NvsAICutter.h:32
NvsAICutterFlag
NvsAICutterFlag
Definition: NvsAICutter.h:17
NvsAICutterFlag_LabelTypePlaceL2
@ NvsAICutterFlag_LabelTypePlaceL2
Definition: NvsAICutter.h:21
NVS_EXPORT
#define NVS_EXPORT
Definition: NvsCommonDef.h:20
NvsAICutterFlag_LabelTypeActivity
@ NvsAICutterFlag_LabelTypeActivity
Definition: NvsAICutter.h:19
NvsAICutterFlag_LabelTypePhoto
@ NvsAICutterFlag_LabelTypePhoto
Definition: NvsAICutter.h:18
NvsLabelInfo
Definition: NvsAICutter.h:70
NvsAICutterFlag_LabelTypeObjectL2
@ NvsAICutterFlag_LabelTypeObjectL2
Definition: NvsAICutter.h:23
NvsAICutterFlag_LabelTypeFaceGender
@ NvsAICutterFlag_LabelTypeFaceGender
Definition: NvsAICutter.h:27
NvsAICutterFlag_LabelTypeSkyFirecloud
@ NvsAICutterFlag_LabelTypeSkyFirecloud
Definition: NvsAICutter.h:33