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 np
def 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)