- 论坛徽章:
- 80
|
2.拼接三段视频代码
public boolean newClipMethod(String dstFile,String srcFile){
try {
double[] results = ClipMp4Util.startTrim(new File(dstFile),new File(srcFile),mTimeStart,mTimeEnd);
if(results == null){
return false;
}
Log.d("","newClipMethod-->results[0]-mTimeStart"+results[0]+" "+mTimeStart/1000);
Log.d("","newClipMethod-->mTimeEnd-results[1]"+mTimeEnd/1000+" "+results[1]);
//下面是短截取然后拼接的逻辑
if(results[0]-mTimeStart/1000>GAP){
String startMp4 = <span style="font-family: Arial, Helvetica, sans-serif;">getMp4ByFFmpeg(</span><span style="font-family: Arial, Helvetica, sans-serif;">mTimeStart,results[0]*1000,begin);</span>
}
if(mTimeEnd/1000-results[1]>GAP){
String endMp4 = <span style="font-family: Arial, Helvetica, sans-serif;">getMp4ByCode(</span><span style="font-family: Arial, Helvetica, sans-serif;">results[1]*吧1000,mTimeEnd,end);</span>
}
String[] videos = new String[3];
videos[0] = begin;
videos[1] = dst;
videos[2] = end;
appendVideo(videos);
} catch (Exception e) {
//如果不是同一格式的视频,这里合成会报错,直接返回中间视频.所以长视频选取长误差的方式,前后都多截取一段
Log.d("","new Method exception-->"+e);
e.printStackTrace();
}
return true;
} |
|