mcpField
A
azure-speech

azure-speech

github.com/calesthio创意与媒体221101 次安装15 周前更新
代码仓库

关于 azure-speech

面向媒体制作 Agent 的 Azure Speech 技能,帮助按转录、字幕、配音、翻译等任务选择对应服务。内容涵盖实时与批量处理,并强调生产使用前核实区域、配额、语言和访问状态。

主要功能

  1. 01按任务选择语音服务
  2. 02实时与批量语音转文字
  3. 03字幕与说话人分离建议
  4. 04文本转语音模式选择
  5. 05区域和访问状态核验

适用场景

  1. 01为实时内容生成字幕
  2. 02转录媒体库并获取时间戳
  3. 03制作旁白或配音
  4. 04规划视频翻译与本地化

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/calesthio/generative-media-skills --skill azure-speech

安装后在 Claude Code 中输入/azure-speech确认已加载。

附带文件EVAL.md

详细介绍

面向媒体制作 Agent 的 Azure Speech

当 Azure Speech in Foundry Tools 是转录、字幕、隐藏式字幕、旁白、合成语音、虚拟形象语音、语音翻译、视频本地化或制作语音质检的候选提供方时,请使用此技能。

请将 Azure Speech 视为一组相关服务,而非单一模型。选择与任务匹配的最精简官方功能,然后在确定采用前核实区域、配额、语言、定价和访问状态。

以下信息已根据 Microsoft/Azure 文档于 2026-07-10 核实。受支持的区域设置、区域、定价、配额值、API 版本以及预览版/有限访问状态等易变信息,必须在付费使用或投入生产前重新核实。

首先判断:用户实际要求完成什么任务?

已记录的事实:

生产环境中的路由:

  1. 实时字幕、实时听写、实时客户支持辅助或交互式语音 UI → 通过 Speech SDK、Speech CLI 或受支持的实时 REST 使用实时语音转文本。
  2. 单个预录制文件,且编辑人员需要快速获取转录文本/字幕时间信息 → 如果文件和区域符合要求,则使用快速转录 API。
  3. 大量预录制文件、长期存档内容、基于存储的处理、大规模说话人分离或使用自定义语音模型 → 批量转录。
  4. 旁白、画外音、辅助功能朗读或生成式对话 → 使用选定的标准/HD/自定义/个人声音和 SSML 进行文本转语音。
  5. 有声书、长篇课程、长篇文章或成千上万个旁白片段 → 批量合成;不要强行使用实时合成处理长篇内容。
  6. 需要将一种语言的源语音转换为目标文本或语音翻译 → 根据延迟、提示词调整和输出需求,选择语音翻译或 LLM Speech。
  7. 需要为现有视频进行本地化并输出翻译后的视频 → 视频翻译。
  8. 由 Azure Speech 语音输出驱动的会说话的虚拟形象 → 文本转语音虚拟形象。仅当虚拟形象本身是交付内容的一部分时才使用;否则请单独生成音频并进行合成。
  9. 领域术语或声学差异导致转录错误 → 评估短语列表/自定义语音;如果实测收益值得投入,再训练自定义语音模型。

不要将说话人分离描述为说话人身份识别。Azure Speech 的说话人分离会将说话人标记为 Guest1/Guest2 等,并非用于识别个人。来源:https://learn.microsoft.com/en-us/azure/foundry/responsible-ai/speech-service/speech-to-text/transparency-note

用于字幕、转录文本和编辑日志的语音转文本

实时转录

当用户需要即时获取部分或最终结果,用于实时字幕、实时笔记、听写或响应迅速的语音应用时,请使用实时转录。

已记录的事实:

生产实践启发:

  • 对于实时字幕,应优先优化延迟和可读性;保留事后校正环节,以修正姓名、术语和断句。
  • 请确认字幕是用于无障碍访问、实时监控、剪辑准备,还是法律/存档转录。这些场景对容错的要求各不相同。
  • 对于会触发操作的语音界面,应显示或播放识别出的文本,并在执行不可逆操作前请求确认。
快速转录

当用户需要对单个音频/视频文件进行同步转录,且要求延迟可预测时,请使用快速转录,例如快速制作字幕、剪辑准备、会议纪要或语音信箱转录。

已记录的事实:

