一、动作滤镜特效
设置特效的方法为:
– (void) startEffect:(TXEffectType)type startTime:(float)startTime;- (void) stopEffect:(TXEffectType)type endTime:(float)endTime;//特效的类型(type 参数),在常量 TXEffectType 中有定义:typedef NS_ENUM(NSInteger,TXEffectType){ TXEffectType_ROCK_LIGHT, //动感光波 TXEffectType_DARK_DRAEM, //暗黑幻境 TXEffectType_SOUL_OUT, //灵魂出窍 TXEffectType_SCREEN_SPLIT,//视频分裂 TXEffectType_WIN_SHADOW, //百叶窗 TXEffectType_GHOST_SHADOW,//鬼影 TXEffectType_PHANTOM, //幻影 TXEffectType_GHOST, //幽灵 TXEffectType_LIGHTNING, //闪电 TXEffectType_MIRROR, //镜像 TXEffectType_ILLUSION, //幻觉};- (void) deleteLastEffect;- (void) deleteAllEffect;
调用deleteLastEffect()删除最后一次设置的滤镜特效。调用deleteAllEffect()删除所有设置的滤镜特效。
Demo 示例:
在1 – 2s之间应用第一种滤镜特效;在3 – 4s之间应用第2种滤镜特效;删除3 – 4s设置的滤镜特效。
//在1-2s之间应用第一种滤镜特效[_ugcEdit startEffect:TXEffectType_SOUL_OUT startTime:1.0];[_ugcEdit stopEffect:TXEffectType_SOUL_OUT startTime:2.0)];//在3-4s之间应用第2种滤镜特效[_ugcEdit startEffect:TXEffectType_SPLIT_SCREEN startTime:3.0];[_ugcEdit stopEffect:TXEffectType_SPLIT_SCREEN startTime:4.0];//删除3-4s设置的滤镜特效[_ugcEdit deleteLastEffect];
二、慢/快动作
你可以进行多段视频的慢速/快速播放,设置慢速/快速播放的方法为:
– (void) setSpeedList:(NSArray *)speedList;//TXSpeed 的参数如下:@interface TXSpeed: NSObject@property (nonatomic, assign) CGFloat startTime; //加速播放起始时间(s)@property (nonatomic, assign) CGFloat endTime; //加速播放结束时间(s)@property (nonatomic, assign) TXSpeedLevel speedLevel; //加速级别@end// 目前支持变速速度的几种级别,在常量 TXSpeedLevel 中有定义:typedef NS_ENUM(NSInteger, TXSpeedLevel) { SPEED_LEVEL_SLOWEST, // 极慢速-源视频的0.25倍速 SPEED_LEVEL_SLOW, // 慢速-源视频的0.5倍速 SPEED_LEVEL_NOMAL, // 标准-源视频的1倍速 SPEED_LEVEL_FAST, // 快速-源视频的1.5倍速 SPEED_LEVEL_FASTEST, // 极快速-源视频的2倍速};
Demo 示例:
// SDK 拥有支持多段变速的功能。 此 Demo 仅展示一段慢速播放 TXSpeed *speed =[[TXSpeed alloc] init]; speed.startTime = 1.0; speed.endTime = 3.0; speed.speedLevel = SPEED_LEVEL_SLOW; [_ugcEdit setSpeedList:@[speed]];
三、倒放
你可以将视频画面倒序播放,设置倒放的方法:
– (void) setReverse:(BOOL)isReverse;
Demo 示例:
[_ugcEdit setReverse:YES];
四、重复视频片段
你可以设置重复播放一段视频画面,声音不会重复播放。设置重复片段方法:
– (void) setRepeatPlay:(NSArray *)repeatList;//TXRepeat 的参数如下:@interface TXRepeat: NSObject@property (nonatomic, assign) CGFloat startTime; //重复播放起始时间(s)@property (nonatomic, assign) CGFloat endTime; //重复播放结束时间(s)@property (nonatomic, assign) int repeatTimes; //重复播放次数@end
Demo 示例:
TXRepeat *repeat = [[TXRepeat alloc] init];repeat.startTime = 1.0; repeat.endTime = 3.0;repeat.repeatTimes = 3; //重复次数[_ugcEdit setRepeatPlay:@[repeat]];