Files
FruitServer/docs/plans/2026-10-22-media-transcode-output-api.md
T

1.1 KiB
Raw Blame History

转码产物查询接口

目标

  • 媒体维度查询 rendition 与帧图产物。
  • 分集维度聚合转码任务、rendition、帧图状态。
  • /admin/dashboard/transcode 改为明确 VO,OpenAPI 不再出现匿名 Object。

设计

  1. MediaTranscodeOutputService 统一读取媒体、任务、rendition 与 thumbnail。
  2. rendition 按高度、视频码率、质量倒序,id 正序保证稳定。
  3. thumbnail 优先读取 thumbnails.vtt,解析 cue 后分页;无记录返回 EMPTY, 记录失败返回 FAILED,不把缺产物当服务错误。
  4. 分集聚合对不存在、无视频、无媒资、无任务返回明确 status 和空列表。
  5. dashboard 使用强类型 queue/failed task VO,保留现有字段语义并补 total。

TDD

  • 先提交媒体有/无产物、不存在、VTT 解析与分页边界测试。
  • 再提交接口、VO、聚合服务和 dashboard 类型收敛实现。
  • 门禁:mvn -pl fruitshorts-module-media test。

红线

  • 不改 /app 契约、specs、ReelShortWeb、Flutter。
  • 不改 P1 入队与手动重转逻辑。
  • 不启停服务,不操作真机。