imeepos
|
c683557307
|
feat: 完成 tvai 库视频处理功能 (阶段三)
视频格式转换功能
- 实现 images_to_video() 图像序列转视频
- 实现 video_to_images() 视频转图像序列
- 支持多种图像格式 (PNG, JPG, TIFF, BMP)
- 智能帧序列处理和命名
- 质量预设和编码参数优化
视频超分辨率处理
- 实现 upscale_video() 完整超分辨率功能
- 支持所有 16 种 Topaz AI 模型
- 参数验证和模型约束检查
- GPU 加速和编码优化
- 自动 Topaz FFmpeg 滤镜构建
帧插值功能
- 实现 interpolate_video() 帧插值处理
- 支持所有 4 种插值模型
- 智能 FPS 计算和目标帧率设置
- 高质量慢动作效果生成
- 参数验证和范围检查
组合处理流水线
- 实现 enhance_video() 组合增强功能
- 支持超分辨率 + 插值的完整流水线
- 智能中间文件管理
- 灵活的处理组合选项
- 自动临时文件清理
便捷处理函数
- quick_upscale_video() 一键视频放大
- auto_enhance_video() 智能自动增强
- 自动 Topaz 检测和配置
- 基于视频特征的参数选择
- 默认高质量设置
预设参数系统
- VideoUpscaleParams::for_old_video() 老视频修复
- VideoUpscaleParams::for_game_content() 游戏内容
- VideoUpscaleParams::for_animation() 动画内容
- VideoUpscaleParams::for_portrait() 人像视频
- InterpolationParams::for_slow_motion() 慢动作
- InterpolationParams::for_animation() 动画插值
完整示例和演示
- 创建 video_processing.rs 综合示例
- 展示所有视频处理场景
- 参数配置和模型选择演示
- 格式转换和组合处理演示
- 便捷函数使用演示
技术特性
- 完整的 Topaz Video AI 集成
- 智能参数验证和错误处理
- 进度回调支持 (基础实现)
- 异步处理和资源管理
- 跨平台兼容性
代码质量
- 所有测试通过 (6/6 单元测试 + 1 文档测试)
- 完整的错误处理和验证
- 内存安全的资源管理
- 清晰的 API 设计
功能覆盖
- 视频超分辨率 (16 种模型)
- 帧插值 (4 种模型)
- 格式转换 (图像序列 视频)
- 组合处理流水线
- 便捷处理函数
- 智能参数预设
下一步: 开始阶段四 - 图片处理功能实现
|
2025-08-11 15:43:38 +08:00 |
imeepos
|
42e3e923f9
|
feat: 完成 tvai 库核心处理引擎 (阶段二)
临时文件管理系统
- 实现 TempFileManager 完整功能
- 支持操作级别的文件跟踪和清理
- 自动清理机制和手动控制选项
- UUID 生成和唯一文件路径创建
- 支持文件和目录的创建与管理
处理器核心逻辑增强
- 集成 TempFileManager 到 TvaiProcessor
- 添加进度回调支持 (ProgressCallback)
- 实现 ProcessingOptions 配置结构
- 添加文件验证功能 (输入/输出路径)
- FFmpeg 命令执行与进度跟踪
核心处理方法
- execute_ffmpeg_command() 带进度回调
- validate_input_file() 输入文件验证
- validate_output_path() 输出路径验证
- create_metadata() 处理元数据生成
- get_ffmpeg_version() 版本信息获取
API 增强
- 添加 create_temp_path() 临时文件创建
- 添加 create_unique_temp_path() 唯一路径生成
- 添加 create_temp_dir() 临时目录创建
- 添加 cleanup_temp_files() 操作清理
- 添加 cleanup_all_temp_files() 全量清理
高级示例和测试
- 创建 advanced_usage.rs 展示所有新功能
- 临时文件管理演示
- 进度回调演示
- 文件验证演示
- 系统信息获取演示
单元测试覆盖
- TempFileManager 完整测试套件
- TvaiProcessor 核心功能测试
- 配置构建器测试
- 进度回调类型测试
测试结果
- 所有单元测试通过 (6/6)
- 文档测试通过 (1/1)
- 高级示例运行成功
- 临时文件管理功能验证
- 进度回调机制验证
代码质量
- 完整的错误处理
- 内存安全的资源管理
- 异步友好的 API 设计
- 全面的类型安全
下一步: 开始阶段三 - 视频处理功能实现
|
2025-08-11 15:33:14 +08:00 |
imeepos
|
e4dbb57b68
|
feat: 完成 tvai 库基础架构搭建 (阶段一)
项目初始化完成
- 创建 cargos/tvai 项目结构
- 配置 Cargo.toml 依赖和工作空间
- 实现基础错误类型 TvaiError
FFmpeg 管理模块
- 实现 FfmpegManager 结构体
- FFmpeg 路径检测和验证 (系统 vs Topaz)
- 基础命令执行框架
- 支持 Windows/Linux/macOS 平台
核心处理引擎框架
- TvaiProcessor 主结构体
- TvaiConfig 配置管理和 Builder 模式
- 临时文件管理和自动清理
- GPU 检测和配置
模型和参数定义
- 16种超分辨率模型枚举 (Iris3, Nyx3, Thf4 等)
- 4种插值模型枚举 (Apo8, Chr2 等)
- 质量预设和编码设置
- 完整的参数结构体和验证
模块结构完整
- video/ 视频处理模块框架
- image/ 图片处理模块框架
- config/ 配置管理模块
- utils/ 工具函数模块
系统检测功能
- Topaz Video AI 安装检测
- GPU 支持检测
- FFmpeg 可用性检测
文档和示例
- 完整的 README 文档
- 基础使用示例
- API 文档注释
测试结果
- 编译通过 (cargo check)
- 示例运行成功
- 检测到 Topaz Video AI 安装
- 所有模块结构就绪
下一步: 开始阶段二 - 核心处理引擎实现
|
2025-08-11 15:12:44 +08:00 |
imeepos
|
2075a731d2
|
fix: 修复ComfyUI队列API响应格式解析问题
- 修复WebSocket错误消息解析失败问题,支持更多错误字段格式
- 改进执行错误处理,收到错误时立即中断而不是等待超时
- 修复ComfyUI队列API响应格式不匹配问题,支持数组格式的队列数据
- 添加灵活的队列项解析逻辑,支持整数和字符串类型的prompt_id
- 在EventEmitter中添加错误存储功能,支持实时错误状态检查
- 更新所有相关的队列状态转换代码
解决的问题:
1. WebSocket消息解析错误:missing field 'message'
2. 执行错误后仍等待超时的问题
3. 队列API响应解析错误:invalid type integer/string expected
4. 批量处理中错误统计不准确的问题
|
2025-08-11 11:09:27 +08:00 |
imeepos
|
b1e7191c10
|
feat: 添加AI模型面部头发修复工具
- 新增AI模型面部头发修复工具,支持单张图片和批量处理
- 基于ComfyUI的AI_MODEL_FACE_HAIR_FIX_TEMPLATE模板
- 支持自定义面部提示词和去噪强度参数
- 实现实时进度监听和结果展示
- 添加文件选择和路径管理功能
- 修复多个TypeScript编译错误
- 优化UI组件的类型定义和错误处理
新增功能:
- ai_model_face_hair_fix_single_image: 单张图片处理命令
- ai_model_face_hair_fix_batch_images: 批量图片处理命令
- AiModelFaceHairFixTool: 完整的前端UI组件
修复问题:
- ExecutionMonitor组件的showCompleted状态管理
- WorkflowManager的类型注解问题
- WorkflowV2Creator的变量名和状态引用
- Input组件的size属性类型冲突
- comfyuiV2Service缺失的updateTemplate方法
|
2025-08-11 00:52:21 +08:00 |
root
|
84081284f7
|
fix: 修复ComfyUI V2模板创建参数解析问题并重构工作流创建
主要修改:
1. **扩展ComfyUI SDK参数类型支持**
- 在ParameterType枚举中添加Integer、Float、Image、Audio、Video类型
- 在ParameterSchema中添加节点映射和媒体文件相关字段
- 添加step、accept、maxSize、width、height、duration、node_mapping字段
- 为新字段添加serde默认值支持
2. **修复参数解析问题**
- 解决comfyui_v2_create_template命令缺少type字段的错误
- 确保前端传递的参数类型与后端ParameterType枚举匹配
- 修复r#enum字段的正确使用(用于JSON Schema兼容性)
3. **重构工作流模板创建方式**
- 将ai_model_face_hair_fix.rs中的create_workflow函数重构为create_workflow_from_json
- 改为从JSON字符串解析ComfyUIWorkflow,而非手动构建HashMap
- 提高可维护性和与实际使用场景的一致性
4. **更新相关测试和验证代码**
- 修复validation.rs中的测试用例,添加新字段的默认值
- 确保所有ParameterSchema创建都包含完整字段
5. **添加测试数据**
- 创建test_template_creation.json用于测试参数格式
这些修改解决了前端传递的参数格式与后端期望格式不匹配的问题,
使工作流模板创建功能能够正常工作。
|
2025-08-08 23:10:38 +08:00 |
imeepos
|
3bb7cdae23
|
fix: cargo check --lib error
|
2025-08-08 18:16:52 +08:00 |
杨明明
|
e69ce2b817
|
fix: 修复ComfyUI SDK的cargo check和clippy警告
- 修复ComfyUIError中WebSocket变体过大的问题,使用Box包装
- 添加自定义From实现处理Box包装的WebSocket错误
- 修复所有格式化字符串警告,使用内联格式化
- 移除无用的类型转换(reqwest::Error::from)
- 修复代码质量问题:
- 简化if语句嵌套
- 使用?操作符替代显式错误处理
- 优化map迭代方式
- 使用is_some_and替代map_or
修复内容:
- 44个clippy警告全部解决
- 所有测试通过
- cargo check --lib 无错误无警告
|
2025-08-08 16:12:25 +08:00 |
imeepos
|
d61e2e8f4c
|
fix: comfyui sdk serde
|
2025-08-08 15:03:35 +08:00 |
imeepos
|
96da074bc9
|
feat: comfy ui sdk
|
2025-08-08 14:09:31 +08:00 |
imeepos
|
5f6a302dfd
|
feat: add comfyui sdk
|
2025-08-08 13:48:38 +08:00 |