df0cc0c1b5
实现 v1.3 爆款视频参考风格分析 6 步管线: ① FFmpeg 抽关键帧(每 2s 一帧 + 场景切换帧) ② PySceneDetect ContentDetector(threshold=27) 镜头分割 ③ OpenCV Farneback 光流运镜检测(推/拉/摇/移/zoom/static + 强度) ④ librosa BPM 分析(>110 fast_cut / 80-110 medium / <80 slow_cinematic) ⑤ OSS 上传关键帧 + 豆包 VLM 色调/构图/光线分析 ⑥ 豆包 LLM 整合 style_guide JSON(失败走规则合成降级) 新增渲染参数映射: - 运镜 → ken_burns 参数(push_in→zoom_in_slow、tilt_up→pan+zoom 等 11 种) - 转场 → TransitionEngine xfade 名称(hard_cut→cut/dissolve/wipeleft 等) - 色调 → FFmpeg eq + colorchannelmixer 预设(5 套:warm_vintage/cool_fresh/high_contrast/soft_pastel/dramatic_cinematic) - BPM → BGM 选曲 BPM±5 提示 - build_render_params_for_clip() 按镜头索引聚合可直接喂 URS 的参数 降级链: - FFmpeg 抽帧失败 → VLM 路径;OpenCV 不可用 → static/low;librosa 不可用 → VLM 估计; - LLM/VLM 不可用 → 规则合成 style_guide;任意子步骤异常不抛,best-effort 返回最小可用 style_guide。 资源约束:参考视频 ≤60s/≤100MB,总超时 60s,临时帧 try/finally 清理。 依赖新增:scenedetect==0.6.4、librosa==0.10.2.post1、soundfile==0.12.1(requirements-worker.txt)。 orchestrator 改为从 apps.worker.viral_video.video_analyzer 导入 analyze_video_style, 传入 style_strength 透传 light/medium/strict 三档。 单测 48 条覆盖:映射函数/光流运镜判定/BPM 档位/规则合成/聚合输出/降级/临时文件清理。
xiaoxia-saas Worker
结构
worker_app/core/:worker 配置worker_app/celery_app.py:Celery 应用入口worker_app/tasks/:任务模块main.py:本地调试入口
当前任务
worker.healthcheck