Skip to content

python 使用文本转语音

文字转语音 (TTS) API 指南

概述

音频 API 提供 speech 端点,基于 TTS 模型实现以下功能:

  • 📝 博客文章朗读
  • 🌍 多语言音频生成
  • 🎵 实时音频流输出

重要提示:必须向用户声明所听到的是 AI 生成的语音,而非人类声音

基础使用

基本示例

python
from pathlib import Path
from openai import OpenAI

client = OpenAI(
    base_url="https://www.anyapi.vip/v1",
    api_key=key
)

speech_file_path = Path(__file__).parent / "speech.mp3"
response = client.audio.speech.create(
  model="tts-1",
  voice="alloy",
  input="Today is a wonderful day to build something people love!"
)

response.stream_to_file(speech_file_path)

功能特性

音频质量选项

  • tts-1: 低延迟,适合实时应用
  • tts-1-hd: 更高质量,可能有更少的静态内容

可用声音

  • alloy
  • echo
  • fable
  • nova
  • shimmer
  • onyx

支持的输出格式

格式特点适用场景
MP3默认格式通用场景
Opus低延迟网络流媒体和通信
AAC高效压缩移动设备播放
FLAC无损压缩音频存档
WAV无压缩低延迟应用
PCM原始采样24kHz, 16位有符号

实时音频流

python
from openai import OpenAI

client = OpenAI(
    base_url="https://www.anyapi.vip/v1",
    api_key=key
)

response = client.audio.speech.create(
    model="tts-1",
    voice="alloy",
    input="Hello world! This is a streaming test.",
)

response.stream_to_file("output.mp3")

支持语言

支持多种语言,包括:

  • 亚洲语言:中文、日语、韩语等
  • 欧洲语言:英语、法语、德语等
  • 其他语言:阿拉伯语、印地语等

注意:当前声音主要针对英语优化

常见问题

Q: 如何控制生成音频的情感?

A: 目前没有直接控制机制。大写字母或语法可能影响输出,但效果不确定。

Q: 能创建自定义声音吗?

A: 不支持创建自定义声音。

Q: 生成的音频归属权?

A: 归创建者所有,但需告知用户这是 AI 生成的音频。

AnyAPI — 专业的 AI 接口聚合服务