Я пытаюсь воспроизводить звук непрерывно, если прошло определенное время. Ниже мой код. Тем не менее, звук продолжает воспроизводить вместо одного непрерывного звука, поскольку он находится в цикле while. Помещение вне цикла while не будет работать, поскольку время увеличивается в цикле while. Как мне это сделать? Пожалуйста помоги! Я застрял в этом в течение 2 дней ..... Это проблема с моим заказом моего кодирования, так что это не имеет никакого отношения к правильному воспроизведению звука или нет.Невозможно остановить звук при повторном воспроизведении во время цикла
Спасибо!
t = 0;
pahandle = PsychPortAudio('Open', [], 1, 1, 48000, 2);
myBeep = MakeBeep(500, 0.5, 48000);
PsychPortAudio('RunMode', pahandle, 1);
PsychPortAudio('FillBuffer', pahandle, [myBeep; myBeep]);
while t < 20
t = t + 1;
if ~KbCheck && t >= 5
PsychPortAudio('Start', pahandle, 0, 0, 1);
elseif KbCheck
PsychPortAudio('Stop', pahandle, 1, 1);
break
elseif t > 20
PsychPortAudio('Stop', pahandle, 1, 1);
break
end
end
PsychPortAudio('Close', pahandle);