python record函数
时间: 2023-11-15 07:57:14 浏览: 158
`record` 函数是 Python 中用于录制音频的函数,通常使用第三方库 `pyaudio` 来实现。下面是一个简单的 `record` 函数的实现:
```python
import pyaudio
import wave
def record(filename, duration=5, rate=44100, chunk=1024):
"""
录制音频并保存到文件中
:param filename: 保存的文件名
:param duration: 录制时长,默认为 5 秒
:param rate: 采样率,默认为 44100 Hz
:param chunk: 每次读取的数据块大小,默认为 1024
"""
p = pyaudio.PyAudio()
stream = p.open(format=pyaudio.paInt16,
channels=1,
rate=rate,
input=True,
frames_per_buffer=chunk)
frames = []
for i in range(0, int(rate / chunk * duration)):
data = stream.read(chunk)
frames.append(data)
stream.stop_stream()
stream.close()
p.terminate()
wf = wave.open(filename, 'wb')
wf.setnchannels(1)
wf.setsampwidth(p.get_sample_size(pyaudio.paInt16))
wf.setframerate(rate)
wf.writeframes(b''.join(frames))
wf.close()
```
这个函数会录制指定时长的音频,并将其保存到指定的文件中。你可以通过调整参数来控制录制的时长、采样率和数据块大小等。
阅读全文