时长信息转到video主体 增加多线程获取时间方法

This commit is contained in:
wangjinlei
2024-04-26 10:44:48 +08:00
parent 6b2e37b29b
commit 5c7d424f5e
11 changed files with 154 additions and 42 deletions

View File

@@ -0,0 +1,30 @@
package com.peanut.common.service;
import com.aliyun.vod20170321.models.GetVideoPlayAuthResponse;
import com.peanut.common.utils.SpdbUtil;
import com.peanut.modules.common.dao.CourseCatalogueChapterVideoDao;
import com.peanut.modules.common.entity.CourseCatalogueChapterVideoEntity;
import com.peanut.modules.common.entity.UserCourseVideoPositionEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@Service
public class AsyncService {
@Autowired
private CourseCatalogueChapterVideoDao courseCatalogueChapterVideoDao;
@Async
public void pushDurationToVideo(Integer videoId) throws Exception {
CourseCatalogueChapterVideoEntity courseCatalogueChapterVideoEntity = courseCatalogueChapterVideoDao.selectById(videoId);
if(courseCatalogueChapterVideoEntity.getType()==1){
GetVideoPlayAuthResponse p = SpdbUtil.getPlayAuth(courseCatalogueChapterVideoEntity.getVideo());
int i = p.getBody().getVideoMeta().getDuration().intValue();
courseCatalogueChapterVideoEntity.setDuration(i);
}else{
Integer mp4Duration = SpdbUtil.getMp4Duration("https://ehh-private-01.oss-cn-beijing.aliyuncs.com/video/taiHuClass/" + courseCatalogueChapterVideoEntity.getVideo());
courseCatalogueChapterVideoEntity.setDuration(mp4Duration);
}
courseCatalogueChapterVideoDao.updateById(courseCatalogueChapterVideoEntity);
}
}