#amazon-web-services #amazon-polly
#amazon-веб-сервисы #amazon-polly
Вопрос:
Мой код следующий:
import boto3
polly_client = boto3.Session().client('polly')
response = polly_client.synthesize_speech(
VoiceId='Joanna',
OutputFormat='mp3',
Text = sentence
)
audio = response['AudioStream']
Я попытался использовать следующее предложение:
sentence = '''<speak><s>Mary had a little lamb</s> <s>Whose fleece was white as snow</s>And everywhere that Mary went, the lamb was sure to go.</speak>'''
но сгенерированный звук не имеет паузы, он просто считывает текст.
Комментарии:
1. Первая ссылка, когда я ищу «AWS Polly Pause»: docs.aws.amazon.com/polly/latest/dg/supportedtags.html который показывает, что вам нужно использовать
<break>
вместо<pause>
.2. @MarkB Спасибо за отрицательный отзыв. Я пытался
<break time="3s"/>
, но это не работает
Ответ №1:
При этом генерируется аудиофайл для фразы «Hello world» с 2-секундной паузой между словами:
import boto3
polly_client = boto3.Session().client('polly')
sentence = '''<speak>Hello <break time='2000ms'/> World</speak>'''
response = polly_client.synthesize_speech(
VoiceId='Joanna',
OutputFormat='mp3',
TextType='ssml',
Text=sentence
)
file = open('speech.mp3', 'wb')
file.write(response['AudioStream'].read())
file.close()
Более подробную информацию смотрите в подразделах документации aws в разделе Использование SSML.