人工智能-baidu-aip語音合成(文字轉語音)


from aip import AipSpeech

APP_ID = '15422825'
APP_KEY = 'DhXGtWHYMujMVZZGRI3a7rzb'
SECRET_KEY = 'PbyUvTL31fImGthOOIP5ZbbtEOGwGOoT'

# 與百度進行一次加密校驗,認證你是合法用戶合法的應用
# AipSpeech是百度語音的客戶端,認證成功之后,客戶端將被開啟,這里的client就是已經開啟的百度語音的客戶端了
client = AipSpeech(APP_ID,APP_KEY,SECRET_KEY)
str = '今天天氣怎么樣?'
result = client.synthesis(
    str,  # text:合成的文本,使用UTF-8編碼,請注意文本長度必須小於1024字節
    'zh',           # lang:語言,中文:zh,英文:en
    1,              # ctp:客戶端信息這里就寫1,寫別的不好使,至於為什么咱們以后再解釋
    {
        'vol':5,    # 合成音頻文件的准音量
        'spd':4,    # 語速取值0-9,默認為5中語速
        'pit':8,    # 語調音量,取值0-9,默認為5中語調
        'per':4     # 發音人選擇,0為女聲,1為男生,3為情感合成-度逍遙,4為情感合成-度丫丫,默認為普通女
    } # options:這是一個dict類型的參數,里面的鍵值對才是關鍵.
)
# 如果上面的三個參數APP_ID,APP_KEY,SECRET_KEY填寫正確的話
# result就是音頻文件的二進制文件流,如果返回失敗的話,result就會是個字典
print(result)

if not isinstance(result,dict):
    with open('audio.mp3','wb') as f:
        f.write(result)


# 識別正確返回語音二進制文件流,錯誤則返回dict,參照下面錯誤代碼.
"""
result = {
            'err_detail': 'Tex length exceeds limit.', 
            'err_msg': 'parameter error.', 
            'err_no': 501, 
            'err_subcode': 10, 
            'tts_logid': 3257246120
        }
"""

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM