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 } """