自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(144)
  • 收藏
  • 关注

原创 【直播切片工作台】第33章:AI 切片核心选段生成算法

前一章解决了"何时执行",本章回答"执行什么"。是 AI 切片的算法心脏:从用户选区到 LLM 可见的带下标句段列表,再到回写,由四个纯函数接力完成。

2026-11-11 15:27:43 5

原创 【直播切片工作台】第32章:AI 切片 Worker 调度与执行

本章剖析——四组 Worker 中最完整的一个。它是"DB 即队列"模式的执行侧:wake channel + 3 秒轮询 + 孤儿回收 + 乐观锁抢占,全部在同一文件内自洽完成。

2026-11-10 18:36:45 166

原创 【直播切片工作台】第31章:任务接口与任务服务

本章覆盖异步任务的"入口层"——与。它们是三组任务流水线(ai_slice / draft / ai_slice_draft)的编排起点:把 HTTP 请求翻译为带快照字段的 Task 落库,并即时唤醒对应 Worker。

2026-11-09 19:02:38 213

原创 【直播切片工作台】第30章:LLM 客户端与输出解析器

本章把的另一半讲完:Chat 的三种形态(普通/结构化/思考模式)、ChatOptions 的参数设计,以及 parse 系列容错解析器(ParseIndices、parse_clips、parse_ai_slice)——「模型输出不可信」这个前提如何转化为具体的解析防御工事。

2026-11-08 17:28:44 172

原创 【直播切片工作台】第29章:ASR 后处理:主题分段与段落划分

本章分析——ASR 链路的 LLM 增强环节。。窗口化、传输重试、输出修复、服务端硬校验,一层层把不可靠的模型输出驯化成可信数据。

2026-11-06 21:48:31 309

原创 【直播切片工作台】第28章:ASR 异步 Worker

本章分析:四组后台 Worker 的第一个,也是其余三组的模板。唤醒-轮询混合调度、drain 抢占循环、单调进度回写、调试记录器落盘——这些机制在 AI 切片/草稿 Worker 中原样复现,读懂这一个等于读懂四个。

2026-11-05 10:03:26 334

原创 【直播切片工作台】第27章:ASR 音频预处理

本章分析:在调用远程 ASR 之前,把「任意格式的直播素材 URL」变成「公网可访问的标准 MP3」的五步预处理——下载、探测时间轴与分辨率、对齐转码、上传对象存储、清理临时文件。它是 ASR Worker 的第一协作方,也是「接口小抽象」模式的教科书案例。

2026-11-04 18:19:23 330

原创 【直播切片工作台】第26章:字幕断句与导出

本章分析与:把 ASR 分句加工成「适合视频字幕」的短行——按标点断句、超长均分(英文词与数字词不拆)、词级时间对齐或比例分配兜底。这是一个算法密度很高的小模块,读它可以学到「产品规则如何翻译成纯函数」。

2026-11-03 11:12:38 172

原创 【直播切片工作台】第25章:ASR 结果结构化:分句与词级时间戳

本章分析的结果解析族:utterances.go(分句/词结构)、result.go(时长解析)、format.go(格式探测)。核心问题只有一个:如何把豆包的原始 JSON 稳定地翻译成业务结构,并保证「任何脏数据都返回空数组而非崩溃」。

2026-11-02 19:58:29 205

原创 【直播切片工作台】第24章:ASR 客户端:提交与轮询

本章分析:豆包 BigModel 录音文件识别的封装——提交任务、状态码驱动的轮询循环、进度回调、格式探测。这是一个「外部异步 API 客户端」的完整范本:超时分层、幂等提交、进度估算,全部模式可平移到任何轮询型第三方服务。

2026-11-01 20:42:51 306

原创 【直播切片工作台】第23章:媒体探测与转码:ffprobe 与 ffmpeg 封装

