123456789101112131415161718192021222324252627282930313233 |
- import os
- import time
- import threading
- from loguru import logger
- from common import Material
- from video_rewriting.video_processor import VideoProcessor
- # 控制读写速度的参数
- MAX_BPS = 120 * 1024 * 1024 # 120MB/s
- MAX_WORKERS = os.cpu_count() * 2 # 线程池最大工作线程数量
- READ_WRITE_CHUNK_SIZE = 1024 * 1024 # 每次读写的块大小 (1MB)
- SLEEP_INTERVAL = READ_WRITE_CHUNK_SIZE / MAX_BPS # 控制每次读写的延迟时间
- # 全局锁,用于同步读写操作
- lock = threading.Lock()
- def video_task_start():
- data = Material.feishu_list()[1]
- """处理视频任务,返回用户名并根据结果决定延迟时间"""
- while True:
- try:
- logger.info("[+] 开始执行任务")
- mark = VideoProcessor.main(data)
- logger.info(f"[+] 返回用户名: {mark}")
- time.sleep(10 if mark else 120) # 根据 mark 是否为空设置延迟
- except Exception as e:
- logger.error(f"[+] 处理任务时出现异常: {e}")
- time.sleep(10)
- continue
- if __name__ == '__main__':
- video_task_start()
|