python實現播放音頻和錄音功能示例代碼

前言

這篇文章主要給你們介紹了關於python播放音頻和錄音的相關資料,文中經過示例代碼介紹的很是詳細,對你們學習或者使用python具備必定的參考學習價值,須要的朋友們下面隨着小編來一塊兒學習學習吧python

本人對於Python學習建立了一個小小的學習圈子,爲各位提供了一個平臺,你們一塊兒來討論學習Python。歡迎各位到來Python學習羣:960410445一塊兒討論視頻分享學習。Python是將來的發展方向,正在挑戰咱們的分析能力及對世界的認知方式,所以,咱們與時俱進,迎接變化,並不斷的成長,掌握Python核心技術,纔是掌握真正的價值所在。
api

幾種讀取音頻的方式

python 有不少讀取音頻文件的方法,內置的庫 wave ,科學計算庫 scipy, 和方便易用的語音處理庫 librosa。函數

下面將介紹分別使用這幾種庫讀取音頻文件:學習

安裝:3d

wave 是內置庫直接導入便可。cdn

scipy: pip install scipy視頻

librosa: pip install librosa對象

使用:blog

wave.open:ip

參數 path 爲文件名,mode 爲打開方式

以'rb'方式打開文件返回一個 Wave_read 對象,而以'wb'方式打開文件返回一個 Wave_write 對象。

scipy.io.wavfile:

參數 path 爲文件名

返回 rate : 採樣率(每秒採樣點的個數),data : 音頻數據

librosa.load:

參數 path 爲文件名

返回 y 爲音頻數據,sr 爲採樣率



下面演示一個使用 wavfile 讀取音頻文件而且畫出波形的例子:

首先要計算音頻到底持續了多長時間,wave 的 shape 就是總的採樣點個數,除以採樣頻率能夠獲得持續的總時間(秒),乘1000獲得總持續時間(毫秒)。接着經過 np.linsapce 產生時間的序列,最後使用 matplotlib 畫出圖像。





最後再借用 pyaudio 的 api 咱們能夠實現連續錄音功能:

python 實現錄音功能

其中,函數 multi_record每結束一次錄音會詢問 「是否進行下一次錄音?」,按回車就能夠進行下一次錄音了。



總結

以上就是這篇文章的所有內容了,但願本文的內容對你們的學習或者工做具備必定的參考學習價值,若是有疑問你們能夠留言交流,謝謝你們對小編的支持。

相關文章
相關標籤/搜索