[重构] 运动事件驱动架构 - 整段素材按 ss_motion_events 分割运动片段再分析(不再整段送云端): oracle_db 加 motion_event_id/camera_id 列 + get_motion_events_in_range/has_unfinished_motion_in_range/get_video_by_motion_event_id; video_processor 素材→分割/片段→分析双分支(ffmpeg -c:v copy -c:a aac 保留音频); video_queue 片段入队; config 加 motion_segment 块

This commit is contained in:
ericwyuan
2026-08-22 12:19:17 +08:00
parent 2d9d96de56
commit a1523b46c8
5 changed files with 372 additions and 59 deletions

View File

@@ -214,9 +214,12 @@ class VideoQueue:
"started_at": None}
self.db.record_activity('queue', 'process_start', f"video {video_id} {fn}")
try:
ok = processor.process_video(
ok, clip_ids = processor.process_video(
video_id, fn, row['local_path'],
timeout_multiplier=self.timeout_multiplier)
# 素材整段视频分割出的运动片段入队分析(片段不在监听目录,需手动入队)
for cid in (clip_ids or []):
self._enqueue(cid)
if ok:
self._stats["consumed_ok"] += 1
self.db.record_activity('queue', 'process_done', f"video {video_id} {fn}")