+1
Thay đổi input/output khi record bằng sounddevice trong python?
Mình đang dùng thư viện sounddevice trong python để record, nhưng độ trễ lúc bắt đầu record là khoảng 0.01s, khi ghép audio lại vẫn bị mất tiếng. Show các device như trên ảnh ấy thì có 3 device cuối có latency thấp, mà mình k biết dùng như nào. Lệnh sd.default.device
thì đổi được device nhưng khi chạy lại bị lỗi. Mn biết cách nào sd được các device này.
import numpy as np
import sounddevice as sd
from scipy.io.wavfile import write
import soundfile as sf
import IPython.display as ipd
from queue import Queue
from IPython.display import Audio
seconds = 5
fs = 44100
recordings = Queue()
sd.default.latency = 'low'
# sd.default.device=5,4
print(sd.query_devices())
def rec_5s():
print('Starting...')
for _ in range (3):
myrecording = sd.rec(int(seconds * fs),
samplerate=fs, channels=1, dtype = np.int16)
sd.wait()
recordings.put(myrecording)
rec_5s()
rec1 = recordings.get()
rec2 = recordings.get()
rec3 = recordings.get()
rec = np.concatenate((rec1,rec2,rec3))
write('rec_5s_2.wav', fs, rec)
Thêm một bình luận