生产实践启发:

  • 对于单个紧急编辑任务,优先使用快速转录;对于媒体库、队列或可重复的流水线,优先使用批量转录。
  • 尽可能指定已知区域设置,以提高准确率并降低延迟。仅在语言确实未知或内容为多语言时使用语言识别。
  • 对于字幕,请请求词级/片段级时间信息,然后进行字幕分段处理;原始转录时间信息并不自动满足广播级断行要求。
批量转录

当用户有大量预录文件、长篇材料、基于存储的摄取任务、异步处理、说话人分离、词级时间戳或自定义语音模型时,请使用批量转录。

已记录的事实:

生产实践建议:

  • 围绕存储来源构建批量作业:源 URI/SAS、区域设置、模型、说话人分离、词级时间戳、脏话处理策略、TTL、输出存储和重试计划。
  • 对于存档媒体,将摄取元数据与转录文本分开保存:文件 ID、节目/剧集、权利人、输入语言、预期说话人数和噪声备注。
  • 使用指数退避进行异步轮询,并确保 UI 如实显示“排队中/运行中/已成功/已失败”,而不是伪造进度条。
说话人分离与区分

已记录的事实:

生产实践建议:

  • 如果用户需要区分“爱丽丝和鲍勃”,仅靠说话人分离并不足够。请将其用作初步分段辅助,再手动或通过受监督的编辑流程将标签对应到姓名。
  • 当说话人的声学特征易于区分时,说话人分离最为有效。多人重叠发言、噪声大、麦克风距离远或说话人过多时,效果会下降。
  • 为词语准确度和说话人轮次准确度分别设置 QA 流程;转录文本可能准确无误,但词语可能被分配给了错误的说话人。
字幕和隐藏字幕

有据可查的事实:

制作经验法则:

  • 分两步生成字幕:先转录并确定时间,再进行字幕格式编排。
  • 字幕质量检查应涵盖行长、阅读速度、镜头切换冲突、标点、说话人标签、必要时添加的音乐/音效提示、脏话处理政策,以及交付内容是烧录字幕还是外挂字幕。
  • 对于专业字幕,不要盲信原始标点;应根据语义和节奏调整句子边界。
  • 如果涉及法律合规,应询问用户指定的标准、平台或地区,而不是自行假定无障碍规范。

用于旁白和合成语音的文本转语音

语音选择

有据可查的事实:

制作经验法则:

  • 根据角色和媒介选择语音:权威的讲解、亲切的教程、清晰的产品演示、无障碍朗读、角色对白或本地化配音。
  • 务必测试确切的目标区域设置、地区、语音、输出格式和 SSML 标签。“支持 TTS”并不意味着“支持这种风格标签”。
  • 对于品牌项目,应先筛选出一组候选语音,再使用同一段 20–30 秒的试听稿为每个候选语音生成音频。
  • 对于多语言旁白,应在每种目标语言中测试母语发音。跨语言保留音色并不保证每段脚本都能以听起来像母语者的方式演绎。
将 SSML 作为制作控制界面

有据可查的事实:

制作经验:

  • 谨慎使用 SSML。与使用强表现力的语音并尽量少加停顿、只修正发音相比,过度控制韵律可能会让语音听起来不够自然。
  • 将发音修正放入可复用的词库或音素标签中,适用于产品名称、首字母缩写、人名、数学内容和品牌术语。
  • 根据编辑意图标记换气和停顿,而非仅依据标点。
  • 在同一份脚本中使用多种语音时,将每个说话轮次放在各自的 voice 块中;与音乐/音效混音时,分别导出各个音轨。
长音频的批量合成

有据可查的事实:

制作经验:

  • 即使批量合成可以处理长内容,也应将长篇旁白拆分为语义明确的章节或场景,这样补录、重录和混音调整的成本会更低。
  • 使用清单记录脚本 ID 对应的输出音频路径、语音名称、SSML 版本、采样率和审批状态。
  • 对于有声书和课程,先渲染一段简短的试播章节,并在批量渲染全部文本前检查语气、发音、响度、章节标识音和静音。
自定义语音、个人语音与同意边界

文档记载的事实:

