開源 python 應用 開發(十三)AI應用--百度智能云TTS語音合成

?最近有個項目需要做視覺自動化處理的工具,最后選用的軟件為python,剛好這個機會進行系統學習。短時間學習,需要快速開發,所以記錄要點步驟,防止忘記。

?鏈接:

開源 python 應用 開發(一)python、pip、pyAutogui、python opencv安裝-CSDN博客

開源 python 應用 開發(二)基于pyautogui、open cv 視覺識別的工具自動化-CSDN博客

開源 python 應用 開發(三)python語法介紹-CSDN博客

開源 python 應用 開發(四)python文件和系統綜合應用-CSDN博客

開源 python 應用 開發(五)python opencv之目標檢測-CSDN博客

開源 python 應用 開發(六)網絡爬蟲-CSDN博客

開源 python 應用 開發(七)數據可視化-CSDN博客

開源 python 應用 開發(八)圖片比對-CSDN博客

開源 python 應用 開發(九)目標跟蹤-CSDN博客

開源 python 應用 開發(十)音頻壓縮-CSDN博客

開源 python 應用 開發(十一)AI應用--百度智能云ASR短語音轉文本-CSDN博客

開源 python 應用 開發(十二)AI應用--百度智能云Agent聊天-CSDN博客

開源 python 應用 開發(十三)AI應用--百度智能云TTS語音合成-CSDN博客

?推薦鏈接:

開源 Arkts 鴻蒙應用 開發(一)工程文件分析-CSDN博客

開源 Arkts 鴻蒙應用 開發(二)封裝庫.har制作和應用-CSDN博客

開源 Arkts 鴻蒙應用 開發(三)Arkts的介紹-CSDN博客

開源 Arkts 鴻蒙應用 開發(四)布局和常用控件-CSDN博客

開源 Arkts 鴻蒙應用 開發(五)控件組成和復雜控件-CSDN博客

?推薦鏈接:

開源 java android app 開發(一)開發環境的搭建-CSDN博客

開源 java android app 開發(二)工程文件結構-CSDN博客

開源 java android app 開發(三)GUI界面布局和常用組件-CSDN博客

開源 java android app 開發(四)GUI界面重要組件-CSDN博客

開源 java android app 開發(五)文件和數據庫存儲-CSDN博客

開源 java android app 開發(六)多媒體使用-CSDN博客

開源 java android app 開發(七)通訊之Tcp和Http-CSDN博客

開源 java android app 開發(八)通訊之Mqtt和Ble-CSDN博客

開源 java android app 開發(九)后臺之線程和服務-CSDN博客

開源 java android app 開發(十)廣播機制-CSDN博客

開源 java android app 開發(十一)調試、發布-CSDN博客

開源 java android app 開發(十二)封庫.aar-CSDN博客

推薦鏈接:

開源C# .net mvc 開發(一)WEB搭建_c#部署web程序-CSDN博客

開源 C# .net mvc 開發(二)網站快速搭建_c#網站開發-CSDN博客

開源 C# .net mvc 開發(三)WEB內外網訪問(VS發布、IIS配置網站、花生殼外網穿刺訪問)_c# mvc 域名下不可訪問內網,內網下可以訪問域名-CSDN博客

開源 C# .net mvc 開發(四)工程結構、頁面提交以及顯示_c#工程結構-CSDN博客

??????開源 C# .net mvc 開發(五)常用代碼快速開發_c# mvc開發-CSDN博客

本章內容為使用百度智能云將文本合成為語音的方法,其中速度、語調等多種參數可以設置。

一、主要內容

使用使用百度語音合成API將文本轉換為語音的Python程序。

二、API Key 和 Secret Key獲取

進入百度智能云? ->? 選擇語音合成標準版 ->??選擇開通付費,默認贈送10小時流量,不購買資源

->??實名認證后獲得,api key 和 secret key??

在以下頁面可以查看API Key 和 Secret Key

三、源代碼分析

主要功能
文本轉語音:將中文文本轉換為wav格式的音頻文件

API認證:通過百度API獲取訪問令牌

音頻保存:將合成的音頻保存為本地文件

代碼結構分析
1. 導入模塊
python
import requests ?# 用于發送HTTP請求
import urllib.parse ?# 用于URL編碼
2. 全局變量
python
API_KEY = "" ?# 需要填寫的百度API Key
SECRET_KEY = "" ?# 需要填寫的百度Secret Key
3. 主函數 main()
設置API端點:https://tsn.baidu.com/text2audio

準備待轉換的文本并進行URL編碼

構建請求參數,包括語速、音調、音量等設置

發送POST請求獲取音頻數據

保存音頻文件為output.wav

4. 認證函數 get_access_token()
調用百度OAuth接口獲取訪問令牌

使用client_credentials授權模式

返回access_token用于后續API調用

參數說明
tex: URL編碼后的文本

tok: 訪問令牌

cuid: 用戶唯一標識

ctp: 客戶端類型(1為web)

lan: 語言(zh為中文)

spd: 語速(0-15,5為適中)

pit: 音調(0-15,5為適中)

vol: 音量(0-15,5為適中)

per: 發音人(0為默認女聲)

aue: 音頻格式(6為mp3)

以下為源碼:

import requests
import urllib.parseAPI_KEY = "***"
SECRET_KEY = "***"def main():try:url = "https://tsn.baidu.com/text2audio"# 準備文本并編碼text = "這是一段測試代碼啊,百度云也能聽清楚我講的是什么嗎?"encoded_text = urllib.parse.quote(text)# 構建請求參數params = {'tex': encoded_text,'tok': get_access_token(),'cuid': 'cmClbqGBAL3Mi8RSdREgdAl1uRJJXbZG','ctp': 1,'lan': 'zh','spd': 5,  # 調整為適中語速'pit': 5,  # 調整為適中音調'vol': 5,  # 調整為適中音量'per': 0,  # 使用默認發音人'aue': 6   # mp3格式}headers = {'Content-Type': 'application/x-www-form-urlencoded','Accept': 'audio/mp3'}# 發送請求response = requests.post(url, data=params, headers=headers)# 檢查響應if response.status_code == 200:# 保存音頻文件with open('output.wav', 'wb') as f:f.write(response.content)print("語音合成成功,已保存為 output.wav")else:print(f"請求失敗,狀態碼: {response.status_code}")print(f"錯誤信息: {response.text}")except Exception as e:print(f"程序執行出錯: {e}")def get_access_token():"""獲取百度API訪問令牌"""try:url = "https://aip.baidubce.com/oauth/2.0/token"params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}response = requests.post(url, params=params)response.raise_for_status()token = response.json().get("access_token")if not token:raise ValueError("未能獲取到access_token")return tokenexcept Exception as e:print(f"獲取access_token失敗: {e}")return Noneif __name__ == '__main__':main()

三、效果演示

將錄音文件test.wav文件放到和python文件同一個目錄,運行效果如下,生產了16K頻率的音頻文件。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/95056.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/95056.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/95056.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

大白話說 AI 編程 Trae,小白進!

大家好,我是櫻木。 一些小白用戶,打開字節出的 AI 編程工具 Trae 時,可能覺得還是有點生疏,但是作為程序員,看到這樣的界面分布,已經是在熟悉不過了,甚至心中竊喜,長得和 IDEA 等開…

主流國產數據庫:文檔完備性

官方文檔通常是用戶獲取數據庫產品相關信息最權威的渠道,文檔的完備性(準確、全面、易用)直接影響著開發者的學習成本、項目實施的效率以及后期的運維便利性。 例如,Oracle 數據庫的官方文檔被廣泛認為是行業的黃金標準&#xff…

現今流行的操作系統及其應用場景

2025 年主流操作系統及其應用場景,結合技術趨勢與行業實踐,涵蓋從個人設備到關鍵基礎設施的全場景覆蓋:一、桌面與生產力領域1. Windows 11/12(微軟)市場地位:全球桌面市場占比 71%,企業級場景市…

IP v 6

相關概念地址長度128bit,采用冒號劃分為8段,并用16進制標識,其容量大到能為地球上的每一粒沙子分配一個地址,通常情況下其網絡前綴為64位,接口標識為64位,依照寫法可分為首選格式,即完整書寫&am…

Elasticsearch冷熱架構:性能與成本完美平衡

Elasticsearch 的冷熱架構(Hot-Warm-Cold Architecture)是一種針對時序數據(如日志、指標等)的成本與性能優化方案,通過將數據在不同生命周期的存儲需求分層處理,兼顧性能、容量和成本。其核心思想是&#…

【MFC自動生成的文件詳解:YoloClassMFC.cpp 的逐行解釋、作用及是否能刪除】