本章封装ffprobe与ffmpeg,实现媒体探测与转码:通过ffprobe获取视频时长、分辨率;ffmpeg支持ASR音频转换(16kHz单声道64kbps MP3)与双模式裁剪(精确重编码/关键帧快速拷贝)。采用纯函数构建参数、CommandContext管理进程、CombinedOutput捕获stderr,确保可测性与稳定性。常量注释明确调参依据,滤镜链顺序严谨,对齐逻辑处理音画时间轴偏移。设计兼顾性能与精度,支撑远程ASR与高效草稿生成。

2026-10-30 15:58:28 343

原创 【直播切片工作台】第22章:素材下载与 URL 重写

本章实现素材下载与URL重写机制:通过精确匹配的Host映射,将公网签名URL改写为内网直连地址,提升下载效率并降低流量成本。Rewriter仅修改Host,保留path与query以确保签名有效,失败时静默降级至公网下载。FileDownloader采用流式落盘,避免内存溢出,并附带上下文错误信息。配置驱动、防御性设计与清晰职责划分保障了高可用性,是所有流水线的数据入口基石。

2026-10-29 19:15:58 291

原创 【直播切片工作台】第21章:直播素材管理服务

本章实现直播素材管理服务,核心为:服务端自动识别URL类型、双唯一约束冲突时返回已存在记录及业务码40901,确保用户即时获知重复信息;通过哨兵错误与结构化错误(如LiveMaterialExistsError)统一错误处理,结合errors.As精准分流;异步任务(ASR重试、字幕导出)均采用“改状态+触发Worker”模式,服务层不直接执行长任务。列表支持关键词模糊匹配,接口注释即业务文档,前后端契约清晰。设计强调容错性与可维护性,是错误治理与状态机管理的典范。

2026-10-28 11:23:45 317

原创 【直播切片工作台】第20章:请求日志与中间件链

本章分析:RequestLogger 的 trace_id 透传设计、全局中间件链的极简构成(Recovery + RequestLogger + JWTAuth 分组),以及「中间件克制」背后的性能与排障权衡。这章很短,但透传式 trace_id 是一个值得单独立传的设计。

2026-10-26 13:10:30 350

原创 【直播切片工作台】第19章:路由注册与版本分组

本章分析与:路由的注册风格(函数式批量注册而非散装 r.GET)、鉴权分组的组织方式、路由顺序的陷阱规避,以及 API 面的全景图。路由文件是 API 的目录页,读完本章可按图索骥找到任何接口的 handler。

2026-10-25 20:08:17 196

原创 【直播切片工作台】第18章:认证与账号服务

本章分析登录链路的 service 侧()、账号管理(与 handler),以及的密码工具与角色解析。登录是唯一不返回错误码细节的接口(防账号枚举),也是 JWT 生产线与 response 信封的第一次汇合。

2026-10-24 20:21:53 188

原创 【直播切片工作台】第17章:JWT 鉴权:签发、解析与中间件

本章把与合起来讲:Claims 里内嵌用户信息的用意、HS256 签名与算法白名单校验(防 alg 混淆攻击)、Bearer 解析的逐层拒绝,以及 AuthUser 上下文的注入与读取。鉴权是除登录外所有接口的统一前置,本章也是理解前端 401 拦截(第 48 章)的后端侧镜像。

2026-10-23 19:53:29 227

原创 【直播切片工作台】第16章:统一响应封装

本章分析信封、语义化错误构造函数、分页结构。前端与逐字段对齐这个信封(第 48 章),它是前后端协作的宪法。

2026-10-22 15:47:17 337

原创 【直播切片工作台】第15章:仓储层设计与任务抢占

本章聚焦仓储层设计,通过具名业务接口与SQL级状态守卫实现多实例安全抢占。核心机制ClaimPendingByType采用乐观锁(版本号CAS),结合FIFO选任务、RowsAffected判成功、版本条件写回,确保崩溃恢复时旧写入被拦截。防误更新通过Select限定字段,关键词统一抽象KeywordGroups支持三端复用。设计强调数据层不变式,保障系统正确性与可扩展性。

