📅  最后修改于: 2023-12-03 15:18:44.427000             🧑  作者: Mango
PyAudio 是一个用于 Python 编程语言的音频处理库,它提供了对音频设备的访问功能,可以用于录制和播放音频,以及进行实时音频流处理。本指南将介绍在 Ubuntu 系统上安装 PyAudio 库的方法。
在开始安装 PyAudio 之前,请确保您已经安装了以下环境:
按照以下步骤在 Ubuntu 上安装 PyAudio:
sudo apt update
sudo apt install portaudio19-dev
pip install pyaudio
python -m pyaudio
如果没有错误消息出现,则说明 PyAudio 已成功安装。
一旦安装成功,您就可以在 Python 代码中使用 PyAudio 进行音频处理任务。下面是一个简单的示例代码,演示了如何使用 PyAudio 进行录音并保存录音文件:
import pyaudio
import wave
# 定义参数
CHUNK = 1024 # 每次读取的音频帧大小
FORMAT = pyaudio.paInt16 # 采样位数
CHANNELS = 1 # 声道数
RATE = 44100 # 采样率
RECORD_SECONDS = 5 # 录音时长
WAVE_OUTPUT_FILENAME = "output.wav" # 录音文件名
# 初始化录音器
audio = pyaudio.PyAudio()
# 打开音频流
stream = audio.open(format=FORMAT,
channels=CHANNELS,
rate=RATE,
input=True,
frames_per_buffer=CHUNK)
print("开始录音...")
# 存储录音数据的列表
frames = []
# 录音
for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
data = stream.read(CHUNK)
frames.append(data)
print("录音结束.")
# 关闭音频流
stream.stop_stream()
stream.close()
audio.terminate()
# 保存录音文件
waveFile = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
waveFile.setnchannels(CHANNELS)
waveFile.setsampwidth(audio.get_sample_size(FORMAT))
waveFile.setframerate(RATE)
waveFile.writeframes(b''.join(frames))
waveFile.close()
print("录音文件保存成功:" + WAVE_OUTPUT_FILENAME)
请注意,上述示例代码将录音保存为名为 "output.wav" 的文件。您可以更改文件名和参数,以满足您的需求。
通过按照上述步骤,在 Ubuntu 上安装和使用 PyAudio 库,您可以轻松地实现音频处理任务,例如录制和播放音频。快去尝试吧!