生产实践准则:

  • 除非用户提供权利证明、明确同意、获批的使用场景和法律许可,否则不要建议克隆名人、员工、客户、已故人士或制作“相似音色”。
  • 对于品牌语音,应将“语音设计”与“语音克隆”区分开来。通常使用标准神经语音或 HD 语音,配合 SSML 和配音指导就足够了。
  • 生产使用前要求提供权利文件包:配音人员同意、使用范围、适用地区、渠道、期限、撤销政策、合成语音披露计划及审批联系人。
  • 对于个人语音,应确认使用场景属于获批或已注册的使用场景,并确认最终用户能够控制自己语音的创建和使用。

语音翻译、LLM Speech 和视频本地化

已记录的事实:

生产经验法则:

  • 本地化不只是转录:还需要按含义翻译、调整习语、重新调整字幕时间、正确读出姓名、匹配说话者语气,并在重新生成视频时检查口型和语速。
  • 对于源视频,应将源语言转录稿、译稿、经编辑并批准的脚本、合成音频和最终混流视频分别保存为独立素材。
  • 如果目标是营销配音视频,最终交付前应安排母语人士审核。
  • 对于多语言实时场景,应测试网络状况和目标语言延迟;实时口译的质量风险与后期配音并不相同。

文本转语音虚拟形象

已记录的事实:

生产经验法则:

  • 如果可以接受使用合成演讲者,可在主持人主讲的培训、支持或本地化场景中使用 Azure 虚拟形象。不得利用虚拟形象暗示真实人物说过未经其授权的话。
  • 应确认交付内容是否需要虚拟形象,还是只需要旁白。虚拟形象视频会增加同意、渲染、恐怖谷效应、披露和审核方面的义务。
  • 对于自定义虚拟形象项目,应要求提供与自定义语音相同的权利文件包,并涵盖肖像权和模型使用限制。

区域、配额、定价和治理检查

在接受 Azure Speech 方案前,请执行以下检查:

  1. 区域:确认所选 Azure Speech 资源区域支持所需的具体功能:快速转录、批量合成、虚拟形象、LLM Speech、Voice Live、个人语音或视频翻译。Microsoft 表示,核心功能覆盖范围较广,但部分功能需要特定区域。来源:https://learn.microsoft.com/en-us/azure/ai-services/speech-service/regions
  2. 数据驻留:Azure Speech 文档指出,数据仅存储或处理在创建 Speech 资源的区域中。来源:https://learn.microsoft.com/en-us/azure/ai-services/speech-service/regions
  3. 语言/语音:确认所需功能支持目标区域设置和语音。不同功能的语言支持情况各异。来源:https://learn.microsoft.com/en-us/azure/ai-services/speech-service/language-support
  4. 配额:确认 F0/S0 层级、并发数、请求速率、文件大小、时长、终结点、数据集、虚拟形象、LLM Speech 和批处理限制。来源:https://learn.microsoft.com/en-us/azure/ai-services/speech-service/speech-services-quotas-and-limits
  5. 定价:确认当前区域/货币定价和计费单位。Microsoft 的定价页面按音频时长对 STT 计费、按字符数对 TTS 计费;虚拟形象根据表格部分按秒或分钟计费;自定义训练/托管单独计费;并注明快速转录定价要求使用 REST API 2024-11-15 或更高版本。来源:https://azure.microsoft.com/en-us/pricing/details/speech/
  6. 访问权限:确认自定义神经语音、个人语音和自定义虚拟形象已获批 Limited Access。来源:https://learn.microsoft.com/en-us/azure/foundry/responsible-ai/speech-service/text-to-speech/limited-access
  7. 身份验证:对于生产环境,在文档有说明的情况下,优先使用 Microsoft Entra ID/无密钥身份验证;如使用 API 密钥,请妥善保护。来源:https://learn.microsoft.com/en-us/azure/ai-services/speech-service/llm-speech
  8. 保留:对于批量转录,请有意设置输出存储和 timeToLive。来源:https://learn.microsoft.com/en-us/azure/foundry/responsible-ai/speech-service/speech-to-text/data-privacy-security

运营观察:

  • Azure 文档和品牌已从 Azure AI Speech 转向 Foundry Tools 中的 Azure Speech;面向用户的门户、资源名称和较旧的 SDK 示例可能仍使用旧术语。请以当前 Learn 页面作为实施路径的权威依据。
  • 定价页面可能显示占位符,或因区域/货币/账户而异。未经计算器或计费账户核实,切勿在用户报价中硬编码美元估算。

