You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

10 KiB

Jointo(jointo)产品初始 Mock 数据文档

目标:提供Jointo产品的初始 mock 数据,用于开发和测试
文档版本:v1.0
项目域名https://www.jointo.ai


目录

  1. 数据说明
  2. 项目数据
  3. 分镜数据
  4. 资源数据
  5. 视频数据
  6. 音效数据
  7. 字幕数据
  8. 配音数据
  9. 其他数据
  10. 文本内容汇总

1. 数据说明

1.1 数据用途

本文档包含所有用于填充界面的初始 mock 数据,包括:

  • 项目列表数据
  • 分镜描述文本
  • 资源标签数据
  • 视频/音效/字幕/配音列表
  • UI 文本内容(按钮、提示词示例等)

1.2 数据格式

所有数据以 TypeScript 类型定义和 JSON 格式提供,可直接用于前端开发。


2. 项目数据

2.1 项目列表

我的项目

  1. 西游记之大圣归来
  2. 琅琊榜
  3. 流浪地球
  4. 蒙牛新年好礼2025广告片
  5. 十三邀

协同项目

  • (可根据需要添加)

2.2 项目数据结构

const mockProjects: Project[] = [
  {
    id: 'proj-1',
    name: '西游记之大圣归来',
    type: 'mine',
    thumbnailUrl: '/thumbnails/proj-1.jpg',
    createdAt: Date.now() - 86400000 * 7,
    updatedAt: Date.now() - 86400000,
    storyboards: [], // 见分镜数据
    settings: {
      resolution: { width: 1920, height: 1080 },
      frameRate: 30,
      duration: 60,
    },
  },
  {
    id: 'proj-2',
    name: '琅琊榜',
    type: 'mine',
    thumbnailUrl: '/thumbnails/proj-2.jpg',
    createdAt: Date.now() - 86400000 * 14,
    updatedAt: Date.now() - 86400000 * 2,
    storyboards: [],
    settings: {
      resolution: { width: 1920, height: 1080 },
      frameRate: 30,
      duration: 60,
    },
  },
  // ... 更多项目
];

3. 分镜数据

3.1 分镜描述文本

分镜1

  • 标题:"分镜1"
  • 描述:"清晨的阳光照进窗户,主人公在床上慢慢睁开眼睛,开始新的一天。窗外传来鸟鸣声,窗帘随着微风轻轻飘动。"

分镜2

  • 标题:"分镜2"
  • 描述:"主人公来到厨房,打开冰箱,拿出牛奶和面包,开始准备早餐。厨房里充满了温馨的气息,阳光从窗户洒进来。"

分镜3

  • 标题:"分镜3"
  • 描述:"坐在餐桌前,主人公一边享用早餐,一边浏览手机上的新闻。桌上摆放着精致的餐具和一杯热气腾腾的咖啡。"

分镜4

  • 标题:"分镜4"
  • 描述:"吃完早餐,主人公整理好餐具,将碗筷放进洗碗池,打开水龙头清洗。流水声和餐具碰撞的声音交织在一起。"

分镜5

  • 标题:"分镜5"
  • 描述:"回到房间,主人公打开衣柜,精心挑选今天要穿的衣服,换好衣服后对着镜子整理仪容。镜子里映出满意的笑容。"

分镜6

  • 标题:"分镜6"
  • 描述:"拿起背包和钥匙,主人公走向门口,回头看了一眼房间,打开门走出去,开始新一天的旅程。门在身后轻轻关上。"

3.2 分镜数据结构

const mockStoryboards: Storyboard[] = [
  {
    id: 'sb-1',
    title: '分镜1',
    description: '清晨的阳光照进窗户,主人公在床上慢慢睁开眼睛,开始新的一天。窗外传来鸟鸣声,窗帘随着微风轻轻飘动。',
    order: 1,
    startTime: 0,
    endTime: 10,
    resources: {
      characters: [{ id: 'char-1', name: '主角-睡姿', type: 'character' }],
      scenes: [{ id: 'scene-1', name: '卧室场景', type: 'scene' }],
      props: [{ id: 'prop-1', name: '床+窗帘', type: 'prop' }],
      videos: ['video-1', 'video-2', 'video-3', 'video-4'],
    },
  },
  // ... 更多分镜
];