2026-10-21 17:09:27 309

原创 【直播切片工作台】第14章:种子数据 Seeder

本章分析包:为什么账号与默认提示词要作为种子数据、SeedAll的幂等策略、以及种子与 model 包常量()之间的隐式契约。种子数据决定「初始化完成即可用」的体验,是 envinit 流程的最后一环。

2026-09-17 21:56:54 128

原创 【直播切片工作台】第13章:数据库迁移与 envinit 命令行

本章解析与:建表为什么用 GORM AutoMigrate 而非 SQL 迁移文件、AutoMigrate 的盲区如何用「显式补列」兜底、以及 envinit 五个子命令(schema/seed/init/reinit/reset-password)如何把运维动作收敛成一个工具。

2026-09-14 15:16:18 158

原创 【直播切片工作台】第12章:异步任务模型 Task

本章深入:UUID 主键、三类任务、四态状态机、乐观锁版本号,以及最有特点的「快照字段族」——任务在创建瞬间把关联数据复制进本行,换取执行期与查询期的完全自包含。Task 是全系统的调度货币,本章概念会被第 15、31~37、43 章反复引用。

2026-09-12 18:11:28 183

原创 【直播切片工作台】第11章:剪辑项目模型 VideoProject

本章深入:一个剪辑项目如何把「素材 + 提示词 + 选段 + 画布 + 元数据」打包成一张加工单。核心是 clips0(粗选区间)与 clips1(精修选段)的双层选段设计,以及短视频标题/描述/话题的约束常量族。

2026-09-11 15:46:01 176

原创 【直播切片工作台】第10章:直播素材模型 LiveMaterial

本章深入——流水线的原料实体。重点:ASR 状态机与乐观锁版本号、URL 类型与推流生命周期两组状态常量、JSONB 转写结果的三个层次(live_asr 原始 / asr_summaries 主题分段 / asr_paragraphs 全文段落),以及进度与心跳字段如何支撑孤儿回收。

2026-09-10 10:21:48 278

原创 【直播切片工作台】第9章:数据模型层总览:五大实体与关系

本章建立数据层的全局视图:account、live_material、video_project、llm_system_prompt、task 五张表,各自的职责、相互之间的「弱关联」风格(普遍不用外键),以及 JSONB 嵌套结构族(ASRParagraph、ClipRange、ClipWithText、ASRSummarySegment)。之后三章分别深入三个业务实体。

2026-09-09 11:36:44 255

原创 【直播切片工作台】第8章:数据库连接与连接池管理

本章解读:GORM + pgdriver 的初始化、DSN 拼装、连接池参数,以及一个容易被忽视但非常关键的开关——。数据库连接是全部 Worker 与 API 的共享资源,池参数与协议行为直接影响并发任务下的稳定性。

2026-09-08 10:01:54 158

原创 【直播切片工作台】第7章:日志系统

本章分析:zap 核心如何组装、lumberjack 如何做文件轮转、格式与级别如何配置,以及全仓库统一的日志书写范式。日志是长任务系统唯一的「黑盒观测窗口」,这里的每个选择都服务于排障效率。

2026-09-07 13:05:05 215

原创 【直播切片工作台】第6章:环境搭建与本地开发流程

本章面向想要跑起本项目的开发者:从 Go/PostgreSQL/ffmpeg 前置条件,到 config.yaml 准备、envinit 初始化、webserver 启动、接口冒烟验证,以及本地没有 capcut-mate 时的降级开发模式。内容以 README 的流程为骨、以代码事实为肉。

2026-09-06 16:49:45 366

原创 【直播切片工作台】第5章:程序入口与依赖装配

本章逐行解读——全书唯一的组合根(Composition Root)。240 行的 main 完成了配置加载、基础设施初始化、十余个对象的构造与注入、四组 Worker 与定时器的启动、HTTP 服务的生命周期管理。读懂它,整个系统的运行时拓扑就全部展开。