大家好,歡迎來到我的MFC編程入門系列。上次我們聊了MFC項目創建后的核心文件區別(項目名.cpp、.h、Dlg.cpp 和 Dlg.h),今天針對讀者的反饋,專門來拆解其中最重要的一個文件:項目名.cpp(這里以用…

玄機靶場 | 冰蝎3.0-jsp流量分析

文章目錄一、冰蝎3.0流量特征二、索引三、題目列表步驟#1黑客IP是什么?步驟#2黑客上傳的Webshell名是什么?步驟#3黑客上傳WebShell的時間是多少?(格式如:flag{YYYY-MM-DD HH:MM:SS})步驟#4木馬的解密key是什…

基于物理信息神經網絡(Physics-Informed Neural Network, PINN)的三維熱傳導方程求解器MATLAB

代碼實現了一個基于物理信息神經網絡(Physics-Informed Neural Network, PINN)的三維熱傳導方程求解器。以下是詳細分析:🧠 一、主要功能 main.m: 構建一個全連接神經網絡用于近似三維熱傳導方程的解 ( u(x, y, z, t) …

按鈕計數器:jQuery / AngularJS / Vue / React / dagger.js 實現對比與技術解讀

代碼來源:https://codepen.io/dagger8224/pen/myeKgVQ 任務:實現“按鈕點擊 1”計數器,對比不同框架的寫法與特性,并給出選型建議。 目錄 代碼解讀(逐框架) jQuery(命令式 DOM)Angu…

useEffect中直接使用 await報錯

在 useEffect 中直接使用 await 會報錯,因為 useEffect 的回調函數不能是 async 函數。有幾種正確的方式來處理異步操作: 方法一:在 useEffect 內部創建 async 函數并立即調用 這是最常用的方式。 import React, { useEffect } from react;co…

卷積神經網絡為什么要填充(Padding)

填充(Padding)是卷積神經網絡中一個至關重要且巧妙的設計。它的核心目的可以概括為:為了解決卷積操作導致的特征圖尺寸縮小和邊緣信息丟失問題。

C++ 并發編程:全面解析主流鎖管理類

在 C 的并發世界里,管理共享資源就像是在一個繁忙的十字路口指揮交通。如果指揮不當,就會發生混亂甚至致命的“死鎖”。C 標準庫提供的各種鎖管理工具,就是我們手中的“交通信號燈”,它們各自擁有獨特的職能,幫助我們編…

Spring boot 啟用第二數據源

1. 數據源配置代碼:import com.alibaba.druid.pool.DruidDataSource; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilde…

Wi-Fi 時延與掉包的關鍵因素全解析

在無線網絡性能優化中,時延(Latency)與掉包(Packet Loss)是最核心的兩個指標。本文將從 物理層、MAC層、系統棧、業務形態與環境 等多個維度,對 Wi-Fi 時延與掉包的關鍵因素進行全面梳理,并結合…

《Python 文本分析實戰:從單詞頻率統計到高效可視化的全流程指南》

《Python 文本分析實戰:從單詞頻率統計到高效可視化的全流程指南》 一、引言:小任務背后的大世界 在我多年的開發與教學中,文本處理始終是一個繞不開的主題。無論是日志分析、自然語言處理,還是搜索引擎、推薦系統,幾乎所有數據驅動的系統都離不開對文本的理解。而“統計…

12KM無人機高清圖傳通信模組——打造未來空中通信新高度

在無人機技術飛速發展的今天,高清圖傳和穩定的通信模塊無疑是提高無人機作業效率和可靠性的關鍵因素。作為新一代無人機核心技術之一,深圳云望物聯12KM無人機高清圖傳通信模組憑借其卓越的性能,正逐步成為行業內的寵兒,成為無人機…

【LeetCode 熱題 100】62. 不同路徑——(解法二)遞推

Problem: 62. 不同路徑 文章目錄整體思路完整代碼時空復雜度時間復雜度:O(m * n)空間復雜度:O(m * n)整體思路 這段代碼同樣旨在解決 “不同路徑” 問題,但它采用的是一種 自底向上(Bottom-Up)的動態規劃 方法&#x…

C++ 高階錯誤解析:MSVC 與 Qt 全景指南

在 C 開發中,尤其是在 Windows 平臺使用 MSVC 或 Qt 框架 時,程序員經常會遇到編譯錯誤、鏈接錯誤和運行時異常。本文將系統梳理這些問題,按 語法錯誤、類型錯誤、鏈接錯誤、Qt 運行錯誤 分類,并給出 觸發示例、原因分析及修復策略…

基于Net海洋生態環境保護系統的設計與實現(代碼+數據庫+LW)

摘要 隨著全球氣候變化和人類活動的加劇,海洋生態系統面臨著前所未有的威脅。污染、過度捕撈、棲息地破壞等問題嚴重影響了海洋生物多樣性和生態平衡。為了應對海洋生態系統面臨的嚴重威脅,如污染、過度捕撈和棲息地破壞等問題,利用C#語言和…

DoIP路由激活報文

目錄 DoIP路由激活報文詳解 基本概念 報文結構 響應報文 通信流程 注意事項 **DoIP (Diagnostics over Internet Protocol) 報文詳解** **1. DoIP 報文結構** **1.1 通用報文格式** **2. 常見 DoIP 報文類型** **3. 典型 DoIP 報文示例** **3.1 車輛識別請求(廣播)** **3.2 車…