4. 资源数据

4.1 分镜资源分组数据

分镜1 资源

  • 人物:"主角-睡姿"
  • 场景:"卧室场景"
  • 道具:"床+窗帘"

分镜2 资源

  • 人物:"主角-厨房"
  • 场景:"厨房场景"
  • 道具:"冰箱+食物"

分镜3 资源

  • 人物:"主角-用餐"
  • 场景:"餐桌场景"
  • 道具:"手机+餐具"

分镜4 资源

  • 人物:"主角-清洁"
  • 场景:"洗碗池场景"
  • 道具:"碗筷+水槽"

分镜5 资源

  • 人物:"主角-换装"
  • 场景:"卧室+衣柜"
  • 道具:"衣服+镜子"

分镜6 资源

  • 人物:"主角-出门"
  • 场景:"门口场景"
  • 道具:"背包+钥匙"

5. 视频数据

5.1 视频列表(共 20 个视频)

  1. 睁眼 - 图生视频
  2. 阳光 - 文生视频
  3. 起床 - 首尾帧视频
  4. 走廊 - 融合生视频
  5. 开冰箱 - 实拍替换
  6. 拿牛奶 - 图生视频
  7. 拿面包 - 文生视频
  8. 坐下 - 实视频
  9. 看手机 - 图生视频
  10. 收拾餐具 - 图生视频
  11. 走向洗碗池 - 文生视频
  12. 清洗 - 实拍替换
  13. 打开衣柜 - 图生视频
  14. 挑选衣服 - 融合生视频
  15. 换衣服 - 文生视频
  16. 照镜子 - 图生视频
  17. 整理发型 - 首尾帧视频
  18. 拿包 - 图生视频
  19. 回望 - 文生视频
  20. 开门离开 - 实拍替换

5.2 视频数据结构

const mockVideos: VideoAsset[] = [
  {
    id: 'video-1',
    name: '睁眼',
    type: 'img2video',
    startTime: 0,
    endTime: 2,
    storyboardId: 'sb-1',
  },
  {
    id: 'video-2',
    name: '阳光',
    type: 'text2video',
    startTime: 2,
    endTime: 4,
    storyboardId: 'sb-1',
  },
  // ... 更多视频
];

6. 音效数据

6.1 音效列表(共 16 个音效)

  1. 鸟叫
  2. 床铺声
  3. 脚步声
  4. 开门
  5. 拿东西
  6. 背景音
  7. 碗筷碰撞
  8. 水声
  9. 洗碗声
  10. 柜门
  11. 衣物摩擦
  12. 拉链
  13. 环境音
  14. 拉链(重复,可能是不同场景)
  15. 脚步声(重复)
  16. 开关门

6.2 音效数据结构

const mockSoundEffects: SoundEffect[] = [
  {
    id: 'sound-1',
    name: '鸟叫',
    startTime: 0,
    endTime: 2,
    volume: 80,
  },
  // ... 更多音效
];

7. 字幕数据

7.1 字幕列表(共 16 个字幕)

  1. 早安
  2. 新的一天
  3. 去厨房
  4. 准备早餐
  5. 牛奶面包
  6. 享用
  7. 看新闻
  8. 收拾
  9. 清洗餐具
  10. 保持整洁
  11. 选衣服
  12. 今天穿什么
  13. 换装完成
  14. 完美
  15. 准备出门
  16. 新的旅程

7.2 字幕数据结构

const mockSubtitles: Subtitle[] = [
  {
    id: 'subtitle-1',
    text: '早安',
    startTime: 0,
    endTime: 2,
  },
  // ... 更多字幕
];

8. 配音数据

