美摄SDK For Android
3.14.0
|
视频轨道,视频片段的集合 更多...
Public 成员函数 | |
NvsVideoClip | appendClip (String filePath) |
在视频轨道尾部追加视频片段 更多... | |
NvsVideoClip | appendClip (String filePath, long trimIn, long trimOut) |
在视频轨道尾部追加指定长度的视频片段 更多... | |
NvsVideoClip | insertClip (String filePath, int clipIndex) |
在视频轨道上指定片段索引处插入视频片段 更多... | |
NvsVideoClip | insertClip (String filePath, long trimIn, long trimOut, int clipIndex) |
在视频轨道上指定片段索引处插入指定长度的视频片段 更多... | |
NvsVideoClip | addClip (String filePath, long inPoint) |
添加片段 更多... | |
NvsVideoClip | addClip (String filePath, long inPoint, long trimIn, long trimOut) |
添加指定长度的片段 更多... | |
NvsVideoClip | appendTimelineClip (NvsTimeline timeline) |
在视频轨道尾部追加时间线片段 更多... | |
NvsVideoClip | appendTimelineClip (NvsTimeline timeline, long trimIn, long trimOut) |
在视频轨道尾部追加指定长度的时间线片段 更多... | |
NvsVideoClip | insertTimelineClip (NvsTimeline timeline, int clipIndex) |
在视频轨道上指定片段索引处插入视频片段 更多... | |
NvsVideoClip | insertTimelineClip (NvsTimeline timeline, long trimIn, long trimOut, int clipIndex) |
在视频轨道上指定片段索引处插入指定长度的时间线片段 更多... | |
NvsVideoClip | addTimelineClip (NvsTimeline timeline, long inPoint) |
添加时间线片段 更多... | |
NvsVideoClip | addTimelineClip (NvsTimeline timeline, long inPoint, long trimIn, long trimOut) |
添加指定长度的时间线片段 更多... | |
NvsVideoClip | getClipByIndex (int clipIndex) |
通过索引获取视频片段 更多... | |
NvsVideoClip | getClipByTimelinePosition (long timelinePos) |
通过时间获取视频片段 更多... | |
NvsVideoTransition | setBuiltinTransition (int srcClipIndex, String transitionName) |
设置内嵌式转场 更多... | |
NvsVideoTransition | setPackagedTransition (int srcClipIndex, String packageId) |
设置资源包转场 更多... | |
NvsVideoTransition | setCustomVideoTransition (int srcClipIndex, NvsCustomVideoTransition.Renderer customVideoTransitionRender) |
设置自定义转场 更多... | |
NvsVideoTransition | getTransitionBySourceClipIndex (int srcClipIndex) |
根据视频片段索引位置获取转场信息 更多... | |
void | setEnableOriginalRender (boolean enable) |
开启按照视频片段的原始比例进行特效渲染 更多... | |
boolean | isOriginalRender () |
获取是否开启了原始比例渲染的模式 更多... | |
void | setProxyScale (NvsRational proxyScale) |
设置当前轨道渲染的代理级别 更多... | |
NvsRational | getProxyScale () |
获取当前轨道渲染的代理级别 更多... | |
NvsTrackCaption | getFirstCaption () |
获取轨道上的第一个字幕 更多... | |
NvsTrackCaption | getLastCaption () |
获取轨道上的最后一个字幕 更多... | |
NvsTrackCaption | getPrevCaption (NvsTrackCaption caption) |
获取轨道上的当前字幕的前一个字幕 更多... | |
NvsTrackCaption | getNextCaption (NvsTrackCaption caption) |
获取轨道上的当前字幕的前一个字幕 更多... | |
List< NvsTrackCaption > | getCaptionsByTimelinePosition (long timelinePos) |
根据轨道上的位置获得字幕列表。 更多... | |
NvsTrackCaption | addCaption (String captionText, long inPoint, long duration, String captionStylePackageId) |
在轨道上添加字幕 更多... | |
NvsTrackCaption | addPanoramicCaption (String captionText, long inPoint, long duration, String captionStylePackageId) |
在轨道上添加全景图字幕 更多... | |
NvsTrackCaption | addModularCaption (String captionText, long inPoint, long duration) |
在轨道上添加模块字幕 更多... | |
NvsTrackCaption | removeCaption (NvsTrackCaption caption) |
移除轨道上的字幕 更多... | |
NvsTrackCompoundCaption | getFirstCompoundCaption () |
获取轨道上的第一个复合字幕 更多... | |
NvsTrackCompoundCaption | getLastCompoundCaption () |
获取轨道上的最后一个复合字幕 更多... | |
NvsTrackCompoundCaption | getPrevCaption (NvsTrackCompoundCaption caption) |
获取轨道上的当前复合字幕的前一个复合字幕 更多... | |
NvsTrackCompoundCaption | getNextCaption (NvsTrackCompoundCaption caption) |
获取轨道上的当前复合字幕的前一个复合字幕 更多... | |
List< NvsTrackCompoundCaption > | getCompoundCaptionsByTimelinePosition (long timelinePos) |
根据轨道上的位置获得复合字幕列表 更多... | |
NvsTrackCompoundCaption | addCompoundCaption (long inPoint, long duration, String compoundCaptionPackageId) |
在轨道上添加字幕 更多... | |
NvsTrackCompoundCaption | removeCompoundCaption (NvsTrackCompoundCaption caption) |
移除轨道上的复合字幕 更多... | |
NvsTrackAnimatedSticker | getFirstAnimatedSticker () |
获取轨道上第一个动画贴纸 更多... | |
NvsTrackAnimatedSticker | getLastAnimatedSticker () |
获取轨道上最后一个动画贴纸 更多... | |
NvsTrackAnimatedSticker | getPrevAnimatedSticker (NvsTrackAnimatedSticker animatedSticker) |
获取轨道当前动画贴纸的前一个动画贴纸 更多... | |
NvsTrackAnimatedSticker | getNextAnimatedSticker (NvsTrackAnimatedSticker animatedSticker) |
获取轨道当前动画贴纸的后一个动画贴纸 更多... | |
List< NvsTrackAnimatedSticker > | getAnimatedStickersByTimelinePosition (long timelinePos) |
根据轨道上的位置获得动画贴纸列表 更多... | |
NvsTrackAnimatedSticker | addAnimatedSticker (long inPoint, long duration, String animatedStickerPackageId) |
在轨道上添加动画贴纸 更多... | |
NvsTrackAnimatedSticker | addPanoramicAnimatedSticker (long inPoint, long duration, String animatedStickerPackageId) |
在轨道上添加全景图动画贴纸 更多... | |
NvsTrackAnimatedSticker | addCustomAnimatedSticker (long inPoint, long duration, String animatedStickerPackageId, String customImagePath) |
在轨道上添加自定义动画贴纸 更多... | |
NvsTrackAnimatedSticker | addCustomPanoramicAnimatedSticker (long inPoint, long duration, String animatedStickerPackageId, String customImagePath) |
在轨道上添加自定义全景图动画贴纸 更多... | |
NvsTrackAnimatedSticker | removeAnimatedSticker (NvsTrackAnimatedSticker animatedSticker) |
移除轨道上的动画贴纸 更多... | |
NvsTrackVideoFx | getFirstTrackVideoFx () |
获取轨道上第一个轨道视频特效 更多... | |
NvsTrackVideoFx | getLastTrackVideoFx () |
获取轨道上最后一个轨道视频特效 更多... | |
NvsTrackVideoFx | getPrevTrackVideoFx (NvsTrackVideoFx videoFx) |
获取轨道上某个轨道视频特效的前一个轨道视频特效 更多... | |
NvsTrackVideoFx | getNextTrackVideoFx (NvsTrackVideoFx videoFx) |
获取轨道上某个轨道视频特效的下一个轨道视频特效 更多... | |
List< NvsTrackVideoFx > | getTrackVideoFxByPosition (long pos) |
根据轨道上的位置获得轨道视频特效列表 更多... | |
void | updateAudioForTrackVideoFx () |
更新当前轨道特效中携带的音频信息。 更多... | |
NvsTrackVideoFx | addBuiltinTrackVideoFx (long inPoint, long duration, String videoFxName) |
在轨道上添加内嵌的轨道视频特效 更多... | |
NvsTrackVideoFx | addBuiltinTrackVideoFx (long inPoint, long duration, String videoFxName, int flags) |
在轨道上添加内嵌的轨道视频特效 更多... | |
NvsTrackVideoFx | addPackagedTrackVideoFx (long inPoint, long duration, String videoFxPackageId) |
在轨道上添加资源包形式的轨道视频特效 更多... | |
NvsTrackVideoFx | addPackagedTrackVideoFx (long inPoint, long duration, String videoFxPackageId, int flags) |
在轨道上添加资源包形式的轨道视频特效 更多... | |
NvsTrackVideoFx | addCustomTrackVideoFx (long inPoint, long duration, NvsCustomVideoFx.Renderer customVideoFxRender) |
在轨道上添加自定义轨道视频特效 更多... | |
NvsTrackVideoFx | removeTrackVideoFx (NvsTrackVideoFx videoFx) |
移除轨道上的轨道视频特效 更多... | |
![]() | |
int | getType () |
获取轨道类型 更多... | |
int | getIndex () |
获取轨道索引 更多... | |
long | getDuration () |
获取轨道长度 更多... | |
int | getClipCount () |
获取轨道上的片段数量 更多... | |
long | changeInPoint (int clipIndex, long newInPoint) |
修改片段时间线上的入点.如果clip没有此函数授权返回当前的inpoint,newInpoint如果小于前一个clip的outpoint,直接返回前一个clip的outpoint,如果当前clip是第0个clip,则newInPoint最小为0。此函数内部会根据newinpoint计算出一个新的trimIn,并修改clip的trimIn,如果新的trimIn小于0时会返回trimIn为0时对应的Inpoint值,如果newinpoint大于trimOut则返回trimOut-1对应的inPoint值 更多... | |
long | changeOutPoint (int clipIndex, long newOutPoint) |
修改片段时间线上的出点,如果clip没有此函数授权返回当前的outpoint,如果newOutpoint小于clip的outPoint则newOutPoint不会小于inpoint+1,如果clip后面还有nextclip,则newOutPoint不会大于nextClip的inpoint,当前clip如果是最后一个clip最终outpoint的就是timeline的duration,如果newOutPoint大于clip的outpoint则视频末尾会静帧。此函数内部会根据newOutpoint计算出一个新的trimOut,如果clip的inpoint不等于下一个clip的outpoint会移除中间的转场. 更多... | |
boolean | splitClip (int clipIndex, long splitPoint) |
分割指定的片段 更多... | |
boolean | removeClip (int clipIndex, boolean keepSpace) |
移除指定的片段,主题的片头片尾是不允许移除的 更多... | |
boolean | removeRange (long startTimelinePos, long endTimelinePos, boolean keepSpace) |
移除指定的区间内的所有片段,如果片段只有部分与该区间重合则调整其时间线入点或者出点,如果片段只有部分与该区间重合则调整其时间线入点或者出点,如果片段包含主题片头片尾部分,会移除失败,startTimelinePos < 0 或者 endTimelinePos <= startTimelinePos 也会移除失败. 更多... | |
boolean | moveClip (int clipIndex, int destClipIndex) |
移动指定的片段,交换输入的两个位置,会影响时间线上片段的排布。主题的片头片尾不能移动,clipIndex和destClipIndex不能于等于clipcount 更多... | |
boolean | moveClip (int clipIndex, long targetTimelinePos, boolean isInsertTarget, boolean keepSpace) |
移动指定的片段到输入的位置,clipIndex大于等于clipcount会移除失败,targetTimelinePos等于0时,会被移动到0的位置,主题的片头片尾不能被移动。 更多... | |
boolean | removeAllClips () |
移除所有片段 更多... | |
void | setVolumeGain (float leftVolumeGain, float rightVolumeGain) |
设置音量,最终的音量值是track音量乘以clip音量 更多... | |
NvsVolume | getVolumeGain () |
获取音量,最终的音量值是track音量乘以clip音量 更多... | |
![]() | |
void | setAttachment (String key, Object value) |
为NvsObject对象添加附加的数据,用来标识NvsObject的对象或者其他用途 更多... | |
void | setTemplateAttachment (String key, String value) |
为NvsObject对象添加模板资源的附加数据,用来标识NvsObject的模板数据 更多... | |
Object | getAttachment (String key) |
获取NvsObject的附件 更多... | |
String | getTemplateAttachment (String key) |
获取NvsObject的模板资源附件 更多... | |
静态 Public 属性 | |
轨道类型 | |
static final int | TRACK_ADD_VIDEO_FX_FLAGS_RENDER_AT_CLIP_RAW_FILTER = 1 |
![]() | |
static final int | TRACK_TYPE_VIDEO = 0 |
视频轨道 更多... | |
static final int | TRACK_TYPE_AUDIO = 1 |
音频轨道 更多... | |
![]() | |
static final String | TEMPLATE_KEY_REPLACE_ID = "MSTemplate-ReplaceId" |
static final String | TEMPLATE_KEY_FOOTAGE_CAN_REPLACE = "MSTemplate-FootageCanReplace" |
static final String | TEMPLATE_KEY_FOOTAGE_ID = "MSTemplate-FootageId" |
static final String | TEMPLATE_KEY_FOOTAGE_NAME = "MSTemplate-FootageName" |
static final String | TEMPLATE_KEY_FOOTAGE_M3U8_NAME = "MSTemplate-FootageM3U8Name" |
static final String | TEMPLATE_KEY_FOOTAGE_TAGS = "MSTemplate-FootageTags" |
static final String | TEMPLATE_KEY_FOOTAGE_TYPE = "MSTemplate-FootageType" |
static final String | TEMPLATE_KEY_FOOTAGE_NEED_REVERSE = "MSTemplate-FootageNeedReverse" |
static final String | TEMPLATE_KEY_CLIP_RAW_WIDTH = "MSTemplate-ClipRawWidth" |
static final String | TEMPLATE_KEY_CLIP_RAW_HEIGHT = "MSTemplate-ClipRawHeight" |
static final String | TEMPLATE_KEY_VOLUME_TYPE = "MSTemplate-VolumeType" |
static final String | TEMPLATE_KEY_FX_GROUP = "MSTemplate-FxGroup" |
static final String | TEMPLATE_KEY_BEST_SEEK_TIME = "MSTemplate-BestSeekTime" |
static final String | TEMPLATE_KEY_MASK_TYPE = "MSTemplate-MaskType" |
static final String | TEMPLATE_VALUE_MASK_TYPE_LINE = "MSTemplate-MaskType-Line" |
static final String | TEMPLATE_VALUE_MASK_TYPE_MIRROR = "MSTemplate-MaskType-Mirror" |
static final String | TEMPLATE_VALUE_MASK_TYPE_CIRCLE = "MSTemplate-MaskType-Circle" |
static final String | TEMPLATE_VALUE_MASK_TYPE_RECT = "MSTemplate-MaskType-Rect" |
static final String | TEMPLATE_VALUE_MASK_TYPE_HEART = "MSTemplate-MaskType-Heart" |
static final String | TEMPLATE_VALUE_MASK_TYPE_STAR = "MSTemplate-MaskType-Star" |
static final String | TEMPLATE_KEY_TRANS_TYPE_CUT = "MSTemplate-TransType-Cut" |
static final String | TEMPLATE_KEY_CURVE_SPEED_TYPE = "MSTemplate-CurveSpeedType" |
static final String | TEMPLATE_VALUE_CURVE_SPEED_TYPE_CUSTOM = "MSTemplate-CurveSpeedType-Custom" |
static final String | TEMPLATE_VALUE_CURVE_SPEED_TYPE_MONTAGE = "MSTemplate-CurveSpeedType-Montage" |
static final String | TEMPLATE_VALUE_CURVE_SPEED_TYPE_HERO = "MSTemplate-CurveSpeedType-Hero" |
static final String | TEMPLATE_VALUE_CURVE_SPEED_TYPE_BULLET = "MSTemplate-CurveSpeedType-bullet" |
static final String | TEMPLATE_VALUE_CURVE_SPEED_TYPE_PLUS = "MSTemplate-CurveSpeedType-Plus" |
static final String | TEMPLATE_VALUE_CURVE_SPEED_TYPE_IN = "MSTemplate-CurveSpeedType-In" |
static final String | TEMPLATE_VALUE_CURVE_SPEED_TYPE_OUT = "MSTemplate-CurveSpeedType-Out" |
额外继承的成员函数 | |
![]() | |
void | setInternalObject (long internalObject) |
long | getInternalObject () |
![]() | |
long | m_internalObject = 0 |
视频轨道,视频片段的集合
视频轨道是容纳视频片段的实体,可以添加、插入、删移多个视频片段。视频轨道随着片段的增加不断延展,而片段与片段之间可进行视频转场设置。 添加包裹转场时,都得先安装,安装成功后获取packageId才能使用,而内建转场(builtin)只需获取转场名称即可使用。 注:视频片段的索引都是从0开始。
|
inline |
在轨道上添加动画贴纸
inPoint | 动画贴纸在轨道上的入点(单位微秒) |
duration | 动画贴纸的显示时长(单位微秒) |
animatedStickerPackageId | 动画贴纸包Id |
|
inline |
在轨道上添加内嵌的轨道视频特效
inPoint | 轨道视频特效在轨道上的入点(单位微秒) |
duration | 轨道视频特效显示的时长(单位微秒) |
videoFxName | 内嵌的轨道视频特效名字 |
|
inline |
在轨道上添加内嵌的轨道视频特效
inPoint | 轨道视频特效在轨道上的入点(单位微秒) |
duration | 轨道视频特效显示的时长(单位微秒) |
videoFxName | 内嵌的轨道视频特效名字 |
flags | 添加特效时的标志 |
|
inline |
在轨道上添加字幕
captionText | 字幕的文字 |
inPoint | 字幕在轨道上的起点(单位微秒) |
duration | 字幕显示时长(单位微秒) |
captionStylePackageId | 字幕样式包Id,不存在的话,可以传空字符串或者null |
|
inline |
添加片段
filePath | 片段路径 对于Android里的片段路径,有两种方式: |
a. 在本地程序路径下创建一个assets文件夹,一般放在跟res文件夹同级的目录里。可将相应的音视频等资源放在里面,路径形式:"assets:/video20170406101714.mp4"
b. 通过绝对路径导入手机里的音视频等资源,路径形式:"/storage/Media/DCIM/IMG_0646.MP4"
inPoint | 片段在时间线上的入点(单位微秒) 对于片段在时间线上的入点与出点的理解,具体请参见裁剪入点与出点(trimIn and trimOut)专题。 |
|
inline |
添加指定长度的片段
filePath | 片段路径。对于片段路径方式,请参见addClip()的参数filePath。 |
inPoint | 片段在时间线上的入点(单位微秒) |
trimIn | 片段裁剪入点(单位微秒) |
trimOut | 片段裁剪出点(单位微秒) |
如上图,轨道上有三个视频片段C1、C2、C3,以及待添加的片段C4。C4片段上箭头所指处即为片段裁剪的的入点和出点,轨道上箭头所指即为片段在时间线上的入点,裁剪后将对应片段添加到轨道上。代码实现如下: NvsVideoTrack videoTrack; //videoTrack这里省略创建 videoTrack.addClip(filepath,inPoint,trimIn,trimOut);//filepath为片段C4的路径,inPoint为图中轨道上箭头所指位置的值,trimIn和trimOut为上图C4片段上箭头所指位置处的值
添加后结果如下:
|
inline |
在轨道上添加字幕
inPoint | 字幕在轨道上的起点(单位微秒) |
duration | 字幕显示时长(单位微秒) |
captionStylePackageId | 字幕样式包Id,不存在的话,可以传空字符串或者null |
|
inline |
在轨道上添加自定义动画贴纸
inPoint | 自定义动画贴纸在轨道上的入点(单位微秒) |
duration | 自定义动画贴纸的显示时长(单位微秒) |
animatedStickerPackageId | 自定义动画贴纸包Id |
customImagePath | 自定义动画贴纸图像路径(可以是jpg、png图像,或者美摄sdk内部支持的动态caf格式图像) |
|
inline |
在轨道上添加自定义全景图动画贴纸
inPoint | 动画贴纸在轨道上的起点(单位微秒) |
duration | 动画贴纸的显示时长(单位微秒) |
animatedStickerPackageId | 动画贴纸资源包ID |
customImagePath | 自定义动画贴纸图像路径(可以是jpg、png图像,或者美摄sdk内部支持的动态caf格式图像) |
|
inline |
在轨道上添加自定义轨道视频特效
inPoint | 轨道视频特效在轨道上的入点(单位微秒) |
duration | 轨道视频特效的时长(单位微秒) |
customVideoFxRender | 用户实现的自定义视频特效渲染器接口 |
|
inline |
在轨道上添加模块字幕
captionText | 字幕的文字 |
inPoint | 字幕在轨道上的起点(单位微秒) |
duration | 字幕显示时长(单位微秒) |
|
inline |
在轨道上添加资源包形式的轨道视频特效
inPoint | 轨道视频特效在轨道上的入点(单位微秒) |
duration | 轨道视频特效显示的时长(单位微秒) |
videoFxPackageId | 轨道视频特效资源包Id |
|
inline |
在轨道上添加资源包形式的轨道视频特效
inPoint | 轨道视频特效在轨道上的入点(单位微秒) |
duration | 轨道视频特效显示的时长(单位微秒) |
videoFxPackageId | 轨道视频特效资源包Id |
flags | 添加特效时的标志 |
|
inline |
在轨道上添加全景图动画贴纸
inPoint | 动画贴纸在轨道上的起点(单位微秒) |
duration | 动画贴纸的显示时长(单位微秒) |
animatedStickerPackageId | 动画贴纸资源包ID |
|
inline |
在轨道上添加全景图字幕
captionText | 字幕的文字 |
inPoint | 字幕在轨道上的入点(单位微秒) |
duration | 字幕的显示时长(单位微秒) |
captionStylePackageId | 字幕样式包Id,不存在的话,可以传空字符串或者null |
|
inline |
添加时间线片段
timeline | 待添加时间线 |
inPoint | 片段在时间线上的入点(单位微秒) |
|
inline |
添加指定长度的时间线片段
timeline | 待添加时间线 |
inPoint | 片段在时间线上的入点(单位微秒) |
trimIn | 片段裁剪入点(单位微秒) |
trimOut | 片段裁剪出点(单位微秒) |
|
inline |
在视频轨道尾部追加视频片段
filePath | 视频片段路径。对于片段路径方式,请参见addClip()的参数filePath。 |
上图中视频轨道上有三个片段,分别为C1,C2,C3, 在视频轨道尾部追加一个新的片段C4 NvsVideoTrack m_videoTrack;//m_videoTrack省略创建 NvsVideoClip m_videoClip; m_videoClip = m_videoTrack.appendClip(filepath) //filepath为片段C4的路径。 追加后变为:
|
inline |
在视频轨道尾部追加指定长度的视频片段
filePath | 视频片段路径。对于片段路径方式,请参见addClip()的参数filePath。 |
trimIn | 视频片段的裁剪入点(单位微秒) |
trimOut | 视频片段的裁剪出点(单位微秒) |
|
inline |
|
inline |
在视频轨道尾部追加指定长度的时间线片段
timeline | 待添加的时间线。 |
trimIn | 视频片段的裁剪入点(单位微秒) |
trimOut | 视频片段的裁剪出点(单位微秒) |
|
inline |
根据轨道上的位置获得动画贴纸列表
trackPos | 轨道上的位置(单位微秒) |
|
inline |
根据轨道上的位置获得字幕列表。
trackPos | 轨道上的位置(单位微秒) |
|
inline |
通过索引获取视频片段
clipIndex | 视频片段索引 片段索引取值范围: NvsVideoTrack m_videoTrack;//m_videoTrack omitted creation int clipCount = m_videoTrack.getClipCount(); The value of clipIndex is [0, clipCount-1] |
|
inline |
|
inline |
根据轨道上的位置获得复合字幕列表
trackPos | 轨道上的复合位置(单位微秒) |
|
inline |
|
inline |
|
inline |
|
inline |
获取轨道上第一个轨道视频特效
|
inline |
|
inline |
|
inline |
|
inline |
获取轨道上最后一个轨道视频特效
|
inline |
|
inline |
|
inline |
获取轨道上的当前复合字幕的前一个复合字幕
caption | 轨道上当前复合字幕对象 |
|
inline |
获取轨道上某个轨道视频特效的下一个轨道视频特效
videoFx | 轨道视频特效对象 |
|
inline |
|
inline |
|
inline |
获取轨道上的当前复合字幕的前一个复合字幕
caption | 轨道上当前复合字幕对象 |
|
inline |
获取轨道上某个轨道视频特效的前一个轨道视频特效
videoFx | 轨道视频特效对象 |
|
inline |
|
inline |
根据轨道上的位置获得轨道视频特效列表
pos | 轨道上的位置(单位微秒) |
|
inline |
|
inline |
在视频轨道上指定片段索引处插入视频片段
filePath | 视频片段路径。对于片段路径方式,请参见addClip()的参数filePath。 |
clipIndex | 插入后片段的索引 |
上图中轨道上有三个视频片段C1、C2、C3,待插入的片段记为C4。如果在C1之前插入,则clipIndex值为0,其它以此类推。相应代码实现如下: NvsVideoTrack m_videoTrack;//m_videoTrack省略创建 int clipCount = m_videoTrack.getClipCount(); NvsVideoClip m_videoClip; m_videoClip = m_videoTrack.insertClip(filepath,0); //filepath为片段C4的路径,clipIndex取值为[0,clipCount-1] 插入后变为:
|
inline |
在视频轨道上指定片段索引处插入指定长度的视频片段
filePath | 视频片段路径。对于片段路径方式,请参见addClip()的参数filePath。 |
clipIndex | 插入片段索引 |
trimIn | 视频片段的裁剪入点(单位微秒) |
trimOut | 视频片段的裁剪出点(单位微秒) |
上图中轨道上有三个视频片段C1、C2、C3,以及待插入的片段C4。C4片段上箭头所指处即为片段裁剪的的入点和出点,裁剪后将对应片段插入到轨道上。注意:裁剪入点和出点值必须在此片段的时长范围里,且裁剪入点值必须小于裁剪出点值。实现代码如下: NvsVideoTrack m_videoTrack;//m_videoTrack省略创建 int clipCount = m_videoTrack.getClipCount(); NvsVideoClip m_videoClip; m_videoClip = m_videoTrack.insertClip(filepath,trimIn,trimOut,0);//filepath为片段C4的路径,trimIn和trimOut为上图C4片段上箭头所指位置处的值,clipIndex取值为[0,clipCount-1] 插入后变为:
|
inline |
在视频轨道上指定片段索引处插入视频片段
timeline | 待插入的时间线。 |
clipIndex | 插入后片段的索引 |
|
inline |
在视频轨道上指定片段索引处插入指定长度的时间线片段
timeline | 待插入的时间线 |
clipIndex | 插入片段索引 |
trimIn | 视频片段的裁剪入点(单位微秒) |
trimOut | 视频片段的裁剪出点(单位微秒) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
移除轨道上的轨道视频特效
videoFx | 要移除的轨道视频特效对象 |
|
inline |
设置内嵌式转场
srcClipIndex | 源视频片段索引 |
transitionName | 转场名称。获取视频转场名称,请参见getAllBuiltinVideoTransitionNames()或内建特效名称列表。注意:转场名称若设为空字符串,则删除原有转场。 |
例如:下图中轨道上有四个视频片段,分别为C1,C2,C3,C4,其中片段C1、C2、C3相邻,而片段C3与C4之间存在空隙。若在C1和C2之间 设置一个内嵌式转场后变为:
NvsVideoTrack m_videoTrack;//m_videoTrack省略创建 int clipCount = m_videoTrack.getClipCount(); NvsVideoTransition m_videoTransition; m_videoTransition = m_videoTrack.setBuiltinTransition(0,transitionName) //srcClipIndex取值范围为(1,clipCount-1),transitionName为要设置的转场的名称
若在C2和C3之间添加转场,则索引为1。转场只能设置在两个相邻片段之间,上图中的C3和C4片段之间存在空隙,不能在两片段之间添加转场。
|
inline |
设置自定义转场
srcClipIndex | 源视频片段索引 |
customVideoTransitionRender | 用户自定义转场特效 |
|
inline |
开启按照视频片段的原始比例进行特效渲染
enable | 是否开启 |
|
inline |
设置资源包转场
srcClipIndex | 源视频片段索引 |
packageId | 转场资源包ID 若packageId为空,则删除该视频片段处的转场;若packageId设为"theme",则该视频片段处的转场设为当前主题的转场, 若无主题,则删除该视频片段处的转场 |
|
inline |
设置当前轨道渲染的代理级别
proxyScale | 代理级别 |
|
inline |
更新当前轨道特效中携带的音频信息。
|
static |
在片段渲染Raw filter时候,渲染这个特效