Skip to content

MidjourneyTool 视频抓取与处理功能文档

概述

MidjourneyTool 是一个集成了视频下载、混剪、AIGC知识分享、智能Hook等功能的综合性视频处理工具。本文档详细描述其视频抓取相关的核心业务逻辑和功能设计。

核心业务逻辑

1. 视频抓取流程

JSON解析 → URL提取 → 视频下载 → 状态验证 → 素材入库

1.1 JSON解析机制

  • 输入源: Midjourney生成的JSON数据
  • 关键字段: id(视频标识), url(下载地址)
  • 解析规则:
    • id字段作为视频唯一标识
    • url字段支持多种格式(OSS直链、CDN链接等)
    • 自动识别视频格式和质量

1.2 下载策略

  • 并发控制: 支持批量下载,限制同时下载数量
  • 断点续传: 网络中断后自动恢复下载
  • 格式转换: 统一转换为MP4格式
  • 质量检测: 下载后验证文件完整性和可播放性

2. 状态管理机制

2.1 下载状态跟踪

javascript
{
  pending: '等待下载',
  downloading: '下载中',
  completed: '下载完成',
  failed: '下载失败'
}

2.2 素材库集成

  • 自动入库: 下载完成后自动保存到素材库
  • 元数据记录: 记录prompt、标签、分类等信息
  • 版本控制: 支持同一视频的多个版本管理

主要功能模块

1. 手动下载模式

功能特点:

  • JSON数据粘贴解析
  • 批量视频下载管理
  • 进度实时显示
  • 下载结果统计

核心方法:

javascript
// JSON解析
parseJsonInput(jsonString)

// 批量下载
batchDownload({ urls, options })

// 进度更新
updateDownloadProgress(taskId, progress)

2. 自动混剪功能

触发条件:

  • 素材上传完成后自动触发
  • 最少需要3个视频素材
  • 支持配置化的混剪参数

混剪配置:

javascript
{
  casesPerVideo: 4,        // 每个视频的案例数
  videoSpeed: 1.15,        // 视频播放速度
  transitionStyle: 'beat_sync', // 转场风格
  bgmType: 'upbeat'        // 背景音乐类型
}

3. AIGC 增强与智能模板 (V2.0 升级)

功能亮点:

  • Prompt 可视化叠加: 自动分析 Prompt 并在视频关键帧进行文字叠加。
  • 智能 Hook 2.0: 自动提取所有素材中最精彩的 2 秒片段作为视频开场,极大提升完播率。
  • AI 智能布局: 接入大语言模型(如豆包)分析 Prompt,自动优化字幕排版、字体和色彩。
  • 模板化生产: 针对不同创作场景提供专业模板。

核心模板:

  • prompt_evolution: 🎯 Prompt 进化史 - 展示作品从雏形到完美的演进。
  • quick_tutorial: ⚡ 60秒速成教程 - 3 步式硬核干货分享。
  • parameter_comparison: 🔬 参数对比实验 - 直观展示 MJ 参数(如 --s, --c)的影响。
  • common_mistakes: 🚫 避坑指南 - 错误 vs 正确的强烈对比,提升内容教育价值。

4. 增强的交互体验

  • 实时状态同步: 采用智能轮询机制,实时反馈混剪进度,并辅以动态动画提示。
  • 多维度素材管理: 自动从 MJ JSON 中提取宽度、高度、作者等元数据,并支持一键跳转 MJ 官网。
  • 智能推荐引擎: 根据上传素材的数量和质量,自动推荐最优的混剪策略和 Hook 样式。

4. 智能Hook生成器

核心特性:

  • 2秒精彩预览片段自动生成
  • 多视频精华内容智能提取
  • 转场效果和平滑过渡
  • Prompt同步展示功能

技术实现:

python
# 动态Hook生成
generate_dynamic_hook(video_urls, prompts)

# 智能片段选择
select_highlight_clips(videos, duration=2.0)

# 转场处理
apply_transitions(clips, style='fade')

前端交互设计

1. 用户界面组件

主要视图:

  • 配置面板: 参数设置和模板选择
  • 下载管理: JSON解析和批量下载
  • 历史记录: 任务管理和结果查看
  • 预览窗口: 视频播放和效果展示

交互流程:

上传JSON → 解析验证 → 选择配置 → 开始下载 → 混剪处理 → 结果展示

2. 状态反馈机制

  • 实时进度条: 显示下载和处理进度
  • 成功计数器: 统计成功/失败数量
  • 错误提示: 详细的错误信息和解决建议
  • 完成通知: 任务完成后的提醒和操作建议

技术架构

1. 前端技术栈

  • 框架: Vue 3 + Element Plus
  • 状态管理: Vuex/Vue Composition API
  • HTTP客户端: Axios
  • 构建工具: Vite

2. 后端服务集成

  • PyBridge: 视频处理核心服务
  • ThinkPHP8: API接口和业务逻辑
  • OSS存储: 视频文件云端存储
  • Redis缓存: 任务状态和临时数据

3. 数据流向

前端UI → Vue组件 → API调用 → 后端服务 → 视频处理 → 结果返回

配置管理

1. 用户偏好设置

javascript
{
  autoMixVideo: true,           // 自动触发混剪
  enableAigcOverlay: false,     // 启用AIGC文字层
  enableSmartHook: true,        // 启用智能Hook
  enableAiLayout: true,         // 启用AI智能布局
  disableAllHooks: false        // 完全禁用Hook
}

2. 环境配置

  • .env文件管理各环境配置
  • 支持开发、测试、生产环境切换
  • 敏感信息加密存储

错误处理与监控

1. 常见错误类型

  • 网络连接超时
  • 文件格式不支持
  • 存储空间不足
  • 权限验证失败

2. 监控指标

  • 下载成功率
  • 平均处理时间
  • 系统资源使用率
  • 用户操作路径分析

未来发展规划

1. 功能增强

  • 支持更多视频平台抓取
  • 智能标签和分类
  • 多语言Prompt支持
  • 社交分享功能

2. 性能优化

  • CDN加速优化
  • 并发处理能力提升
  • 内存使用优化
  • 响应速度改善

3. 用户体验改进

  • 更直观的操作界面
  • 个性化推荐系统
  • 移动端适配
  • 离线功能支持

文档版本: v1.0最后更新: 2024年