8.1 配音列表(共 8 个配音)

  1. 旁白1:清晨醒来
  2. 旁白2:去厨房
  3. 旁白3:准备食物
  4. 旁白4:享用早餐
  5. 旁白5:收拾餐具
  6. 旁白6:选择穿搭
  7. 旁白7:整理仪容
  8. 旁白8:出发

8.2 配音数据结构

const mockVoiceovers: Voiceover[] = [
  {
    id: 'voice-1',
    text: '旁白1:清晨醒来',
    startTime: 0,
    endTime: 3,
    voiceType: 'narrator',
  },
  // ... 更多配音
];

9. 其他数据

9.1 协作者数据

协作者头像

  • "ZS"
  • "LS"
  • "WW"
  • "+1"

9.2 通知数据

const mockNotifications = [
  {
    id: 'notif-1',
    type: 'project',
    title: '项目更新',
    content: '项目"西游记之大圣归来"已更新',
    read: false,
    createdAt: Date.now() - 3600000,
  },
  // ... 更多通知
];

9.3 项目成员数据

const mockProjectMembers = [
  {
    id: 'member-1',
    name: '张三',
    avatar: 'ZS',
    role: 'owner',
    email: 'zhangsan@example.com',
  },
  {
    id: 'member-2',
    name: '李四',
    avatar: 'LS',
    role: 'editor',
    email: 'lisi@example.com',
  },
  // ... 更多成员
];

10. 文本内容汇总

10.1 UI 文本

按钮文本

  • "新建项目"
  • "导出项目"
  • "AI工具箱"
  • "插入新分镜"
  • "调整"
  • "适应窗口"
  • "填充窗口"
  • "对话改图"
  • "发送"
  • "添加人物"
  • "添加场景"
  • "添加道具"
  • "添加视频"
  • "AI生成资源素材"
  • "AI生成视频素材"
  • "AI生成音效素材"
  • "AI生成字幕素材"
  • "AI生成配音素材"
  • "AI生成分镜素材"
  • "添加轨道"
  • "上一步"
  • "跳过引导"
  • "下一步"
  • "Opt out"

标签文本

  • "分镜描述"
  • "预览窗口"
  • "时间轴"
  • "分镜"
  • "资源"
  • "视频"
  • "音效"
  • "字幕"
  • "配音"
  • "人物"
  • "场景"
  • "道具"
  • "项目"
  • "素材库"
  • "我的项目"
  • "协同项目"

状态文本

  • "未选择素材"
  • "当前模型: 智能选择"
  • "输入图片描述..."
  • "1920 x 1080"
  • "100%"
  • "00:00:00:00"
  • "缩放: 100%"
  • "步骤 1 / 4"

10.2 AI 提示词示例

图片提示词示例

  • "一位中年男性,穿着正装,站在办公室里"
  • "背景是现代化的办公环境,玻璃窗外是城市景观"

输入框示例内容

  • "@孙悟空 拿着/金箍棒 在 #火焰山 跟@牛魔王 手持/芭蕉扇 互相攻击。"

10.3 新手引导文本

步骤1

  • 标题:"项目与素材管理"
  • 描述:"在这里您可以新增、查看和管理项目,同时可以查看和管理项目中的所有素材资源。"

步骤2-4

  • (待补充)

10.4 警告和提示文本

Cookie 提示

  • (完整文本请参考原文档第 5.17 节)

附录

A. 数据使用说明

  1. 开发阶段:使用本文档中的数据填充界面
  2. 测试阶段:可基于本文档数据创建测试用例
  3. 对接阶段:真实 API 返回的数据结构应与本文档保持一致

B. 数据更新

  • 本文档数据基于 Figma 设计稿提取
  • 如有设计稿更新,需同步更新本文档
  • 新增数据项需遵循现有数据结构

C. 变更记录

  • v1.0 (2025-01-27):初始版本,从原文档中分离出所有 mock 数据

文档结束

本文档专注于提供初始 mock 数据,功能需求请参考《Jointo产品需求文档》。