【免费下载链接】prehistoric-animal-museumA free, open-source bilingual 3D museum where young children and their grown-ups explore prehistoric animals across land, sea, and sky.项目地址https://gitcode.com/gh_mirrors/pr/prehistoric-animal-museum点击查看免费下载你是否好奇prehistoric-animal-museum 里那些温柔连贯的中文、英文讲解旁白到底从何而来这个免费开源的双语 3D 恐龙博物馆为 24 种史前动物制作了开场—靠近—抵达三段式连续旁白。全部音频由 Qwen3-TTS 大模型在本地离线生成把三段文案拼成一次输入合成一条不间断的主音频master统一归一化后再从自然停顿处精确切回三个 MP3 片段。本文带你完整看懂这套生成 → 归一化 → 切分的旁白流水线。三段式旁白一次探险的三个瞬间在尺度遭遇scale-encounter体验中孩子和大人会跟随旁白走近一只史前动物整个旅程被拆成三个阶段阶段英文标识作用开场intro介绍目的地和动物抛出悬念它从鼻到尾有八米你能猜到能到它身体的哪里过渡transition边走边观察细节把视线引向目标抵达arrival站在动物身旁感受真实尺度每个阶段的一句话文案都写在 narration-scripts.json 中按动物 × 语言zh-CN / en组织。以剑龙中文开场为例小朋友准备好了吗背上小背包我们穿过树林去寻访一只剑龙。它从头到尾有八米你猜自己能到它身体的哪里为什么三段文案要一次说完最直观的偷懒做法是三句话分别调用 TTS得到三个 MP3。但这样做有三个问题语气割裂三次独立生成的停顿节奏、气息和音调各不一致拼起来像三个人在说话响度不一每个片段单独归一化衔接处会忽大忽小衔接点生硬句末的停顿没有呼吸感听起来像被剪断的录音。ANIMAL_AUTHORING_GUIDE.md 中明确写入了这条连续性规则intro、transition、arrival 被视为同一条旁白必须一次输入、一次归一化、之后再切分绝不允许三段各自独立生成。生成流水线一条命令完成四步核心脚本是 generate-scale-encounter-continuous-narration.py用项目共享的 Qwen 虚拟环境执行即可../../../../../.runtime/qwen3-tts/venv/bin/python \ scripts/generate-scale-encounter-continuous-narration.py整条流水线分为四步拼接文案把三种阶段的文案用换行符连接成continuousScript作为一次 TTS 输入脚本内注释说换行能强化两个剪辑点又不破坏单次输入、单次 master 的约定。调用 Qwen3-TTS加载Qwen/Qwen3-TTS-12Hz-0.6B-CustomVoice模型使用内置的Serena音色与静态展馆旁白同一声线在 CPU 上以float32 sdpa推理并固定随机种子20260823保证可复现。归一化一次用 FFmpeg 裁掉首尾静音整条 master 提速 1.04 倍只改速度、不改音调再经两遍loudnorm集成响度 I-18 LUFS、真峰 -1 dBTP、LRA 7输出 48 kHz 单声道 24-bit 无损 WAV 主音频。按样本切分在自然停顿处把 master 切成三段逐段编码为 80 kbps MP3覆盖到 src/scale-encounter/audio/ 目录。一个细节很讲究脚本会为同一批任务生成两次--runs 2要求两次的原始 WAV 逐字节一致否则直接报错——这是在用重复运行哈希比对来守护生成结果的可复现性。切分点怎么选让机器找自然停顿切分不是机械地对半分而是一个带约束的搜索问题先估期望位置按每段文案的字数中文按汉字/字母计英文按音节近似和句末停顿数量估算每段应占的时长得到两个期望分界点见 expected_boundary_seconds。再搜自然停顿用 FFmpeg 的silencedetect阈值 -50 dB、最短 20 ms扫出所有静默区间只保留足够长且不在首尾的候选。最后打分择优枚举候选停顿组合以偏离期望位置的距离为主、停顿时长对数为奖励选总分最优的切点。若切点偏离期望超过 2.75 秒脚本会拒绝并提示先听完再人工覆盖切点。切分以精确样本索引48 kHz 下的采样点为准而不是秒数保证三个片段首尾严格相邻、无缝可拼接见 encode_slice。结果如何被浏览器消费切分完成后每个动物每种语言得到三个 MP3命名稳定例如stegosaurus-intro.zh-CN.mp3、stegosaurus-transition.zh-CN.mp3、stegosaurus-arrival.zh-CN.mp3全部位于 src/scale-encounter/audio/。两个 JSON 文件是旁白账本transition-durations.json记录每种动物 transition 段的实际毫秒数运行时用它精确对齐旁白与镜头推进narration-candidates.json候选清单记录模型版本与修订号、种子、目标响度、每条切片的 SHA-256、所属 master 的哈希与精确采样区间startSample/endSample以及人工试听审批状态。运行时content.ts 把三个文件路径注册进每种动物的audio配置intro → transition → arrival依序播放配合 transition-durations.json 的时长驱动场景过渡。证据链与人工试听所有中间产物——原始运行 WAV、归一化 master、听审预览、检测到的停顿、精确切点——都保存在被 git 忽略的 handoff 证据目录里并生成一份manifest.json入库的候选清单与它一一对应任何人都可以拿哈希复核这三段 MP3 确实切自同一条 master。值得注意的是脚本跑完只把状态置为pending旁白从不自动放行。文案、多音字发音比如重爪龙的 zhòng 音通过 pronunciation overrides 处理、节奏、切点都要经过人工完整试听记录审批人、日期与证据后才算approved才能进入正式发布。小结三段文案一次输入 Qwen3-TTSSerena 音色、固定种子、CPU 推理保证语气与音色连贯整条 master 只做一次 1.04x 提速与 loudnorm 归一化避免逐段处理的响度割裂切分点由期望位置估计 静默检测 打分择优决定并以精确样本对齐偏差超阈即拒绝每次运行留下完整证据链哈希、采样区间、模型修订号人工试听审批后才可发布。这套连续生成、一次归一化、自然停顿切分的做法是低成本获得电台级连贯旁白的实用方案也值得任何需要多段语音导览的互动项目借鉴。赞分享【免费下载链接】prehistoric-animal-museumA free, open-source bilingual 3D museum where young children and their grown-ups explore prehistoric animals across land, sea, and sky.项目地址https://gitcode.com/gh_mirrors/pr/prehistoric-animal-museum点击查看免费下载相关推荐使用Azure TTS在Remotion中生成专业视频旁白的完整指南使用Azure TTS在Remotion中生成专业视频旁白的完整指南 Remotion语音合成功能让您能够使用微软Azure文本转语音服务为视频生成专业旁白。这音视频AI 应用前端PPT Master 音频旁白全流程指南从逐页 TTS 配音、SRT 字幕到 PowerPoint 原生视频导出PPT Master 音频旁白全流程指南从逐页 TTS 配音、SRT 字幕到 PowerPoint 原生视频导出 PPT Master 的旁白Audio NAI 技能人工智能AI 应用Remotion AI 配音实战用 ElevenLabs TTS 生成场景旁白并通过 calculateMetadata 动态设定合成时长Remotion AI 配音实战用 ElevenLabs TTS 生成场景旁白并通过 calculateMetadata 动态设定合成时长 本文是 Remo音视频AI 应用前端创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考