为出版机构生成文章音频,支持中文、英语和泰语

在 CMS 流水线中加入文章音频,并以批处理任务为有声书逐章配音,支持中文、英语和泰语,按字符计费。

可以试试的想法

新闻导语

วันนี้ธนาคารแห่งประเทศไทยประกาศคงอัตราดอกเบี้ยนโยบายไว้ที่ระดับเดิม ท่ามกลางแรงกดดันจากเศรษฐกิจโลก

Nom Yenpaxa-tts-flash-v2在语音页面打开
一段小说

เสียงฝนกระทบหลังคาสังกะสีดังไม่หยุด เธอเปิดจดหมายฉบับนั้นออกอ่านอีกครั้ง มือสั่นเล็กน้อย

Nom Yenpaxa-tts-flash-v2在语音页面打开
突发新闻快讯

ข่าวด่วน กรมอุตุนิยมวิทยาเตือนฝนตกหนักในพื้นที่กรุงเทพฯ และปริมณฑลช่วงเย็นวันนี้

Nom Yenpaxa-tts-flash-v2在语音页面打开
文章音频的开头

บทความนี้มีความยาว 6 นาที คุณกำลังฟังเวอร์ชันเสียงที่สร้างจากข้อความต้นฉบับ

Nom Yenpaxa-tts-flash-v2在语音页面打开

每张卡片播放的都是 Nom Yen 按卡片脚本原文生成的真实音频。在语音页面打开后,可以让它说任何内容。

编辑部如何使用 API

编辑部一天发布的稿件,多到一位播音员录不完。到 2024 年底,国际大型出版机构已经在提供 AI 朗读的文章音频,《时代》周刊和《华盛顿邮报》都有公开记录。《华盛顿邮报》报告,每 30 天约有 400 万次音频收听,完播率约为 70%。在泰国,收听这一端已经存在。MEB 经营着专门的有声书商店,泰国的有声书平台和一家免费的公共有声图书馆也都在运营。一家泰国电视台在 2024 年让 AI 新闻主播上了节目。对于用中文、英语或泰语写作的编辑部,制作这一端就是一条流水线。文章发布时,webhook 发送正文,返回的 MP3 存储下来,播放器嵌在文章旁边。有声书以批处理任务逐章生成,适合长销旧书、连载小说和草稿试听,重点书目仍交给真人播音员。

  1. 把音频接入发布流程

    文章发布时,CMS 的 webhook 触发,发送文章正文,并把返回的 MP3 存在稿件旁边。文章在哪里显示,播放器就嵌在哪里。

  2. 拆分长稿,编辑后重新生成

    超过 5,000 个字符的文章分段发送,再把各段 MP3 拼接起来。编辑更新稿件时,webhook 用同一个音色重新生成音频。

  3. 逐章为旧书配音

    有声书以批处理任务运行,每个章节片段一个请求。这种方式适合长销旧书、连载小说和草稿试听,重点书目仍由真人播音员录制。

泰国人如何获取新闻

88%

每周在线获取新闻

包括社交媒体在内的在线渠道,每周触达 88%的泰国受访者。

43%

更喜欢看新闻

43%的人更喜欢看新闻,32%的人更喜欢读新闻。只有文字页面时照顾不到的受众,音频版本可以覆盖。

49%

通过 TikTok 获取新闻

一年之内上升 10 个百分点。

55%

信任新闻

泰国受访者对新闻的总体信任度为 55%。

路透社新闻研究所《数字新闻报告 2025》泰国部分。泰国样本通过在线方式调查,偏向城市和受教育程度较高的人群。这些数字描述的是联网的新闻受众,不能推及全体人口。

来源:Reuters Institute DNR 2025(在新标签页中打开)

一个月的文章音频价格

一个月的文章音频价格
发布频率字符积分费用
每天 3 篇540,0005,400$5.40
每天 10 篇1,800,00018,000$18.00
每天一篇文章,连续配音 30 天约 $1.80

按每篇 6,000 个字符、共 30 天、统一费率计算。

发布钩子

cms
发布时      → POST /v1/tts   (文章正文,每段 5,000 字符)
存储        → article-1284.mp3
嵌入        → 署名旁的 <audio>
编辑时      → 重新生成,同一音色,同一 URL

面向开发者

TypeScript 和 Python 快速入门示例发送文章正文,并写回 CMS 存储的 MP3。选项请求展示了流水线设定一次的音色、模型、格式和流式字段。

完整 API 参考
import { writeFile } from "node:fs/promises";

const response = await fetch("https://api.paxalabs.com/v1/tts", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.PAXA_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    text: "สวัสดีครับ ยินดีต้อนรับสู่ Paxa Labs",
    voice: "khanomkrok",
    model: "paxa-tts-flash-v2",
  }),
});

if (!response.ok) throw new Error(`TTS failed: ${response.status}`);
await writeFile("speech.mp3", Buffer.from(await response.arrayBuffer()));

试听音色

50 个正式音色中的几个,均通过 API 使用公开的音色 ID 生成。全部音色可在文本转语音页面试听。

  • Lattev1 + v2在语音页面打开
  • Khanom Krokv1 + v2男声主音色
  • Foi Thongv1 + v2旁白
  • Massamanv1 + v2男主角

为长篇泰语朗读而构建

一篇文章有几千个字符,词与词之间没有空格。Paxa TTS Flash v2 能为长篇泰语散文分词,像识字的读者一样根据拼写读出声调,并在整篇长度上保持自然的断句。编辑部不用预约录音间,就能把当天的稿件变成音频。

常见问题

一个请求能放多长的文章?

每个请求最多 5,000 个字符。更长的稿件按段落边界分段发送,再用常见工具拼接各段 MP3。

文章更新后能重新生成音频吗?

可以。重新生成就是再发一个请求,同样按字符计费。同一个任务带着 Idempotency-Key 被误发两次时,会直接返回原结果,不会再扣费。

音色能处理夹带英文名字的泰语新闻稿吗?

可以。泰英混合文本在一个请求中由同一个音色朗读,泰语新闻稿本来就是这样写的。

会拿到什么音频,又如何提供给读者?

MP3。流水线可以整段获取,需要立即开始播放的场景可以流式获取。把文件存进 CMS,像网站上的其他媒体一样提供,包括放进播客订阅源。

早上批量处理 20 篇文章,在速率限制之内吗?

早间批处理是 20 个请求,每篇需要拆分的长稿再加一个请求。最低一档付费套餐公布的上限是每分钟 60 个请求。整批请求在一分钟的额度内就能完成。每个套餐的限制都列在价格页上,被限流的请求会返回 retry-after 响应头,批处理循环可以据此等待。

从免费积分开始

使用 Google、GitHub 或 Hugging Face 登录,即可用 100 一次性免费积分处理您自己的文本。