public class TuSdkMediaFileCuterTimeline extends TuSdkMediaTimeline
限定符和类型 | 字段和说明 |
---|---|
static int |
LINEAR
当前时间轴计算为线性
|
static int |
OVERLAP
当前时间轴计算为重叠
|
mOrginEndScaling, mOrginSlices, mOrginStartScaling, mTaskID
构造器和说明 |
---|
TuSdkMediaFileCuterTimeline()
媒体文件剪切器时间轴
|
TuSdkMediaFileCuterTimeline(float start,
float end)
设置时间比例裁剪区域
|
TuSdkMediaFileCuterTimeline(int calcMode)
带有计算模式的时间轴
|
TuSdkMediaFileCuterTimeline(int calcMode,
TuSdkMediaTimeline timeline)
带有计算模式和媒体时间轴的初始化
|
TuSdkMediaFileCuterTimeline(java.util.List<TuSdkMediaTimeSlice> slices)
设置多个时间裁剪区域
|
TuSdkMediaFileCuterTimeline(long initUs)
创建时间轴
|
TuSdkMediaFileCuterTimeline(TuSdkMediaTimeline timeline)
媒体时间轴
|
TuSdkMediaFileCuterTimeline(TuSdkMediaTimeSlice slice)
设置时间裁剪区域
|
限定符和类型 | 方法和说明 |
---|---|
TuSdkMediaTimeSliceEntity |
existenceWithInputTimeUs(long timeUs)
完全在边界内判断 starUs<= timeUs <= endUs
|
TuSdkMediaTimeSliceEntity |
firstSlice()
获取第一个时间片段
|
void |
fixTimeSlices(TuSdkMediaExtractor extractor,
boolean supportReverse)
按视频时间修正时间轴 [保持音视频最小误差]
|
void |
fixTimeSlices(TuSdkMediaExtractor extractor,
boolean supportReverse,
boolean supportPreview)
按视频时间修正时间轴 [保持音视频最小误差]
|
void |
fresh(TuSdkMediaTimeline timeline)
刷新时间轴
|
int |
getCalcMode()
获取当前时间轴计算模式
|
java.util.List<TuSdkMediaTimeSliceEntity> |
getFinalSlices() |
long |
getOutputDurationUs()
输出媒体真实时长 [微秒]
|
long |
getOverSliceDuration()
获取重复区间的时间片
|
long |
getRemoveOverSliceDurationUs()
输出媒体的去除重复时间轴的时长
|
boolean |
isFixTimeSlices()
是否已初始化时间轴
|
void |
reset()
重置到输入状态
|
void |
setProgressOutputMode(int calcMode)
设置时间轴计算模式
|
TuSdkMediaTimeSliceEntity |
sliceAudioWithInputTimeUs(long timeUs,
boolean isAudioRever)
按输入时间查找输出时间片段
|
long |
sliceWithCalcModeOutputTimeUs(long timeUs)
根据计算模式反算输出时间
|
TuSdkMediaTimeSliceEntity |
sliceWithInputTimeUs(long timeUs)
按输入时间查找输出时间片段
|
TuSdkMediaTimeSliceEntity |
sliceWithOutputTimeUs(long timeUs)
按计算的输出时间查找时间片段
|
append, append, append, append, copy, getInputDurationUs, getOrginSlices, getTaskID, indexOfOrginSlices, remove, remove, remove, setInputDurationUs
public static final int LINEAR
public static final int OVERLAP
public TuSdkMediaFileCuterTimeline()
public TuSdkMediaFileCuterTimeline(int calcMode)
calcMode
- 计算模式 LINEAR OVERLAPpublic TuSdkMediaFileCuterTimeline(int calcMode, TuSdkMediaTimeline timeline)
calcMode
- 计算模式 LINEAR OVERLAPtimeline
- 媒体时间轴public TuSdkMediaFileCuterTimeline(TuSdkMediaTimeline timeline)
public TuSdkMediaFileCuterTimeline(float start, float end)
start
- 开始时间比例 [0 <= start < 1] 小于0或大于等于时默认从开头读取,end
- 结束时间比例 [start < end < 1] 小于0或小等于start时默认读取到结尾public TuSdkMediaFileCuterTimeline(java.util.List<TuSdkMediaTimeSlice> slices)
public TuSdkMediaFileCuterTimeline(TuSdkMediaTimeSlice slice)
public TuSdkMediaFileCuterTimeline(long initUs)
initUs
- 初始化时间public long getOutputDurationUs()
public long getRemoveOverSliceDurationUs()
public long getOverSliceDuration()
public void setProgressOutputMode(int calcMode)
public int getCalcMode()
public void fresh(TuSdkMediaTimeline timeline)
TuSdkMediaTimeline
fresh
在类中 TuSdkMediaTimeline
public void reset()
public TuSdkMediaTimeSliceEntity firstSlice()
public TuSdkMediaTimeSliceEntity sliceWithOutputTimeUs(long timeUs)
public TuSdkMediaTimeSliceEntity sliceWithInputTimeUs(long timeUs)
public TuSdkMediaTimeSliceEntity sliceAudioWithInputTimeUs(long timeUs, boolean isAudioRever)
public TuSdkMediaTimeSliceEntity existenceWithInputTimeUs(long timeUs)
public long sliceWithCalcModeOutputTimeUs(long timeUs)
timeUs
- 未加任何特效的输出时间public boolean isFixTimeSlices()
public void fixTimeSlices(TuSdkMediaExtractor extractor, boolean supportReverse, boolean supportPreview)
extractor
- 媒体分离器接口supportReverse
- 是否支持倒序supportPreview
- 是否支持预览,预览时会将指定时间跳转到最接近的关键帧public void fixTimeSlices(TuSdkMediaExtractor extractor, boolean supportReverse)
extractor
- 媒体分离器接口supportReverse
- 是否支持倒序public java.util.List<TuSdkMediaTimeSliceEntity> getFinalSlices()