| | |
| | | import com.iplatform.recvideo.util.PythonInvokeUtils; |
| | | import com.iplatform.recvideo.util.TestUtils; |
| | | import com.iplatform.recvideo.util.VideoFileUtils; |
| | | import com.walker.infrastructure.utils.FileUtils; |
| | | import com.walker.infrastructure.utils.StringUtils; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | |
| | | public int execute() throws Exception{ |
| | | if(!this.pythonLoadVideoDone){ |
| | | logger.debug("当前 pythonLoadVideoDone = false, 需要查询数据库是否已加载视频"); |
| | | this.pythonLoadVideoDone = this.pythonLoadVideoDone(this.batchId, VideoFileUtils.combineBatchPath(videoDataFolder, batchId)); |
| | | String batchPath = VideoFileUtils.combineBatchPath(videoDataFolder, batchId); |
| | | if(!FileUtils.isExist(batchPath)){ |
| | | // 文件夹不存在,或略该状态记录,2022-10-11 |
| | | this.ignoreTaskStatus(batchId); |
| | | logger.warn("文件夹不存在,忽略该批次记录,自动更新为'已完成', batchPath = " + batchPath); |
| | | return 1; |
| | | } |
| | | this.pythonLoadVideoDone = this.pythonLoadVideoDone(this.batchId, batchPath); |
| | | } |
| | | |
| | | // 1: 如果视频还未加载,则先加载视频 |
| | |
| | | } |
| | | } |
| | | if(StringUtils.isEmptyList(this.videoFolderInfoList)){ |
| | | logger.warn("视频分析文件夹内容为空,无法继续查询相似度结果! videoFolderInfoList = null"); |
| | | return -1; |
| | | logger.warn("视频分析文件夹内容为空,无法继续查询相似度结果!忽略该批次。 videoFolderInfoList = null"); |
| | | // return -1; |
| | | // 文件夹不没有任何视频文件,或略该状态记录,2022-10-11 |
| | | this.ignoreTaskStatus(batchId); |
| | | return 1; |
| | | } |
| | | |
| | | for(VideoFolderInfo v : this.videoFolderInfoList){ |
| | | this.videoIdList.add(v.getVideoId()); |
| | | } |
| | |
| | | * @param recVideoIdList 本批次处理原始视频id集合 |
| | | */ |
| | | protected abstract void writeRcVideoUser(String batchId, List<String> recVideoIdList); |
| | | |
| | | /** |
| | | * 忽略该状态批次,由于文件夹不存在等原因,不带处理,不要在这里打伴。 |
| | | * @param batchId |
| | | * @date 2022-10-11 |
| | | */ |
| | | protected abstract void ignoreTaskStatus(String batchId); |
| | | } |