BokeSkill:把小说丢进去,30分钟出一整部广播剧!
当整个AI行业都在卷文生图、文生视频的时候有一个项目选择了一条截然不同的路——它问了一个看似简单却极其硬核的问题如果让AI当编剧、当配音导演、当音效师、当混音师全自动把一本小说变成一部完整的广播剧会怎样项目地址https://github.com/dfytensor/BokeSkill一、为什么这个项目值得你停下来读如果你接触过AI语音合成TTS或AI音频生成你一定对这样的场景习以为常用Fish Speech、ChatTTS克隆一个声音需要录几段干净的参考音频用Stable Audio生成一段音效需要反复调prompt最后还要自己用Audition把配音、音效、BGM一轨一轨拼起来——做一个3分钟的音频片段可能要折腾一整天。但BokeSkill提出了一个颠覆性的问题如果整个流程——从剧本分析、角色声音设计、逐句配音、音效生成、BGM配乐到多轨混音和质量自动评估修复——全部交给AI流水线自动完成会怎样BokeSkill全称Podcast Generator Skill是一套全自动广播剧/有声书生成流水线。你把一篇小说或剧本丢进去它会在约30分钟内输出一部完整的、带角色区分、带音效配乐、带专业混音的广播剧。结果令人震惊7阶段全自动流水线从编剧拆场景到专业混音零人工干预多角色配音每个角色独立音色支持情感控制音效BGM自动生成Stable Audio 3 Medium统一生成配合质量评分自动修复专业级混音四总线(对白/音效/音乐)DSP链LUFS响度归一化质量闭环Qwen2.5-Omni自动评分低分片段触发prompt重写重新生成直到达标这不是在现有TTS工具上做点小修小补——它是从零搭建了一整条AI音频工业流水线。二、核心思想从“手工拼音频”到“全自动工业流水线”2.1 传统AI音频制作在做什么传统做法是工具链割裂的用A工具做TTS配音用B工具生成音效用C工具做BGM最后用D工具手动混音。每个环节都需要人工干预、参数调优、格式转换。BokeSkill的核心洞察是这些环节本质上都是确定性的输入输出映射——输入是文本输出是音频。既然每个环节都可以用AI自动化那为什么不把它们串成一条完整的流水线2.2 BokeSkill的七阶段流水线整个流程分为两个大阶段Agent决策阶段智能编剧音频导演和bridge_final.py执行阶段6个自动化阶段。第一阶段Agent智能决策opencode SKILL.md步骤任务产出Step 1编剧 — 拆场景、设钩子场景结构 开篇钩子设计Step 2音频导演 — 声音设计角色音色描述、SFX/BGM prompt编写第二阶段bridge_final.py全自动执行6阶段用户输入小说/剧本 ↓ Phase 1: Qwen3-TTS VoiceDesign → 角色参考音色voices/*.wav ↓ Phase 2: Qwen3-TTS Base (VoiceClone) → 逐句配音line_*.wav ↓ [可选] ViiTorVoice-NAR → 情感控制配音 ↓ Phase 34: Stable Audio 3 Medium → 音效sfx_*.wav BGMbgm_*.wav Qwen2.5-Omni 质量评估1-10分 低于7分 → 写入 repair_needed.json ↓ Phase 5: Audio-Oscar Mixer DSP → 四总线混音 响度归一化 ↓ 产出: drama_final.wav完整广播剧 audio_manifest.md含评分 repair_needed.json如有低分 ↓ 如有低分Agent修复循环: 读取反馈 → 重写prompt → 重新生成 → 复评2.3 质量闭环自动评分 自动修复这是BokeSkill最精髓的设计——它不是一次性生成就完事了而是一个有质量反馈的闭环系统Qwen2.5-Omni-3B对每个音效/BGM进行1-10分质量评估评分低于7分的片段自动写入repair_needed.jsonAgent读取评分反馈根据Omni的具体评价重写声学prompt删除低分wav文件更新bridge_final.py重新运行生成再次检查repair_needed.json——循环直到全部达标设计原则bridge_final.py不包含任何外部API调用。所有需要智能的决策由agent在脚本外部完成脚本只负责确定性的音频生成/评估/混音。三、技术架构五大外部模型37GB的AI音频引擎BokeSkill整合了5个顶尖的AI音频模型总大小约37GB模型大小用途阶段Qwen3-TTS VoiceDesign4.2 GB根据文字描述生成角色参考音色Phase 1Qwen3-TTS Base (VoiceClone)4.2 GB用参考音色克隆逐句生成配音Phase 2默认ViiTorVoice-NAR~8.5 GB替代引擎原生情感/NVV标签控制CFG权重调强度Phase 2可选Stable Audio 3 Medium9.2 GB统一文本生成音效 背景音乐Phase 34Qwen2.5-Omni-3B11.2 GB音频理解质量评估 低分自动修复触发评估阶段合计~37 GB3.1 VRAM智能管理顺序加载24GB显卡够用所有模型顺序加载/卸载同一时刻最多1-2个模型在显存中Phase 1: VoiceDesign加载(~4GB) → 生成 → 卸载Phase 2 (Qwen3): Base加载(~4GB) → 生成 → 卸载Phase 2 (ViiTorVoice): Encoder(~2.3G) LLM(~2.1G) Decoder(~0.4G) → 生成 → 保持Phase 34: Stable Audio 3 Medium加载(~9GB) → 生成SFXBGM → 卸载Phase 34评估: Omni加载(~11GB) → 评估全部 → [低分修复循环] → 卸载Phase 5: 混音纯CPU无GPU占用最低配置RTX 4090 D 24GB VRAM3.2 两种TTS引擎按需切换BokeSkill支持两套TTS引擎Qwen3-TTS默认语音克隆质量高但推理较慢~5min/句无flash-attn时ViiTorVoice-NAR可选支持原生情感/NVV标签控制推理快6s/句首次加载15s3.3 专业级混音Audio-Oscar DSP链BokeSkill不直接运行Audio-Oscar的完整pipeline而是提取了其最核心的混音能力四总线混音对白/音效/音乐分离处理DSP效果链pedalboard Compressor/Gain/LimiterLUFS响度归一化pyloudnorm确保输出响度专业四、快速上手4.1 硬件要求项目要求当前配置GPUNVIDIA GPU, ≥ 16GB VRAMRTX 4090 D, 24GB VRAMCUDA≥ 12.6CUDA 12.6内存≥ 32GB RAM—磁盘≥ 50GB模型venv产出—4.2 模型下载所有模型均来自HuggingFace完全本地运行无需任何API# Qwen3-TTShttps://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-VoiceDesign https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-Base# ViiTorVoice-NARhttps://huggingface.co/ZzWater/ViiTorVoice-NAR# Stable Audio 3 Mediumhttps://huggingface.co/stabilityai/stable-audio-3-medium# Qwen2.5-Omni-3Bhttps://huggingface.co/Qwen/Qwen2.5-Omni-3B4.3 环境搭建# 1. 创建虚拟环境uv venvF:\voice_design\.venv--python3.12# 2. 安装PyTorch (CUDA 12.6)uv pipinstalltorch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126# 3. 安装核心依赖uv pipinstalltransformers soundfile librosa scipy numpy pedalboard pyloudnorm# 4. 安装Qwen2.5-Omni依赖uv pipinstallqwen-omni-utils pillow av# 5. 安装stable-audio-toolsuv pipinstalleinops transformers accelerate safetensors alias-free-torch auraloss uv pipinstallstable-audio-tools --no-deps4.4 运行完整流水线cdE:\播客skill\podcast-generatorF:\voice_design\.venv\Scripts\python.exebridge_final.py项目会在output/目录下生成drama_final.wav— 完整广播剧混音后audio_manifest.md— 片段清单含Omni评分line_00_角色名.wav— 逐句配音sfx_00.wav— 音效bgm_00.wav— 背景音乐五、已知限制与未来方向项目团队坦诚地列出了当前版本的局限限制影响变通方案flash-attn无法安装(CUDA 13.1 vs PyTorch cu126)TTS推理慢~5min/句降级CUDA驱动到12.4或等待更新Stable Audio 3 Medium参数体系不同仅需8 stepscfg_scale1.0不要照搬Small版本参数Qwen2.5-Omni-3B是3B小模型评估精度有限偶尔评分偏差可升级到7B版本BGM只铺最长一段多场景音乐切换未实现后续在mixer中按场景分段切换Windowssox未安装librosa部分功能降级不影响核心流程最新进展项目刚刚更新了开篇钩子公式5种模式用于生成20秒注意力钩子。六、总结与思考BokeSkill的价值远不止于“又出了一个AI音频工具”。它真正值得深思的地方在于第一它证明了“AI音频全自动流水线”是可行的。把5个顶尖模型串成一条完整的工业流水线加上质量闭环自动修复——这不是demo而是一个真正能产出成品的系统。第二它展示了“Agent 确定性脚本”的分工范式。opencode agent负责所有需要智能的决策编剧、声音设计、prompt修复bridge_final.py只负责确定性的音频生成/评估/混音。这种分工清晰、可维护、可扩展。第三它完全本地化、零API依赖。所有模型都在本地运行不需要任何云API调用——这对隐私敏感的内容创作场景至关重要。第四它把“质量”纳入了自动化闭环。不是生成完就结束而是用Qwen2.5-Omni自动评分、自动修复直到达标。当然BokeSkill目前还有不少局限TTS推理速度偏慢、BGM切换未实现、评估模型精度有限。但它打开了一扇门如果未来的内容创作不再需要你亲自配音、剪音频、找音效而只需要丢一篇小说进去呢项目地址https://github.com/dfytensor/BokeSkill欢迎star、fork、提issue——一起探索AI音频自动化的另一种可能。

