diff --git a/api/main.py b/api/main.py
index 7fb79fb..91c83b3 100644
--- a/api/main.py
+++ b/api/main.py
@@ -7404,7 +7404,7 @@ def delete_frame(job_id: str, idx: int) -> Job:
except OSError: pass
new_frames = [f for f in job.frames if f.index != idx]
- update(job, frames=new_frames, message=f"删除分镜 {idx + 1}")
+ update(job, frames=new_frames, message=f"已删除参考帧 {idx + 1}")
return job
diff --git a/docs/source-analysis.html b/docs/source-analysis.html
index 5d2d46a..e4391a1 100644
--- a/docs/source-analysis.html
+++ b/docs/source-analysis.html
@@ -975,7 +975,7 @@ ProductRefStateItem {
| 原始音频文件 | GET /jobs/{id}/audio.wav | sourceAudioUrl | 返回拆轨得到的 wav;当前主界面不再渲染底部吸附音频条,右侧复刻工作表会读取该文件生成参考图式横向响度波形,并和原视频、逐句时间轴联动;波形标题栏显示当前播放秒数、总时长和鼠标指针停点秒数。 |
| 改写配音文件 | GET /jobs/{id}/audio-script.mp3 | apiAssetUrl(job.audio_script.voice_url) | 后续新配音阶段保留的 TTS 产物;服务端固定走 VOICE_PROVIDER=azure_openai,通过 AZURE_OPENAI_BASE_URL 的 OpenAI 协议生成 mp3,并按 AZURE_TTS_PATHS 依次尝试 /audio/speech、/v1/audio/speech 等路径。当前第一步不默认生成该文件。 |
| 手动加帧 | POST /jobs/{id}/frames?t= | addManualFrame | 按视频时间戳抽一帧,index 递增但 frames 按 timestamp 排序。当前主界面会把原版视频播放器的播放秒数传给 AudioIntakePanel 标题栏右侧的“当前点抽帧”。 |
- | 删除关键帧 | DELETE /jobs/{id}/frames/{idx} | deleteFrame | 删除单张关键帧并清掉对应选择态;当前主界面每张缩略图右下角提供删除入口,方便手动抽错后直接修正。 |
+ | 删除参考帧 | DELETE /jobs/{id}/frames/{idx} | deleteFrame | 删除单张抽帧参考帧并清掉对应选择态;当前主界面每张缩略图右下角提供删除入口,方便手动抽错后直接修正。接口返回状态消息必须称为“参考帧/关键帧”,不能写成“分镜”,避免和逐句 storyboard 行混淆。 |
| Vision 识别 | POST /frames/{idx}/describe | describeFrame | 写入 frame.description,后续可从 objects 加候选元素。 |
| 清洗水印 | POST /frames/{idx}/cleanup | cleanupFrame | 支持全图和区域清洗,生成 cleaned 待应用版本;前端批量清洗会顺序调用该接口,不自动覆盖原图。单帧清洗状态按 frame.index 隔离,清洗某一张不会禁用其他关键帧的清洗按钮。 |
| 应用清洗版 | POST /frames/{idx}/cleanup/apply | applyCleanedFrame | 把 cleaned 待应用版本覆盖到原关键帧,并保留首次原图备份;前端“一键替换待应用”会顺序调用该接口应用所有已有清洗版。 |
@@ -1108,6 +1108,18 @@ ProductRefStateItem {
变更记录
这个记录不是 git log 的替代品。它记录“产品理解发生了什么变化、影响了哪些源码、你以后描述需求时该怎么说”。后续每次改功能都要补一条。
+
+
+ 2026-05-19 · 删除抽帧状态文案改为参考帧
+ API
+ Source Video
+
+
+
问题:用户在参考帧池删除自动抽出来的帧时,后端 DELETE /jobs/{job_id}/frames/{idx} 返回的 job message 写成“删除分镜”,让人误以为删掉了逐句分镜。
+
改动:delete_frame 的状态消息改为“已删除参考帧 N”。前端按钮本来就是“删除关键帧”,删除逻辑仍只移除 job.frames 里的抽帧参考帧和对应文件。
+
影响:删除抽帧不会被误报成删除分镜;分镜行和参考帧池在用户提示和文档里继续保持清晰边界。
+
+
2026-05-19 · 视频候选文案改为生成 4 个视频