PyAudio 是一個用于處理音頻的 Python 庫,它提供了錄制和播放音頻的功能。通過 PyAudio,可以輕松地從麥克風或其他音頻輸入設備錄制音頻,并將其保存為文件或進行進一步處理。
?
安裝 PyAudio
在使用 PyAudio 之前,需要先安裝它。可以通過以下命令安裝 PyAudio:
pip install pyaudio
錄制音頻的基本步驟
使用 PyAudio 錄制音頻通常涉及以下步驟:
- 導入 PyAudio 庫并初始化。
- 設置音頻流的參數,如采樣率、聲道數和采樣格式。
- 打開音頻流并開始錄制。
- 從音頻流中讀取數據并保存。
- 停止錄制并關閉音頻流。
錄入音頻示例代碼:
import time
import sys
import sounddevice as sd
from scipy.io.wavfile import write
import numpy as npdef record_audio(filename="output.wav", sample_rate=44100):print("按下 Enter 開始錄音...")input() # 等待用戶按下 Enter 鍵開始錄音print("錄音中... 按下 Enter 鍵結束錄音")# 開始錄音recording = []try:def callback(indata, frames, time, status):recording.append(indata.copy())with sd.InputStream(samplerate=sample_rate, channels=1, callback=callback):input() # 等待用戶再次按下 Enter 鍵結束錄音except Exception as e:print(f"錄音出現錯誤: {e}")return# 將錄音數據合并并保存為 WAV 文件audio_data = np.concatenate(recording, axis=0)write(filename, sample_rate, (audio_data * 32767).astype(np.int16))print(f"錄音已保存為 {filename}")# 使用函數錄音,作為輸入
record_audio("person_recording_1.wav",16000)