diff --git a/controller/api/bilirecorder_blueprint.py b/controller/api/bilirecorder_blueprint.py index 51be00f..2e3292c 100644 --- a/controller/api/bilirecorder_blueprint.py +++ b/controller/api/bilirecorder_blueprint.py @@ -13,7 +13,7 @@ from model import db from model.DanmakuClip import DanmakuClip from model.VideoClip import VideoClip from model.Workflow import Workflow -from workflow.bilibili import IS_LIVING, INSTANCE as bilibili_instance +from workflow.bilibili import IS_LIVING, IS_UPLOADING, INSTANCE as bilibili_instance from workflow.bilibili import VideoPart from workflow.danmaku import get_file_start from workflow.video import get_video_real_duration, duration_str_to_float @@ -61,6 +61,8 @@ def auto_submit_task(): print("[-]Workflow:", bili_record_workflow_item.id, "; Video:", video_clip.full_path, "; No Danmaku") if _future is not None: def _on_upload_finish(_f: "Future"): + if IS_UPLOADING.is_set() or IS_LIVING.is_set(): + return bilibili_instance.finish_upload( title=video_title, desc=VIDEO_DESC, diff --git a/workflow/bilibili.py b/workflow/bilibili.py index ea946f0..7923121 100644 --- a/workflow/bilibili.py +++ b/workflow/bilibili.py @@ -56,9 +56,8 @@ class Bilibili: :type no_reprint: int """ self.pre_upload(parts) - if not IS_LIVING.is_set(): - self.finish_upload(title, tid, tag, desc, source, cover, no_reprint) - self.clear() + self.finish_upload(title, tid, tag, desc, source, cover, no_reprint) + self.clear() def pre_upload(self, parts: "VideoPart", max_retry=5): """