溫馨提示×

python pyaudio 能錄制指定時長的音頻嗎

小樊
129
2024-11-25 20:43:56
欄目: 編程語言

是的,Python的PyAudio庫可以錄制指定時長的音頻。您可以使用pyaudio.PyAudio()類創建一個音頻流,并使用start_stream()方法開始錄制。然后,您可以使用sleep()函數等待指定的時長,最后使用stop_stream()方法停止錄制。以下是一個示例代碼:

import pyaudio
import time

CHUNK = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 44100
RECORD_SECONDS = 5

p = pyaudio.PyAudio()

stream = p.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()
p.terminate()

wf = wave.open("output.wav", 'wb')
wf.setnchannels(CHANNELS)
wf.setsampwidth(p.get_sample_size(FORMAT))
wf.setframerate(RATE)
wf.writeframes(b''.join(frames))
wf.close()

在這個示例中,RECORD_SECONDS變量設置為5,這意味著錄音將持續5秒鐘。您可以根據需要更改此值以錄制所需的時長。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女