MATLAB Answers

delay with stream live real-time audio through MATLAB

7 views (last 30 days)
I'm working on stream live real-time audio using 'audioDeviceReader() and audioDeviceWriter()'.
I want to delay the output signal from the speaker for 1s or less. I tried using some methods including pause() function.
However, the problem is that the output audio signal became not clear and discrete...
Ex: if I say 'hello' in the mic, I hear my voice from the speaker after 1s


Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 10 Feb 2019
Configure the audioDeviceWriter with a buffer large enough to hold at least 2 seconds. Queue zeros equal to the length of your pause. Now cycle stepping reading from the audioDeviceReader and immediately sending to the audioDeviceWriter. All output will get delayed by the length of the data queued ahead of it.


Sign in to comment.

More Answers (0)


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!