新增功能: 1. 视频生成完成后自动下载到本地临时文件 2. 自动上传到云端S3服务 3. 将S3 URL转换为CDN HTTPS地址 4. 支持防盗链绕过的视频下载 5. 完善的错误处理和fallback机制 技术实现: - download_and_upload_video(): 主要流程控制 - download_video_to_file(): 下载视频到本地临时文件 - 使用CloudUploadService上传到S3 - convert_s3_to_cdn_url(): S3到CDN URL转换 - 临时文件自动清理机制 用户体验: - 视频生成完成后自动获得可访问的CDN链接 - 无需手动下载和上传操作 - 支持原始URL作为fallback保证可用性 - 详细的日志记录便于问题排查 安全特性: - 防盗链绕过HTTP头设置 - 临时文件安全清理 - 错误情况下的资源释放 - 超时控制防止长时间阻塞 |
||
|---|---|---|
| .. | ||
| docs | ||
| public | ||
| scripts | ||
| src | ||
| src-tauri | ||
| test_data | ||
| .gitignore | ||
| AI_CLASSIFICATION_STATS_FIX.md | ||
| CHANGELOG.md | ||
| DATABASE_OPTIMIZATION_GUIDE.md | ||
| FEATURE_MATERIAL_TYPE_DISPLAY.md | ||
| OUTFIT_PHOTO_GENERATION_IMPLEMENTATION.md | ||
| README.md | ||
| TOOLS_FEATURE.md | ||
| index.html | ||
| package.json | ||
| postcss.config.js | ||
| tailwind.config.js | ||
| test_parallel_processing.md | ||
| 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 等)