diff --git a/apps/desktop/src-tauri/src/business/services/material_service.rs b/apps/desktop/src-tauri/src/business/services/material_service.rs index 4070aa5..605b7a1 100644 --- a/apps/desktop/src-tauri/src/business/services/material_service.rs +++ b/apps/desktop/src-tauri/src/business/services/material_service.rs @@ -302,7 +302,14 @@ impl MaterialService { } // 3. 检查是否需要切分视频 - if material.needs_segmentation(config.max_segment_duration) { + let should_segment = material.needs_segmentation(config.max_segment_duration) || + (matches!(material.material_type, MaterialType::Video) && material.scene_detection.is_some()); + + if should_segment { + println!("开始视频切分 - 总时长检查: {}, 场景检测: {}", + material.needs_segmentation(config.max_segment_duration), + material.scene_detection.is_some()); + match Self::segment_video(repository, &material, config) { Ok(_) => { println!("视频切分完成: {}", material.name); @@ -317,6 +324,8 @@ impl MaterialService { return Err(e); } } + } else { + println!("跳过视频切分 - 不满足切分条件"); } // 标记为完成