Я работаю со звуковым устройством (0.3.12) на машине с ubuntu 14.04 для специфического тестирования обратной петли.
Я использую следующий код:
import sounddevice as sd
import soundfile as sf
def play_numpy_file(filename, device=None):
data, fs = sf.read(filename, dtype='int16')
print('read')
sd.default.samplerate = fs
sd.default.channels = 2
rec_data = sd.playrec(data, fs, blocksize=0, channels=2, dtype='int16', device=device, blocking=1, latency='low')
print("I am done")
sf.write('rec.wav', rec_data, fs)
sd.wait()
print('played and recorded')
После выполнения вышеприведенного кода я наблюдал задержку в wav-файле примерно от 0,75 до 0,25 с в начале.
В начале я получаю нули. Хотя я пытался использовать aplay и arecord, но не получая и lettency, записанный и проигранный файл оба одинаковы.
Мне не хватает какого-то кода или конфигурации?