SuperAPI AI 工具集

tts-voiceover

通用与其它

查看项目

更新于 10-16 06:47

技能介绍

用途:读取 PowerPoint 技能内容目录中的 content.yaml,提取 speaker_notes 字段,为每张幻灯片生成一个 WAV 配音文件,并可将音频嵌入 PPTX。

主要能力:支持 Azure 与 Piper 两种引擎(--engine)。Azure 为默认,发送 SSML 到 Azure AI Speech 神经语音,通过 acronyms.yaml 控制缩略语发音;支持仅验证 SSML 的 dry-run 模式,无需凭据。Piper 为本地可选引擎,需单独安装,下载语音后无需凭据或网络,旁白不离开主机。另可用 embed_audio.py 把 WAV 嵌入对应幻灯片并加入旁白时间 XML,供 PowerPoint 导出视频使用。

使用方式:安装依赖在技能目录运行 uv sync。Azure 需设置 SPEECH_KEY 与 SPEECH_REGION,或 SPEECH_RESOURCE_ID(Entra ID)与 SPEECH_REGION。验证模板运行 uv run scripts/generate_voiceover.py --dry-run --content-dir path/to/content;生成运行 uv run scripts/generate_voiceover.py --content-dir path/to/content --output-dir voice-over;Piper 加 --engine piper。嵌入运行 uv run scripts/embed_audio.py --input deck.pptx --audio-dir voice-over --output deck-narrated.pptx。可用 --slide 指定单张、--voice、--rate、--lexicon、--collapse-newlines 等参数;acronyms.yaml 按 --lexicon、内容目录、内置默认的顺序解析。

适用场景:为幻灯片批量生成配音并嵌入演示文稿。

限制:需 Python 3.11+ 与 uv;Azure 需 SPEECH_REGION 且无默认,内容会传输到所设区域,请避开受监管或机密旁白。Piper 无 SSML,别名直接替换进文本。embed_audio.py 会替换原有 p:timing,可能影响动画与点击换页。HVE 演示材料 CI 不使用这两种语音引擎,仅生成静音视频。其他未提及的收费、价格等暂未提供。