要捕获立体声音频数据,可以使用Python中的pyaudio库。下面是一个简单的代码示例:
import pyaudio
import wave
# 设置参数
CHUNK = 1024 # 每次读取的音频数据块大小
FORMAT = pyaudio.paInt16 # 音频数据的格式
CHANNELS = 2 # 声道数(立体声为2)
RATE = 44100 # 采样率
# 创建PyAudio对象
p = pyaudio.PyAudio()
# 打开音频流
stream = p.open(format=FORMAT,
channels=CHANNELS,
rate=RATE,
input=True,
frames_per_buffer=CHUNK)
# 创建WAV文件对象
wf = wave.open('output.wav', 'wb')
wf.setnchannels(CHANNELS)
wf.setsampwidth(p.get_sample_size(FORMAT))
wf.setframerate(RATE)
print("开始录制音频...")
# 录制音频数据并写入文件
while True:
data = stream.read(CHUNK)
wf.writeframes(data)
# 停止录制,按下Ctrl+C即可结束
try:
pass
except KeyboardInterrupt:
break
print("录制完成!")
# 关闭音频流和WAV文件
stream.stop_stream()
stream.close()
wf.close()
# 终止PyAudio对象
p.terminate()
以上代码会不断录制音频数据,并将其写入到名为output.wav
的WAV文件中。需要按下Ctrl+C才能停止录制。
请注意,此代码示例仅供参考,实际应用中可能需要根据具体需求进行修改。