相关新闻

终极指南:5分钟搞定ChromeKeePass自动填充密码

终极指南:5分钟搞定ChromeKeePass自动填充密码

终极指南:5分钟搞定ChromeKeePass自动填充密码 【免费下载链接】ChromeKeePass Chrome extensions for automatically filling credentials from KeePass 项目地址: https://gitcode.com/gh_mirrors/ch/ChromeKeePass 还在为记住各种网站密码而烦恼吗&#x…

2026/10/10 23:13:48 阅读更多 →
智能扫码革命:米哈游游戏登录的终极解决方案

智能扫码革命:米哈游游戏登录的终极解决方案

智能扫码革命:米哈游游戏登录的终极解决方案 【免费下载链接】MHY_Scanner MHY扫码登录器,支持从直播流抢码。 项目地址: https://gitcode.com/gh_mirrors/mh/MHY_Scanner 在米哈游游戏生态中,扫码登录已成为玩家日常体验的关键环节。…

2026/10/3 22:34:57 阅读更多 →
2026年探索家庭网络组播电视分发:解锁内容分发新可能,提升网络性能

2026年探索家庭网络组播电视分发:解锁内容分发新可能,提升网络性能

视频博主提供了相关视频的缩略图,点击可跳转至视频页面([缩略图](/posts/2026/isp_mcast/1.png),视频链接:https://youtu.be/nHzU-sspN54 )。参考资料以下这些视频等资料对博主很有帮助,也推荐给读者&#…

2026/10/2 0:48:02 阅读更多 →

最新新闻

RT-Thread—STM32—EasyFlash

RT-Thread—STM32—EasyFlash

RT-Thread—STM32—EasyFlash 概述 本教程主要根据官方推荐的教程进行改编,详细信息请参考EasyFlash软件包 本例程的模板使用通用模板环境搭建里面的模板 RT-Thread——STM32——FAL库 示例工程请参见文末的源码仓库链接, 建议从头开始移植, 加深印象。 配置 打开工…

2026/10/11 3:59:54 阅读更多 →
gitlab4j-api 实战:Java 客户端封装 GitLab REST API 与 CI/CD 避坑指南

gitlab4j-api 实战:Java 客户端封装 GitLab REST API 与 CI/CD 避坑指南

简介:GitLab4J API 是一套面向 Java 开发者的 GitLab REST API 客户端库,适合需要在自有系统中集成 GitLab 仓库管理、CI/CD 或用户权限等能力的后端工程师与运维开发人员。它封装了项目、分组、合并请求、用户、议题、提交等常用子 API,并支…

2026/10/11 3:59:54 阅读更多 →
HarmonyOS V2状态管理实战:从@local开始搞懂深拷贝与嵌套观测

HarmonyOS V2状态管理实战:从@local开始搞懂深拷贝与嵌套观测

从V1那套状态管理切到V2之后,我第一个上手的就是local。说实话,刚开始看文档的时候觉得它就是State换了个名字,但真正在项目里用了两周才发现,这两个装饰器的设计思路根本不在一个维度。HarmonyOS 6.0的V2状态管理把“状态来源”这…

2026/10/11 3:59:54 阅读更多 →
Python情人节浪漫代码:心情泡泡动画小项目实现教程

Python情人节浪漫代码:心情泡泡动画小项目实现教程

每年情人节前后,总有人问我:Python除了写爬虫、做自动化,到底能不能搞点浪漫的东西?其实能,而且门槛低到让人意外。今天这篇就分享一个可以直接拿去送人的小项目:python情人节代码之心情泡泡。它的玩法很简…

2026/10/11 3:59:54 阅读更多 →
激光与电火花加工仿真:从热源到熔池流动的多物理场建模实践

激光与电火花加工仿真:从热源到熔池流动的多物理场建模实践

激光打孔看着简单——一束光打下去,材料上多了个眼。但你要是想提前算出来这个眼长什么样,事情立刻变复杂了。激光打孔时熔融金属会从孔口飞溅出来,孔壁上会留下重铸层,入口边缘还有一圈毛刺;电火花加工那边更热闹&…

2026/10/11 3:59:54 阅读更多 →
Java面试翻车现场:HashMap、线程池、JVM深度拆解

Java面试翻车现场:HashMap、线程池、JVM深度拆解

“严肃面试官 vs 搞笑水货程序员谢飞机(本名王大瓜)——互联网大厂 Java 面试实录与技术拆解”,光看这个标题你可能觉得是个段子,但我在现场的感觉是:这简直就是一场喜剧外壳下的技术解剖课。谢飞机,简历上…

2026/10/11 3:58:54 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →