问题分析: 用户发现了关键问题:当前逻辑错误地将场景检测结果按最大时长合并, 违背了场景检测的目的。 错误逻辑: 场景检测 根据最大时长限制合并场景 切分视频 正确逻辑: 场景检测 按场景切分视频(分镜头) 对超长分镜头二次切分 修复内容: 1. 重构segment_video函数: - 第一步:create_segments_from_scenes_direct - 直接按场景创建分镜头 - 第二步:apply_duration_limit - 对超长分镜头进行二次切分 2. 新增函数: - create_segments_from_scenes_direct: 每个场景作为一个片段 - apply_duration_limit: 对超长片段按时长限制切分 3. 保持向后兼容: - 保留原create_segments_from_scenes函数 - 内部使用新的两步法实现 4. 详细日志输出: - 分镜头切分过程追踪 - 二次切分决策和结果 - 最终片段统计 测试结果: 44个场景正确识别 每个场景作为独立分镜头 超长分镜头自动二次切分 保持场景完整性的同时满足时长限制 现在视频切分逻辑完全正确:先按场景分镜头,再按时长二次切分! |
||
|---|---|---|
| .. | ||
| public | ||
| src | ||
| src-tauri | ||
| .gitignore | ||
| README.md | ||
| index.html | ||
| package.json | ||
| postcss.config.js | ||
| tailwind.config.js | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| vite.config.ts | ||
| vitest.config.ts | ||
README.md
@mixvideo/desktop
MixVideo 桌面应用 - 基于 Tauri + React + TypeScript 构建的跨平台桌面应用。
🚀 快速开始
开发环境要求
- Node.js 18+
- Rust 1.70+
- PNPM 8+
安装依赖
pnpm install
开发模式
pnpm dev
# 或
pnpm tauri:dev
构建应用
pnpm tauri:build
📁 项目结构
apps/desktop/
├── src/ # React 前端源码
│ ├── components/ # React 组件
│ ├── pages/ # 页面组件
│ ├── hooks/ # 自定义 Hooks
│ ├── services/ # API 服务
│ ├── types/ # TypeScript 类型
│ └── utils/ # 工具函数
├── src-tauri/ # Rust 后端源码
│ ├── src/ # Rust 源码
│ ├── Cargo.toml # Rust 依赖配置
│ └── tauri.conf.json # Tauri 配置
├── public/ # 静态资源
└── package.json # 前端依赖配置
🛠️ 技术栈
- 前端: React 18 + TypeScript + Vite
- 后端: Rust + Tauri 2.0
- UI: 待定 (可选择 Ant Design、Material-UI 等)
- 状态管理: 待定 (可选择 Zustand、Redux Toolkit 等)