首页 > 解决方案 > 如何在 Google Text to Speech API 中调整发音音高

问题描述

我使用了 Google Text2Speech API,效果很好,但我想调整音高。我使用了 gTTS。

tts = gTTS("ご返信ありがとうございます。", lang = 'ja')

我该怎么走?提前致谢!

标签: pythonapigoogle-cloud-platform

解决方案


查看官方文档,text2speech API 有一个AudioConfig功能,您可以在其中传递音调。音高可以在范围内改变[-20.0, 20.0]。这是一个工作示例。

from google.cloud import texttospeech

# Instantiates a client
client = texttospeech.TextToSpeechClient()

# Set the text input to be synthesized
synthesis_input = texttospeech.SynthesisInput(text="Hello, World!")

# Build the voice request, select the language code ("en-US") and the ssml
# voice gender ("neutral")
voice = texttospeech.VoiceSelectionParams(
    language_code="en-US", ssml_gender=texttospeech.SsmlVoiceGender.NEUTRAL
)

# Select the type of audio file you want returned
audio_config = texttospeech.AudioConfig(
    pitch=-1.20,
    audio_encoding=texttospeech.AudioEncoding.MP3
)

# Perform the text-to-speech request on the text input with the selected
# voice parameters and audio file type
response = client.synthesize_speech(
    input=synthesis_input, voice=voice, audio_config=audio_config
)

# The response's audio_content is binary.
with open("output.mp3", "wb") as out:
    # Write the response to the output file.
    out.write(response.audio_content)
    print('Audio content written to file "output.mp3"')

推荐阅读