跳至主要内容

AWS 解决方案库

使用 Amazon Polly 阅读和突出显示 Web 内容的指南

概览

本指南演示了如何使用 Amazon Polly 为网页设置音频播放,Amazon Polly 可以为访客大声朗读网页的内容,并在叙述时突出显示文本。这种文字转语音的功能增强了用户的可访问性,代表了组织的可访问性策略中的关键一步。此外,音频丰富的内容更有影响力、更令人难忘,有助于增加您的页面流量并增强您的品牌。

工作原理

静态网页

此架构图显示了如何使用 Amazon Polly 来阅读和突出显示静态网页上的内容。亚马逊 Polly 将文件输出到存储桶中。当你播放音频时,浏览器会下载 MP3。

Architecture diagram showing how Amazon Polly is used to generate and deliver audio and highlighting for static webpages. The workflow includes web publishers extracting text, generating MP3 audio using Amazon Polly, storing files on Amazon S3, distributing through CloudFront, and enabling visitors to use browsers or mobile devices to hear audio with synchronized text highlighting.

动态网页

此架构图显示了如何使用 Amazon Polly 来阅读和突出显示动态网页上的内容。当您播放音频时,该页面使用 prtp.js 在 Amazon Polly 中生成音频,它使用与静态页面相同的方法突出显示合成的音频。

Architecture diagram illustrating how visitors using browsers or mobile devices interact with a dynamic webpage that utilizes Amazon Polly and Amazon Cognito to generate audio, play MP3s, and highlight web content, with assets stored in Amazon S3.

Well-Architected 支柱

上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。

您可以在 Web 应用程序之外的环境中调整和测试静态语音和预生成语音的语音配置。当您准备好将更改部署到 Web 应用程序时,您可以将网页链接到预先生成的语音文件,这是现有 Web 发布流程的一部分。您还可以使用本指南中提供的客户端 JavaScript 的修改版本在测试 Web 环境中调整和测试动态生成。然后,作为 Web 应用程序更新过程的一部分,您可以将这些更改部署到生产 Web 服务器。此外,亚马逊 CloudWatch 允许您监控亚马逊 Polly 和 Amazon S 3 资源的使用情况。值得注意的是,Amazon Polly 请求的字符数随着语音生成请求数量的增加而增加。

阅读“卓越运营”白皮书

Cognito 身份池为未经身份验证的用户提供了对 Amazon Polly 和 Amaz on S3 资源的足够访问权限,可以根据网页上的文本生成语音。您可以对其进行修改,使其仅向经过身份验证的用户提供访问权限。或者,您可以使用 CloudFront 来分发音频内容,这样网页访问者就无法直接访问 Amazon S3 存储桶。这使您能够保护和限制访问权限,例如使用签名的 URL 或 Cookie、地理限制和 AWS WAF 保护。

本指南使用 256 位高级加密标准 (AES) 对 A mazon S3 存储桶进行加密,但您可以修改本指南以使用 AWS 密钥管理服务 (AWS KMS)。对于传输中的数据,可通过 AWS 命令行接口 (AWS CLI)、适用于 JavaScript 的 AWS 软件开发套件 (AWS SDK) 工具或 HTTPS 或 TLS 连接访问亚马逊 Polly 。您可以使用 Amazon S3 存储桶策略来指定 HTTPS 访问存储桶。

阅读《安全性》白皮书

Amazon S3 提供高度耐用的存储,大多数存储类别会跨三个可用区 (AZ) 复制对象,从而提高可用性并减少访问者无法访问语音文件的机会。此外,用于动态合成语音的适用于 JavaScript 的 AWS 开发工具包配备了限制和重试功能。

阅读《可靠性》白皮书

要优化本指南,请首先识别静态内容并使用架构图中概述的提供的预生成功能。这样可以消除对实时语音合成的需求,从而提高性能。静态内容可以直接从 Amazon S3 存储桶中提供,既可以作为静态网站,也可以作为 CloudFront 分配的来源。这样可以避免在 Web 服务器上增加处理或存储容量来提供语音和音频文件的需求。它还受益于通过缓存对数据的低延迟访问以及该内容在边缘的可用性。接下来,使用提供的配置示例自定义用于语音生成的内容选择。

为了减少延迟,请将本指南部署到与您的 Web 应用程序相同的 AWS 区域。或者,如果您使用 CloudFront 发行版,则可以通过缓存或在更靠近 Web 应用程序访问者的边缘提供内容来实现低延迟。此外,您还可以自定义选择内容进行语音生成的方式,以控制要合成的文本。

阅读《性能效率》白皮书

为了优化成本,您可以识别静态内容并预生成语音文件,这样 Amazon Polly 只需将文本转换为语音一次。您还可以限制 Amazon Polly 可以为您的网站生成的口语或语言的数量。数据传输费用取决于生成的 MP3 和语音标记文件的大小和下载频率。您可以通过在 Amazon S3 中托管预生成的文件来降低此成本,从而降低 Web 服务器的存储容量要求。

您还可以通过内容缓存来优化成本,这对于需要频繁访问音频的热门内容尤其有利。您可以使用 AWS 成本和使用情况报告 (AWS CUR) 测试这种方法并监控成本。此外,对于动态但较小的内容(长度小于 6,000 个字符),本指南会同步生成语音标记,因此您无需从 Amazon S3 存储桶中存储和下载语音标记,从而降低流量成本。

阅读《成本优化》白皮书

本指南允许您为静态内容预生成语音,这是一种合成一次、多次收听的方法,可最大限度地减少资源和能源的使用。此外,本指南使用来自亚马逊 Polly、Amazon S3 和 Amazon Cognito 的无服务器资源,因此您无需过度配置计算和存储。您还可以选择 Amazon S3 Express 单区域存储类而不是默认层级,以减少可用区间复制和总体存储占用量。

阅读《可持续性》白皮书

相关内容

使用 Amazon Polly 阅读网页并突出显示内容

这篇博客文章演示了如何使用 Amazon Polly(一种将文本转换为逼真语音的领先云服务)来阅读网页的内容并在阅读时突出显示内容。

阅读博客

免责声明

示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。

找到今天要查找的内容了吗?

请提供您的意见,以便我们改进网页内容的质量。