十一、OpenAI之文本转化为语音(Text to Speech)

学习怎样将文本转化为生动的语音

1 介绍

Audio API提供一个基于TTS(text-to-speech)模型的语音端点。拥有6个内置的语音可供使用:

  • 叙述一篇博客文章
  • 使用多种语言生成对话音频
  • 使用流式将语音实时输出

2 快速开始

语音端点采取3个关键输入:模型,要转化为音频的文本,用来生成音频的声音类型。一个简单的请求案例:

from pathlib import Path
from openai import OpenAI
client = OpenAI()

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)

默认的端点将输出MP3格式的对话音频,也可以进行配置生成我们支持的音频格式。

3 音频质量

对于实时的语音应用场景,标准的tts-1模型延时最低,但质量不如tts-1-hd模型。由于音频生成的方式,Tts-1可能比Tts-1 -hd生成更多静态内容。在某些情况下,生成的音频依赖于你的听力设备和个人情况,可能没有明显的不同。

4 音频选择

尝试不同的声音(合金声、回声声、回声声、缟玛瑙声、新星声和微光声),找到一个与你想要的音调和听众相匹配的声音。当前的声音是针对英语优化的。

5 支持的输入格式

默认的输出格式是MP3,但其它的格式像:opus acc flac pcm也可以用:

  • OPUS:用于互联网流媒体和通信,低延迟。
  • AAC:用于数字音频压缩,YouTube, Android, iOS首选。
  • FLAC:用于无损音频压缩,受到音频爱好者的青睐,用于存档。
  • WAV:未压缩的WAV音频,适用于低延迟应用程序,以避免解码开销。
  • PCM:类似于WAV,但包含24kHz(16位带符号,低端)的原始样本,没有报头。

6 支持的语言

TTS模型通常遵循Whisper模型对语言的支持。Whisper不仅当前的语音英文进行了优化,还支持下列的语言,并且表现也良好:
阿非利卡语,阿拉伯语,亚美尼亚语,阿塞拜疆语,白俄罗斯语,波斯尼亚语,保加利亚语,加泰罗尼亚语,中文,克罗地亚语,捷克语,丹麦语,荷兰语,英语,爱沙尼亚语,芬兰语,法语,加利西亚语,德语,希腊语,希伯来语,印地语,匈牙利语,冰岛语,印度尼西亚语,意大利语,日语,卡纳达语,哈萨克语,韩语,拉脱维亚语,立陶宛语,马其顿语,马来语,马拉地语,毛利语,尼泊尔语,挪威语,波斯语,波兰语,葡萄牙语,罗马尼亚语,俄语,塞尔维亚语,斯洛伐克语,斯洛文尼亚语,西班牙语,斯瓦希里语,瑞典语,他加洛语,泰米尔语,泰语,土耳其语,乌克兰语,乌尔都语,越南语和威尔士语。

你可能用你选择的语言文本生成一个对话音频

7 流式实时音频

Speech API支持使用块传输编码的实时音频流。这意味着音频能够在完整文件生成和访问之前播放。

from openai import OpenAI

client = OpenAI()

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

response.stream_to_file("output.mp3")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值