阿里TTS Python示例

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import http.client
import json

ALI_APP_KEY = 'you key'
ALI_TTS_TOKEN = 'you token'
TTS_HOST = 'nls-gateway-cn-shanghai.aliyuncs.com'
TTS_URL = 'https://' + TTS_HOST + '/stream/v1/tts'


def processPOSTRequest(appKey, token, text, audioSaveFile, format, sampleRate, voice, speech_rate, pitch_rate):
    # font = ["zhimiao_emo", "zhimi_emo", "zhiyan_emo", "zhitian_emo"]
    httpHeaders = {
        'Content-Type': 'application/json'
    }

    body = {
        'appkey': appKey, 'token': token, 'text': text, 'format': format, 'sample_rate': sampleRate,
        "voice": voice, "speech_rate": speech_rate, "pitch_rate": pitch_rate
    }
    body = json.dumps(body)
    conn = http.client.HTTPSConnection(TTS_HOST)
    conn.request(method='POST', url=TTS_URL, body=body, headers=httpHeaders)
    response = conn.getresponse()
    contentType = response.getheader('Content-Type')
    body = response.read()
    if 'audio/mpeg' == contentType:
        with open(audioSaveFile, mode='wb') as f:
            f.write(body)
        print('The POST request succeed!')
    else:
        print('The POST request failed: ' + str(body))
    conn.close()


def ALI_TTS(text, format='wav', sampleRate=16000, voice="zhimiao_emo", speech_rate=-300, pitch_rate=0):
    audioSaveFile = 'syAudio.wav'
    processPOSTRequest(ALI_APP_KEY, ALI_TTS_TOKEN, text, audioSaveFile, format, sampleRate, voice, speech_rate,
                       pitch_rate)


text = """余秀华是中国当代著名女诗人之一,她的诗歌作品充满了对生命、爱情、自然、人性等主题的深刻思考和感悟。以下是她的一些代表作品:

《春天的芭蕉》:

春天的芭蕉,是一首诗,
它在水边,静静地生长。
它的身影,像一只船,
载着春天的希望,向前航行。

《梦中的女人》:

梦中的女人,是一朵花,
她在梦中,绽放着美丽。
她的身影,像一只鸟,
飞向远方,寻找自由。

《夜的思念》:

夜的思念,是一种情感,
它在深夜,悄悄地涌现。
它的呼吸,像一阵风,
吹散了寂寞,带来了温暖。

《爱的呼唤》:

爱的呼唤,是一种力量,
它在心中,悄悄地发酵。
它的声音,像一首歌,
唱响了爱情,传递了希望。

余秀华的诗歌充满了对生命、爱情、自然、人性等主题的深刻思考和感悟,表现出了她对人生的热爱和对生命的珍视。
"""
ALI_TTS(text)

你可能感兴趣的:(python,servlet)