隐私、安全、同意与权利

已记录的事实:

生产实践建议:

  • 将每一种声音和面孔都视为受权利保护的媒体,即使由用户提供也是如此。
  • 对于采访、会议、通话或公共场所录音,在转录前询问同意情况及受司法管辖区影响的限制。
  • 对于涉及未成年人、医疗、就业、法律或财务的场景,应升级数据处理和同意审查;不要擅自制定政策。
  • 对于合成旁白,如果受众可能合理地认为该声音是真人演绎,或平台、客户端、法律或 Microsoft 条款有所要求,则应披露其为合成语音。
  • 拒绝或引导用户改用其他方式处理冒充真人、绕过同意、隐瞒合成来源、规避检测/水印,或利用说话人分离识别身份的请求。

生产 QA 检查清单

转录/字幕:

  • 验证源音频的采样率、声道、编解码器、时长、削波、噪声、混响、重叠情况和目标区域设置。
  • 确认所选模式:实时、快速、批量、LLM Speech 或自定义语音。
  • 对照人工参考文本,至少针对有代表性的片段按 WER 风格抽样检查词语准确度。
  • 检查词语/字幕的可读性:标点、大小写、数字、人名、术语、粗俗用语策略、语言切换、时间戳和说话人标签。
  • 对于说话人分离,将类似 WDER 的说话人分配错误与文本错误分开审查。
  • 对于批量处理,验证每个文件都有结果或错误报告;不得静默丢弃失败文件。

TTS/旁白:

  • 试听指定语音、区域设置、输出格式、SSML 标签、采样率和说话风格。
  • 验证人名、首字母缩写、产品术语、数学内容、URL、货币、日期和多语言段落的发音。
  • 对照剪辑时间线检查语速;通过 SSML 或编辑脚本调整时长,不要超出可接受限度进行后期拉伸。
  • 与音乐/音效混音时,在合成后进行响度标准化和齿音抑制。
  • 保存经批准的脚本、SSML、语音、区域、渲染日期和音频哈希,以便复现。

本地化/配音:

  • 保留源内容含义,对习语进行文化适配,并由母语人士验证。
  • 根据场景时长检查目标语言内容的扩展/精简情况。
  • 编辑后验证字幕和配音内容一致。
  • 审查每种区域设置下的合成语音披露和权利。

示例:为紧急产品演示快速生成字幕草稿

示例意图:在一次编辑过程中,为 14 分钟的产品演示生成英文字幕草稿。

适用的 Azure 功能:快速转录 API,前提是资源所在区域支持该功能,且文件未超过当前限制。

输入和约束:

  • 从编辑系统导出的一个 demo_walkthrough.mp4。
  • 已知语言:en-US。
  • 需要适合显示的转录文本、单词时间戳、屏蔽脏话;除非有两位说话者,否则关闭说话人分离。
  • 转录完成后,编辑流水线会将输出转换为 SRT/VTT。

工作流:

  1. 确认所在区域支持快速转录,并核实当前文件大小和时长限制。
  2. 文件较小时以内联方式上传;文件较长时使用公共 URL。
  3. 调用快速转录,指定已知区域设置、单词级时间戳和所需的脏话处理策略。
  4. 将结果转换为字幕,并按编辑需求进行分行。
  5. 在烧录字幕前,对照音频抽查开头、中间和结尾部分。

预期结果:快速返回带有时间数据、适合用作字幕草稿的可读转录文本。

失败模式:

  • 区域或 API 版本不受支持。
  • 文件超出快速转录限制。
  • 区域设置不匹配会降低准确率。
  • 原始字幕行过长或分段不当。
  • 产品名称需要在后续 TTS 中通过短语列表或类似 SSML 的发音处理,而非仅修正转录文本。

变体:如果有 250 个视频,请改用批量转录,并从 Blob Storage 处理,而不是逐个调用快速转录。

示例:对播客存档进行带说话人分离的批量转录

示例意图:转录 600 集播客,用于生成可搜索的节目笔记,并供编辑审阅时查看说话人标签。

适用的 Azure 功能:批量转录。

