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年