Package com.shixing.sxedit
Class SXComposite
- java.lang.Object
-
- com.shixing.sxedit.SXComposite
-
public class SXComposite extends java.lang.Object合成
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SXTrackGroupaddNewGroup()组是顺序存储的,在末尾追加一个组SXTrackGroupaddNewGroupAt(int index)组是顺序存储的,因此可以在index所在的位置插入一个组SXTrackcloneTrack(java.lang.String trackId)通过轨道id复制一个新的轨道SXAudioTrackcreateAudioTrack(java.lang.String sourcePath, double duration)创建音频轨道SXMediaTrackcreateMediaTrack(java.lang.String sourcePath)创建媒体轨道,接受视频和图片素材SXStickerTrackcreateStickerTrack(java.lang.String sourcePath, double duration)创建贴纸轨道SXTextTrackcreateTextTrack(double duration)创建文字轨道voiddeleteGroup(java.lang.String groupId)通过id删除组,如果组内存在轨道则会移除所有轨道,但不会删除轨道voiddeleteTrack(java.lang.String trackId)通过轨道id删除一个轨道java.lang.StringgetCompositeId()获取合成 IddoublegetContentMaxTime(boolean excludeAudio)获取合成中轨道的最大结束时间doublegetDuration()合成时长doublegetFps()合成帧率longgetFrames()合成帧数SXTrackGroupgetGroup(java.lang.String groupId)通过id获取对应的组longgetNativeEditManager()SizegetSize()获取合成尺寸SXTrackgetTrack(java.lang.String trackId)通过轨道id 获取轨道SXTrackGroup[]groups()获取所有的组,不包含主轨道SXTrackhitTest(PointF point)SXTrackhitTest(PointF point, int type)voidmoveGroupTo(java.lang.String groupId, int index)移动一个组到指定的位置
-
-
-
Method Detail
-
getCompositeId
public java.lang.String getCompositeId()
获取合成 Id
-
getSize
public Size getSize()
获取合成尺寸
-
getFps
public double getFps()
合成帧率- Returns:
- 帧率
-
getDuration
public double getDuration()
合成时长- Returns:
- 时长单位为秒
-
getFrames
public long getFrames()
合成帧数- Returns:
- 帧数
-
getContentMaxTime
public double getContentMaxTime(boolean excludeAudio)
获取合成中轨道的最大结束时间- Parameters:
excludeAudio- 是否排除音频时长- Returns:
- 轨道的最大结束时间
-
getGroup
public SXTrackGroup getGroup(java.lang.String groupId)
通过id获取对应的组- Parameters:
groupId- 组的uuid- Returns:
- 组的实例对象,不存在对应的组时返回nullptr
-
addNewGroup
public SXTrackGroup addNewGroup()
组是顺序存储的,在末尾追加一个组- Returns:
- 新组的实例对象
-
addNewGroupAt
public SXTrackGroup addNewGroupAt(int index)
组是顺序存储的,因此可以在index所在的位置插入一个组- Parameters:
index- 位置的索引,index超出数组个数或小于0时添加到末尾- Returns:
- 新组的实例对象
-
deleteGroup
public void deleteGroup(java.lang.String groupId)
通过id删除组,如果组内存在轨道则会移除所有轨道,但不会删除轨道- Parameters:
groupId- 组 id
-
groups
public SXTrackGroup[] groups()
获取所有的组,不包含主轨道- Returns:
- 顺序存储的所有组
-
moveGroupTo
public void moveGroupTo(java.lang.String groupId, int index)移动一个组到指定的位置- Parameters:
groupId- 组的idindex- 组新的位置
-
createMediaTrack
public SXMediaTrack createMediaTrack(java.lang.String sourcePath)
创建媒体轨道,接受视频和图片素材图片轨道时长默认时长为3秒,其他素材使用素材自身时长
- Parameters:
sourcePath- 资源路径- Returns:
- 失败返回null
-
createStickerTrack
public SXStickerTrack createStickerTrack(java.lang.String sourcePath, double duration)
创建贴纸轨道贴纸轨道时长默认使用贴纸包自身时长
- Parameters:
sourcePath- 资源duration- 时长, 单位: 秒- Returns:
- 失败返回nullptr
-
createTextTrack
public SXTextTrack createTextTrack(double duration)
创建文字轨道- Parameters:
duration- 持续时长,文字轨道必须指定时长, 单位: 秒- Returns:
- 失败返回nullptr
-
createAudioTrack
public SXAudioTrack createAudioTrack(java.lang.String sourcePath, double duration)
创建音频轨道- Parameters:
sourcePath- 音频资源路径duration- 时长, 单位: 秒, 传 0 表示使用资源自身的时长- Returns:
- 失败返回nullptr
-
deleteTrack
public void deleteTrack(java.lang.String trackId)
通过轨道id删除一个轨道- Parameters:
trackId- 轨道id
-
cloneTrack
public SXTrack cloneTrack(java.lang.String trackId)
通过轨道id复制一个新的轨道- Parameters:
trackId- 轨道id- Returns:
- 新的轨道,复制失败时返回 null
-
getTrack
public SXTrack getTrack(java.lang.String trackId)
通过轨道id 获取轨道- Parameters:
trackId- 轨道id- Returns:
- 轨道,失败时返回 null
-
getNativeEditManager
public long getNativeEditManager()
-
-