2026-09-02 20:59:16 281

原创 【直播切片工作台】第4章:配置系统

本章解析包:embed 内嵌默认配置、viper 加载外部 yaml、APP_*环境变量三级覆盖机制,以及散落在 asr_client.go / llm_client.go 等文件中的「配置→客户端 Config」转换器。这是所有功能模块的公共地基。

2026-08-31 11:26:09 288

原创 【直播切片工作台】第3章:Monorepo 工程结构

本章从仓库物理布局出发,讲清 pnpm workspace 如何同时管理 Go 后端与 React 前端、根 package.json 承担什么职责、以及cmdinternaldockerdocs的边界约定。理解目录约定后,任何新成员都能凭文件路径推断职责归属。

2026-08-30 16:24:06 380

原创 【直播切片工作台】第2章:技术选型与分层架构设计

本章回答「为什么是这些技术」:Go + Gin、GORM + PostgreSQL、zap、原生 HTTP 客户端调外部 AI 服务,以及 handler → service → repository → model 的分层纪律。选型理由将结合仓库实际代码给出,而非泛泛而谈。

2026-08-29 20:54:56 317

原创 第1章:项目全景与架构总览

本章鸟瞰 live-mixer(直播切片工作台)的整体面貌:它解决什么问题、由哪些部分组成、数据如何流动。后续所有章节都在这张地图上展开,建议先通读本章再进入细节。

2026-08-28 14:47:30 205

原创 【直播切片工作台】项目概述

Live-Mixer 直播切片工作台是一个面向直播回放与录像的端到端“AI 辅助切片”平台。它打通了从素材录入、ASR 转写、AI 智能选段,到剪映草稿生成与一键成片的完整流水线,既支持全自动一键成片,也支持“AI 粗选 + 人工精修”的协同模式,将重复劳动交给模型,把成片质量留在人手里。核心价值提升效率:将“听稿选段”的耗时工作自动化,缩短从素材到可剪辑草稿的时间。质量可控:AI 提供高价值候选片段,人工可在 clips1 中精修后再出片。

2026-08-14 11:31:01 389

原创 【剪映小助手】视频信息生成接口(Video Infos)

CapCut Mate API 是一个基于 FastAPI 的开源剪映自动化助手,专注于为大模型提供基础的视频编辑能力。该项目完全开源免费,支持独立部署,可以与大型模型连接实现智能视频编辑。

2026-08-05 16:15:44 230

原创 【剪映小助手】字符串转列表接口(Str To List)

字符串转列表接口:说明该接口在草稿自动化里的用途、依赖模块与常见报错。具体方法、路径、字段和校验请以OpenAPI为准。

2026-08-03 10:44:45 220

原创 【剪映小助手】字符串列表转对象接口(Str List To Obds)

字符串列表转对象接口:说明该接口在草稿自动化里的用途、依赖模块与常见报错。具体方法、路径、字段和校验请以OpenAPI为准。

2026-08-02 18:56:35 221

原创 【剪映小助手】搜索贴纸接口(Search Sticker)

搜索贴纸接口:说明该接口在草稿自动化里的用途、依赖模块与常见报错。具体方法、路径、字段和校验请以OpenAPI为准。

2026-08-01 15:13:35 224

原创 【剪映小助手】保存草稿接口(Save Draft)

保存草稿接口:说明该接口在草稿自动化里的用途、依赖模块与常见报错。具体方法、路径、字段和校验请以OpenAPI为准。

2026-07-30 12:16:41 315

原创 【剪映小助手】对象列表转字符串接口(Objs To Str List)

对象列表转字符串接口:说明该接口在草稿自动化里的用途、依赖模块与常见报错。具体方法、路径、字段和校验请以OpenAPI为准。

2026-07-29 17:03:38 216

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除