输入和约束:

  • 音频存储在具有 SAS 访问权限的 Azure Blob Storage 中。
  • 已知区域设置:en-US。
  • 有两到四位固定主持人以及嘉宾,但不要求自动识别说话人。
  • 需要单词时间戳、说话人标签、输出保留策略和失败报告。

工作流:

  1. 确认批量转录的区域、配额、定价和存储权限。
  2. 按节目或季提交批次,不要把所有文件放在一个不可靠的作业中。
  3. 启用说话人分离和单词级时间戳。
  4. 设置输出存储和 timeToLive。
  5. 轮询作业状态;收集转录文本和报告文件。
  6. 在编辑质量检查期间,手动将嘉宾标签映射到真实说话人姓名。
  7. 按节目类型抽样检查类似 WER 和 WDER 的错误:录音棚、远程、现场、嘈杂环境。

预期结果:异步生成的转录文件,为每集提供文本、时间戳和嘉宾说话人标签。

失败模式:

  • SAS URL 在处理开始前过期。
  • 服务高峰负载导致处理延迟启动。
  • 语音重叠会导致说话人分离错误。
  • 嘉宾标签在不同节目中无法保持一致。
  • 存档包含需要特殊处理的多语言片段或音乐密集片段。

变体:如果领域术语导致反复出错,请先使用自定义语音评估,并在测量基线错误模式后再训练自定义模型。

示例:用于精致解说的 SSML 旁白

示例意图:为 SaaS 上市视频生成一段平静、高端的 60 秒旁白。

适用的 Azure 功能:根据音量选择实时文本转语音或批量合成;试听后选择标准神经语音或 HD 语音。

SSML 示例:

<speak version="1.0" xml:lang="en-US"
       xmlns="http://www.w3.org/2001/10/synthesis"
       xmlns:mstts="https://www.w3.org/2001/mstts">
  <voice name="en-US-AvaMultilingualNeural">
    <prosody rate="-6%" pitch="-1st">
      Your team does not need another dashboard.
      <break time="350ms"/>
      It needs one place where risk, revenue, and work in progress finally agree.
    </prosody>
    <break time="500ms"/>
    <prosody rate="-3%">
      Meet Contoso Atlas: the operating layer for decisions that cannot wait.
    </prosody>
  </voice>
</speak>

参数:

  • 语音:在目标区域试听并选定的具体语音。
  • 输出:如有条件,使用 48 kHz WAV 进行后期制作;否则,在混音前使用实际可行的最高 PCM 格式。
  • 渲染:每个场景或段落生成一个文件,以便更轻松地重录。

这样组织的原因:适度停顿和较慢的语速能创造剪辑点,同时避免语音风格过度修饰。

预期结果:干净的旁白音轨,可用于响度标准化和混音。

故障模式:

  • 所选语音不支持请求的 SSML 风格或控制功能。
  • 过度使用韵律控制会导致语音听起来像机器人。
  • 品牌或产品的发音不正确。
  • 计费估算未涵盖 SSML 控制的计费字符。

变体:对于长期培训课程,使用批量合成,并通过章节 ID 清单进行管理,而非实时调用。

示例:自定义语音请求分流

示例用户请求:“克隆我们 CEO 的声音,用于所有投资者动态视频。”

正确做法:

  1. 只有在满足官方有限访问要求、获批用例和明确同意的情况下,才将其视为自定义神经语音或个人语音需求。
  2. 要求提供授权证明、配音者同意、预期使用场景、披露计划、使用期限、渠道、地区和撤销政策。
  3. 如果用户只需要相似的高管语气,建议试听标准语音或 HD 语音,而不是进行克隆。
  4. 如果已获授权,在收集训练数据前,先创建语音角色并测试脚本。

预期结果:制定合规的自定义语音方案,或更安全的标准语音选用方案。

故障模式:

  • 仅凭一句随意的“CEO 说没问题”就继续操作,没有取得书面同意。
  • 使用模型在获批场景之外模仿他人。
  • 未披露使用了合成语音。
  • 未经批准就假定可以访问个人语音 API。

变体:对于演示者虚拟形象,除声音权利外,还要要求提供肖像权和虚拟形象配音者的同意。

已于 2026-07-10 核实的来源

评论

支持 Markdown