|
@@ -15,26 +15,25 @@ import org.quartz.JobExecutionContext;
|
|
import org.quartz.JobExecutionException;
|
|
import org.quartz.JobExecutionException;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
|
-import java.io.IOException;
|
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
-import java.util.UUID;
|
|
|
|
|
|
|
|
public class MergeVideoJob implements Job {
|
|
public class MergeVideoJob implements Job {
|
|
@Autowired
|
|
@Autowired
|
|
private IVideoMergeTaskService videoMergeTaskService;
|
|
private IVideoMergeTaskService videoMergeTaskService;
|
|
@Autowired
|
|
@Autowired
|
|
private IMaterialInfoService materialInfoService;
|
|
private IMaterialInfoService materialInfoService;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
|
|
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
|
|
QueryWrapper<VideoMergeTask> queryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<VideoMergeTask> queryWrapper = new QueryWrapper<>();
|
|
- queryWrapper.in("status","Submitted","Transcoding");
|
|
|
|
|
|
+ queryWrapper.in("status", "Submitted", "Transcoding");
|
|
List<VideoMergeTask> list = videoMergeTaskService.list(queryWrapper);
|
|
List<VideoMergeTask> list = videoMergeTaskService.list(queryWrapper);
|
|
- if(list != null && list.size() > 0){
|
|
|
|
- for (VideoMergeTask videoMergeTask : list){
|
|
|
|
|
|
+ if (list != null && list.size() > 0) {
|
|
|
|
+ for (VideoMergeTask videoMergeTask : list) {
|
|
MpsUtils mpsUtils = new MpsUtils();
|
|
MpsUtils mpsUtils = new MpsUtils();
|
|
QueryJobListResponse.Job job = mpsUtils.getJobStatus(videoMergeTask.getJobId());
|
|
QueryJobListResponse.Job job = mpsUtils.getJobStatus(videoMergeTask.getJobId());
|
|
- if (job.getState().equals("TranscodeSuccess")){
|
|
|
|
- String url = "https://ctop-part.oss-cn-beijing.aliyuncs.com/"+job.getOutput().getOutputFile().getObject();
|
|
|
|
|
|
+ if (job.getState().equals("TranscodeSuccess")) {
|
|
|
|
+ String url = "https://ctop-part.oss-cn-beijing.aliyuncs.com/" + job.getOutput().getOutputFile().getObject();
|
|
|
|
|
|
try {
|
|
try {
|
|
String localPath = LoadFileUtil.downLoadFromUrl(url, PropertiesUtils.getValue("kuaishou_config", "video_sava_path"));
|
|
String localPath = LoadFileUtil.downLoadFromUrl(url, PropertiesUtils.getValue("kuaishou_config", "video_sava_path"));
|
|
@@ -48,14 +47,15 @@ public class MergeVideoJob implements Job {
|
|
materialInfo.setUserId(videoMergeTask.getUserId());
|
|
materialInfo.setUserId(videoMergeTask.getUserId());
|
|
materialInfo.setStatus(0);
|
|
materialInfo.setStatus(0);
|
|
materialInfo.setType("VIDEO");
|
|
materialInfo.setType("VIDEO");
|
|
- materialInfo.setMaterialName("合成"+ DateUtils.getMillis());
|
|
|
|
|
|
+ materialInfo.setMaterialName("合成" + DateUtils.getMillis());
|
|
materialInfoService.saveOrUpdate(materialInfo);
|
|
materialInfoService.saveOrUpdate(materialInfo);
|
|
|
|
+ Thread.sleep(3 * 1000);
|
|
materialInfoService.getFile(materialInfo);
|
|
materialInfoService.getFile(materialInfo);
|
|
videoMergeTask.setVideoUrl(url);
|
|
videoMergeTask.setVideoUrl(url);
|
|
videoMergeTask.setStatus(job.getState());
|
|
videoMergeTask.setStatus(job.getState());
|
|
videoMergeTask.setVideoId(materialInfo.getId());
|
|
videoMergeTask.setVideoId(materialInfo.getId());
|
|
videoMergeTaskService.updateById(videoMergeTask);
|
|
videoMergeTaskService.updateById(videoMergeTask);
|
|
- } catch (IOException e) {
|
|
|
|
|
|
+ } catch (Exception e) {
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
}
|
|
}
|