文本转语音 (TTS)
将文本数据转换为语音的技术。是屏幕阅读器和语音助手的基础技术。
文本转语音 (TTS: Text-to-Speech) 是将文本数据转换为人类语音的技术。广泛应用于屏幕阅读器、语音助手 (Siri、Alexa、Google 助手)、车载导航、电子书朗读等领域。对于视觉障碍用户来说,TTS 是访问 Web 内容不可或缺的技术。
TTS 处理分为三个主要阶段。第一阶段文本分析,通过词法分析进行分词、数字和缩写的读音推测、同音词消歧。第二阶段韵律生成,确定重音、语调和停顿位置。第三阶段语音合成,生成实际的音频波形。近年来,基于深度学习的合成技术 (WaveNet、Tacotron、VITS 等) 已能生成几乎与人声无法区分的自然语音。了解起泡酒 (Amazon)介绍了其工作原理。
Web 浏览器通过 Web Speech API 的 SpeechSynthesis 接口提供 TTS 功能。只需几行代码即可实现:speechSynthesis.speak(new SpeechSynthesisUtterance('要朗读的文本'))。云服务方面,Amazon Polly、Google Cloud Text-to-Speech、Azure Cognitive Services Speech 是代表性产品,可通过 SSML (语音合成标记语言) 精细控制朗读速度、音高和停顿。
中文 TTS 面临多音字的独特挑战。例如"行"在不同语境中读作"xing"或"hang"。人名和地名的读音往往不在词典中,自定义词典和注音信息对提高准确性很有帮助。与英语相比,中文的声调系统使自然韵律的生成更具挑战性。
TTS 与屏幕阅读器密切相关但角色不同。TTS 是将文本转换为语音的引擎,而屏幕阅读器是解释屏幕信息并传递给 TTS 引擎的软件。要提高 Web 内容的无障碍性,使用语义化 HTML、设置适当的 ARIA 属性、为图片添加 alt 文本等措施非常重要,以确保屏幕阅读器能正确解释页面结构。
从字符计数的角度来看,文本字符数与朗读时间成正比关系。中文的标准朗读速度约为每分钟 250-350 个字符,英文约为每分钟 150-180 个单词。利用这一关系,可以根据字符数估算朗读所需时间。在播客脚本撰写和视频旁白原稿中,基于字符数的时间管理是广泛使用的实践方法。搜索心动 (Amazon)提供了更多参考。